From fdfccf71d031b617319547b48c8d071b0664d8b4 Mon Sep 17 00:00:00 2001 From: str4d Date: Wed, 12 Mar 2014 03:33:00 +0000 Subject: [PATCH] Disable edit fields when saving --- src/i2p/bote/config/EditIdentityFragment.java | 13 ++++++++++--- src/i2p/bote/config/SetPasswordFragment.java | 13 ++++++++++--- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/i2p/bote/config/EditIdentityFragment.java b/src/i2p/bote/config/EditIdentityFragment.java index 5aef0f4..85225ed 100644 --- a/src/i2p/bote/config/EditIdentityFragment.java +++ b/src/i2p/bote/config/EditIdentityFragment.java @@ -147,7 +147,7 @@ public class EditIdentityFragment extends Fragment { IdentityWaiterFrag f = (IdentityWaiterFrag) mFM.findFragmentByTag(IDENTITY_WAITER_TAG); if (f != null) - mSave.setVisible(false); + setInterfaceEnabled(false); } @Override @@ -165,7 +165,7 @@ public class EditIdentityFragment extends Fragment { InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(mNameField.getWindowToken(), 0); - mSave.setVisible(false); + setInterfaceEnabled(false); mError.setText(""); IdentityWaiterFrag f = IdentityWaiterFrag.newInstance( @@ -194,12 +194,19 @@ public class EditIdentityFragment extends Fragment { if (resultCode == Activity.RESULT_OK) { mCallbacks.onTaskFinished(); } else if (resultCode == Activity.RESULT_CANCELED) { - mSave.setVisible(true); + setInterfaceEnabled(true); mError.setText(data.getStringExtra("error")); } } } + private void setInterfaceEnabled(boolean enabled) { + mSave.setVisible(enabled); + mNameField.setEnabled(enabled); + mDescField.setEnabled(enabled); + mDefaultField.setEnabled(enabled); + } + private class CryptoAdapter extends ArrayAdapter { public CryptoAdapter(Context context) { super(context, android.R.layout.simple_spinner_item); diff --git a/src/i2p/bote/config/SetPasswordFragment.java b/src/i2p/bote/config/SetPasswordFragment.java index 25eaec7..b2e0035 100644 --- a/src/i2p/bote/config/SetPasswordFragment.java +++ b/src/i2p/bote/config/SetPasswordFragment.java @@ -93,7 +93,7 @@ public class SetPasswordFragment extends Fragment { // If task is running, disable the save button. PasswordWaiterFrag f = (PasswordWaiterFrag) mFM.findFragmentByTag(PASSWORD_WAITER_TAG); if (f != null) - mSave.setVisible(false); + setInterfaceEnabled(false); } @Override @@ -107,7 +107,7 @@ public class SetPasswordFragment extends Fragment { InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(mNewField.getWindowToken(), 0); - mSave.setVisible(false); + setInterfaceEnabled(false); mError.setText(""); PasswordWaiterFrag f = PasswordWaiterFrag.newInstance(oldPassword, newPassword, confirmNewPassword); @@ -129,12 +129,19 @@ public class SetPasswordFragment extends Fragment { if (resultCode == Activity.RESULT_OK) { mCallbacks.onTaskFinished(); } else if (resultCode == Activity.RESULT_CANCELED) { - mSave.setVisible(true); + setInterfaceEnabled(true); mError.setText(data.getStringExtra("error")); } } } + private void setInterfaceEnabled(boolean enabled) { + mSave.setVisible(enabled); + mOldField.setEnabled(enabled); + mNewField.setEnabled(enabled); + mConfirmField.setEnabled(enabled); + } + public static class PasswordWaiterFrag extends TaskFragment { String currentStatus; TextView mStatus;