diff options
author | Christopher Tate <ctate@google.com> | 2015-01-28 01:49:56 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2015-01-28 01:49:56 +0000 |
commit | 5e0cd7768e11a10cada341b60f96998295de2756 (patch) | |
tree | af31e7765b9c1bd1bd877f3ce46ae843b631071d /packages/BackupRestoreConfirmation | |
parent | 715437763c56a8a23d9ce711b011bdddc90e7b61 (diff) | |
parent | 134aedd2c9bce194a5c826fe7a9a7389edd8bcad (diff) | |
download | frameworks_base-5e0cd7768e11a10cada341b60f96998295de2756.zip frameworks_base-5e0cd7768e11a10cada341b60f96998295de2756.tar.gz frameworks_base-5e0cd7768e11a10cada341b60f96998295de2756.tar.bz2 |
am 46e657bd: am 26faa0be: Merge "Enforce backup encryption in the UI, not just in effect" into lmp-mr1-dev
automerge: 134aedd
* commit '134aedd2c9bce194a5c826fe7a9a7389edd8bcad':
Enforce backup encryption in the UI, not just in effect
Diffstat (limited to 'packages/BackupRestoreConfirmation')
-rw-r--r-- | packages/BackupRestoreConfirmation/src/com/android/backupconfirm/BackupRestoreConfirmation.java | 51 |
1 files changed, 36 insertions, 15 deletions
diff --git a/packages/BackupRestoreConfirmation/src/com/android/backupconfirm/BackupRestoreConfirmation.java b/packages/BackupRestoreConfirmation/src/com/android/backupconfirm/BackupRestoreConfirmation.java index c2bb90c..0b7b99f 100644 --- a/packages/BackupRestoreConfirmation/src/com/android/backupconfirm/BackupRestoreConfirmation.java +++ b/packages/BackupRestoreConfirmation/src/com/android/backupconfirm/BackupRestoreConfirmation.java @@ -29,7 +29,8 @@ import android.os.RemoteException; import android.os.ServiceManager; import android.os.storage.IMountService; import android.os.storage.StorageManager; -import android.util.Log; +import android.text.Editable; +import android.text.TextWatcher; import android.util.Slog; import android.view.View; import android.widget.Button; @@ -180,20 +181,6 @@ public class BackupRestoreConfirmation extends Activity { mEncPassword = (TextView) findViewById(R.id.enc_password); TextView curPwDesc = (TextView) findViewById(R.id.password_desc); - // We vary the password prompt depending on whether one is predefined, and whether - // the device is encrypted. - mIsEncrypted = deviceIsEncrypted(); - if (!haveBackupPassword()) { - curPwDesc.setVisibility(View.GONE); - mCurPassword.setVisibility(View.GONE); - if (layoutId == R.layout.confirm_backup) { - TextView encPwDesc = (TextView) findViewById(R.id.enc_password_desc); - encPwDesc.setText(mIsEncrypted - ? R.string.backup_enc_password_required - : R.string.backup_enc_password_optional); - } - } - mAllowButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -209,6 +196,7 @@ public class BackupRestoreConfirmation extends Activity { sendAcknowledgement(mToken, false, mObserver); mAllowButton.setEnabled(false); mDenyButton.setEnabled(false); + finish(); } }); @@ -218,6 +206,39 @@ public class BackupRestoreConfirmation extends Activity { mAllowButton.setEnabled(!mDidAcknowledge); mDenyButton.setEnabled(!mDidAcknowledge); } + + // We vary the password prompt depending on whether one is predefined, and whether + // the device is encrypted. + mIsEncrypted = deviceIsEncrypted(); + if (!haveBackupPassword()) { + curPwDesc.setVisibility(View.GONE); + mCurPassword.setVisibility(View.GONE); + if (layoutId == R.layout.confirm_backup) { + TextView encPwDesc = (TextView) findViewById(R.id.enc_password_desc); + if (mIsEncrypted) { + encPwDesc.setText(R.string.backup_enc_password_required); + monitorEncryptionPassword(); + } else { + encPwDesc.setText(R.string.backup_enc_password_optional); + } + } + } + } + + private void monitorEncryptionPassword() { + mAllowButton.setEnabled(false); + mEncPassword.addTextChangedListener(new TextWatcher() { + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { } + + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { } + + @Override + public void afterTextChanged(Editable s) { + mAllowButton.setEnabled(mEncPassword.getText().length() > 0); + } + }); } // Preserve the restore observer callback binder across activity relaunch |