diff options
| author | Dominik Schürmann <dominik@dominikschuermann.de> | 2014-08-31 20:26:06 +0200 | 
|---|---|---|
| committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2014-08-31 20:26:06 +0200 | 
| commit | 5e7eed239ffc26f2d78b29c0f6dd3772f49dc4e9 (patch) | |
| tree | 5286909fda74ccfc56d7dae38508058578ee85d6 /OpenKeychain/src/main/java | |
| parent | f6d1b450075fdc030f0a4dc22d416d8bfdcf65d5 (diff) | |
| download | open-keychain-5e7eed239ffc26f2d78b29c0f6dd3772f49dc4e9.tar.gz open-keychain-5e7eed239ffc26f2d78b29c0f6dd3772f49dc4e9.tar.bz2 open-keychain-5e7eed239ffc26f2d78b29c0f6dd3772f49dc4e9.zip  | |
Better leyout for account settings
Diffstat (limited to 'OpenKeychain/src/main/java')
2 files changed, 20 insertions, 31 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsFragment.java index 2cab23e51..dd803834a 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsFragment.java @@ -29,6 +29,7 @@ import android.widget.AdapterView.OnItemSelectedListener;  import android.widget.Button;  import android.widget.Spinner;  import android.widget.TextView; +import android.widget.Toast;  import org.sufficientlysecure.keychain.Constants;  import org.sufficientlysecure.keychain.R; @@ -41,11 +42,12 @@ import org.sufficientlysecure.keychain.service.OperationResults;  import org.sufficientlysecure.keychain.ui.CreateKeyActivity;  import org.sufficientlysecure.keychain.ui.SelectSecretKeyLayoutFragment;  import org.sufficientlysecure.keychain.ui.adapter.KeyValueSpinnerAdapter; +import org.sufficientlysecure.keychain.ui.widget.KeySpinner; +import org.sufficientlysecure.keychain.ui.widget.SignKeySpinner;  import org.sufficientlysecure.keychain.util.AlgorithmNames;  import org.sufficientlysecure.keychain.util.Log; -public class AccountSettingsFragment extends Fragment implements -        SelectSecretKeyLayoutFragment.SelectSecretKeyCallback { +public class AccountSettingsFragment extends Fragment {      private static final int REQUEST_CODE_CREATE_KEY = 0x00008884; @@ -58,8 +60,8 @@ public class AccountSettingsFragment extends Fragment implements      private Spinner mHashAlgorithm;      private Spinner mCompression; -    private SelectSecretKeyLayoutFragment mSelectKeyFragment; -    private Button mCreateKeyButton; +    private SignKeySpinner mSelectKeySpinner; +    private View mCreateKeyButton;      KeyValueSpinnerAdapter mEncryptionAdapter;      KeyValueSpinnerAdapter mHashAdapter; @@ -73,7 +75,7 @@ public class AccountSettingsFragment extends Fragment implements          this.mAccSettings = accountSettings;          mAccNameView.setText(accountSettings.getAccountName()); -        mSelectKeyFragment.selectKey(accountSettings.getKeyId()); +        mSelectKeySpinner.setSelectedKeyId(accountSettings.getKeyId());          mEncryptionAlgorithm.setSelection(mEncryptionAdapter.getPosition(accountSettings                  .getEncryptionAlgorithm()));          mHashAlgorithm.setSelection(mHashAdapter.getPosition(accountSettings.getHashAlgorithm())); @@ -90,26 +92,21 @@ public class AccountSettingsFragment extends Fragment implements          return view;      } -    /** -     * Set error String on key selection -     * -     * @param error -     */ -    public void setErrorOnSelectKeyFragment(String error) { -        mSelectKeyFragment.setError(error); -    } -      private void initView(View view) { -        mSelectKeyFragment = (SelectSecretKeyLayoutFragment) getFragmentManager().findFragmentById( -                R.id.api_account_settings_select_key_fragment); -        mSelectKeyFragment.setCallback(this); - +        mSelectKeySpinner = (SignKeySpinner) view.findViewById(R.id.api_account_settings_key_spinner);          mAccNameView = (TextView) view.findViewById(R.id.api_account_settings_acc_name);          mEncryptionAlgorithm = (Spinner) view                  .findViewById(R.id.api_account_settings_encryption_algorithm);          mHashAlgorithm = (Spinner) view.findViewById(R.id.api_account_settings_hash_algorithm);          mCompression = (Spinner) view.findViewById(R.id.api_account_settings_compression); -        mCreateKeyButton = (Button) view.findViewById(R.id.api_account_settings_create_key); +        mCreateKeyButton = view.findViewById(R.id.api_account_settings_create_key); + +        mSelectKeySpinner.setOnKeyChangedListener(new KeySpinner.OnKeyChangedListener() { +            @Override +            public void onKeyChanged(long masterKeyId) { +                mAccSettings.setKeyId(masterKeyId); +            } +        });          mCreateKeyButton.setOnClickListener(new View.OnClickListener() {              @Override @@ -181,7 +178,7 @@ public class AccountSettingsFragment extends Fragment implements                  if (resultCode == Activity.RESULT_OK) {                      if (data != null && data.hasExtra(OperationResultParcel.EXTRA_RESULT)) {                          OperationResults.SaveKeyringResult result = data.getParcelableExtra(OperationResultParcel.EXTRA_RESULT); -                        mSelectKeyFragment.selectKey(result.mRingMasterKeyId); +                        mSelectKeySpinner.setSelectedKeyId(result.mRingMasterKeyId);                      } else {                          Log.e(Constants.TAG, "missing result!");                      } @@ -193,13 +190,4 @@ public class AccountSettingsFragment extends Fragment implements          // execute activity's onActivityResult to show log notify          super.onActivityResult(requestCode, resultCode, data);      } - -    /** -     * callback from select secret key fragment -     */ -    @Override -    public void onKeySelected(long secretKeyId) { -        mAccSettings.setKeyId(secretKeyId); -    } -  } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RemoteServiceActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RemoteServiceActivity.java index 4b27e115b..7e8de7f01 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RemoteServiceActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RemoteServiceActivity.java @@ -34,6 +34,7 @@ import android.text.style.BulletSpan;  import android.text.style.StyleSpan;  import android.view.View;  import android.widget.TextView; +import android.widget.Toast;  import org.openintents.openpgp.util.OpenPgpApi;  import org.sufficientlysecure.htmltextview.HtmlTextView; @@ -184,8 +185,8 @@ public class RemoteServiceActivity extends ActionBarActivity {                              // user needs to select a key!                              if (mAccSettingsFragment.getAccSettings().getKeyId() == Constants.key.none) { -                                mAccSettingsFragment.setErrorOnSelectKeyFragment( -                                        getString(R.string.api_register_error_select_key)); +                                // TODO +                                Toast.makeText(RemoteServiceActivity.this, getString(R.string.api_register_error_select_key), Toast.LENGTH_LONG).show();                              } else {                                  if (mUpdateExistingAccount) {                                      Uri baseUri = KeychainContract.ApiAccounts.buildBaseUri(packageName);  | 
