summaryrefslogtreecommitdiffstats
path: root/packages/BackupRestoreConfirmation
diff options
context:
space:
mode:
authorChristopher Tate <ctate@google.com>2015-01-28 01:49:56 +0000
committerandroid-build-merger <android-build-merger@google.com>2015-01-28 01:49:56 +0000
commit5e0cd7768e11a10cada341b60f96998295de2756 (patch)
treeaf31e7765b9c1bd1bd877f3ce46ae843b631071d /packages/BackupRestoreConfirmation
parent715437763c56a8a23d9ce711b011bdddc90e7b61 (diff)
parent134aedd2c9bce194a5c826fe7a9a7389edd8bcad (diff)
downloadframeworks_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.java51
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