summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/ConfirmLockPassword.java
diff options
context:
space:
mode:
authorJim Miller <jaggies@google.com>2010-12-07 20:41:41 -0800
committerJim Miller <jaggies@google.com>2010-12-08 16:45:52 -0800
commit17e9e1933055b207473b488595b2887bfcaea32e (patch)
tree7b3f0f0ac2d5fcf62ea7dc4300f7927488250cab /src/com/android/settings/ConfirmLockPassword.java
parent1c7e49ba670ad70822d34234e3677fef53e94569 (diff)
downloadpackages_apps_settings-17e9e1933055b207473b488595b2887bfcaea32e.zip
packages_apps_settings-17e9e1933055b207473b488595b2887bfcaea32e.tar.gz
packages_apps_settings-17e9e1933055b207473b488595b2887bfcaea32e.tar.bz2
Fix 3148496: Initial pass at fragmentizing lockscreen settings.
This converts most of the existing activities to fragments and wraps them in PreferenceActivities so they can be launched as before (e.g. by a DevicePolicyManager) Upload after sync/rebase. Change-Id: I4f351b75d9fca0498bcb04b4e11ff3b70765a4ba
Diffstat (limited to 'src/com/android/settings/ConfirmLockPassword.java')
-rw-r--r--src/com/android/settings/ConfirmLockPassword.java189
1 files changed, 108 insertions, 81 deletions
diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java
index 0e893fa..380e848 100644
--- a/src/com/android/settings/ConfirmLockPassword.java
+++ b/src/com/android/settings/ConfirmLockPassword.java
@@ -20,113 +20,140 @@ import com.android.internal.widget.LockPatternUtils;
import com.android.internal.widget.PasswordEntryKeyboardHelper;
import com.android.internal.widget.PasswordEntryKeyboardView;
-import android.app.Activity;
+import android.app.Fragment;
import android.app.admin.DevicePolicyManager;
+import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
-import android.text.Editable;
+import android.preference.PreferenceActivity;
import android.view.KeyEvent;
+import android.view.LayoutInflater;
import android.view.View;
-import android.view.WindowManager;
+import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.view.inputmethod.EditorInfo;
-import android.widget.Button;
import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;
-public class ConfirmLockPassword extends Activity implements OnClickListener,
- OnEditorActionListener {
- private static final long ERROR_MESSAGE_TIMEOUT = 3000;
- private TextView mPasswordEntry;
- private LockPatternUtils mLockPatternUtils;
- private TextView mHeaderText;
- private Handler mHandler = new Handler();
- private PasswordEntryKeyboardHelper mKeyboardHelper;
- private PasswordEntryKeyboardView mKeyboardView;
+public class ConfirmLockPassword extends PreferenceActivity {
@Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- mLockPatternUtils = new LockPatternUtils(this);
- initViews();
+ public Intent getIntent() {
+ Intent modIntent = new Intent(super.getIntent());
+ modIntent.putExtra(EXTRA_SHOW_FRAGMENT, ConfirmLockPasswordFragment.class.getName());
+ modIntent.putExtra(EXTRA_NO_HEADERS, true);
+ return modIntent;
}
- private void initViews() {
- final int storedQuality = mLockPatternUtils.getKeyguardStoredPasswordQuality();
- setContentView(R.layout.confirm_lock_password);
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
// Disable IME on our window since we provide our own keyboard
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
- WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
-
- findViewById(R.id.cancel_button).setOnClickListener(this);
- findViewById(R.id.next_button).setOnClickListener(this);
- mPasswordEntry = (TextView) findViewById(R.id.password_entry);
- mPasswordEntry.setOnEditorActionListener(this);
- mKeyboardView = (PasswordEntryKeyboardView) findViewById(R.id.keyboard);
- mHeaderText = (TextView) findViewById(R.id.headerText);
- final boolean isAlpha = DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC == storedQuality
- || DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC == storedQuality
- || DevicePolicyManager.PASSWORD_QUALITY_COMPLEX == storedQuality;
- mHeaderText.setText(isAlpha ? R.string.lockpassword_confirm_your_password_header
- : R.string.lockpassword_confirm_your_pin_header);
- mKeyboardHelper = new PasswordEntryKeyboardHelper(this, mKeyboardView, mPasswordEntry);
- mKeyboardHelper.setKeyboardMode(isAlpha ? PasswordEntryKeyboardHelper.KEYBOARD_MODE_ALPHA
- : PasswordEntryKeyboardHelper.KEYBOARD_MODE_NUMERIC);
- mKeyboardView.requestFocus();
+ //getWindow().setFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
+ //WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
+ super.onCreate(savedInstanceState);
}
- @Override
- protected void onPause() {
- super.onPause();
- mKeyboardView.requestFocus();
- }
+ public static class ConfirmLockPasswordFragment extends Fragment implements OnClickListener,
+ OnEditorActionListener {
+ private static final long ERROR_MESSAGE_TIMEOUT = 3000;
+ private TextView mPasswordEntry;
+ private LockPatternUtils mLockPatternUtils;
+ private TextView mHeaderText;
+ private Handler mHandler = new Handler();
+ private PasswordEntryKeyboardHelper mKeyboardHelper;
+ private PasswordEntryKeyboardView mKeyboardView;
- @Override
- protected void onResume() {
- // TODO Auto-generated method stub
- super.onResume();
- mKeyboardView.requestFocus();
- }
- private void handleNext() {
- final String pin = mPasswordEntry.getText().toString();
- if (mLockPatternUtils.checkPassword(pin)) {
- setResult(RESULT_OK);
- finish();
- } else {
- showError(R.string.lockpattern_need_to_unlock_wrong);
+ // required constructor for fragments
+ public ConfirmLockPasswordFragment() {
+
}
- }
- public void onClick(View v) {
- switch (v.getId()) {
- case R.id.next_button:
- handleNext();
- break;
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ mLockPatternUtils = new LockPatternUtils(getActivity());
+ }
- case R.id.cancel_button:
- setResult(RESULT_CANCELED);
- finish();
- break;
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
+ final int storedQuality = mLockPatternUtils.getKeyguardStoredPasswordQuality();
+ View view = inflater.inflate(R.layout.confirm_lock_password, null);
+ // Disable IME on our window since we provide our own keyboard
+
+ view.findViewById(R.id.cancel_button).setOnClickListener(this);
+ view.findViewById(R.id.next_button).setOnClickListener(this);
+ mPasswordEntry = (TextView) view.findViewById(R.id.password_entry);
+ mPasswordEntry.setOnEditorActionListener(this);
+ mKeyboardView = (PasswordEntryKeyboardView) view.findViewById(R.id.keyboard);
+ mHeaderText = (TextView) view.findViewById(R.id.headerText);
+ final boolean isAlpha = DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC == storedQuality
+ || DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC == storedQuality
+ || DevicePolicyManager.PASSWORD_QUALITY_COMPLEX == storedQuality;
+ mHeaderText.setText(isAlpha ? R.string.lockpassword_confirm_your_password_header
+ : R.string.lockpassword_confirm_your_pin_header);
+ mKeyboardHelper = new PasswordEntryKeyboardHelper(getActivity(),
+ mKeyboardView, mPasswordEntry);
+ mKeyboardHelper.setKeyboardMode(isAlpha ? PasswordEntryKeyboardHelper.KEYBOARD_MODE_ALPHA
+ : PasswordEntryKeyboardHelper.KEYBOARD_MODE_NUMERIC);
+ mKeyboardView.requestFocus();
+ return view;
}
- }
- private void showError(int msg) {
- mHeaderText.setText(msg);
- mPasswordEntry.setText(null);
- mHandler.postDelayed(new Runnable() {
- public void run() {
- mHeaderText.setText(R.string.lockpassword_confirm_your_password_header);
+ @Override
+ public void onPause() {
+ super.onPause();
+ mKeyboardView.requestFocus();
+ }
+
+ @Override
+ public void onResume() {
+ // TODO Auto-generated method stub
+ super.onResume();
+ mKeyboardView.requestFocus();
+ }
+
+ private void handleNext() {
+ final String pin = mPasswordEntry.getText().toString();
+ if (mLockPatternUtils.checkPassword(pin)) {
+ getActivity().setResult(RESULT_OK);
+ getActivity().finish();
+ } else {
+ showError(R.string.lockpattern_need_to_unlock_wrong);
}
- }, ERROR_MESSAGE_TIMEOUT);
- }
+ }
+
+ public void onClick(View v) {
+ switch (v.getId()) {
+ case R.id.next_button:
+ handleNext();
+ break;
- public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
- // Check if this was the result of hitting the enter key
- if (actionId == EditorInfo.IME_NULL) {
- handleNext();
- return true;
+ case R.id.cancel_button:
+ getActivity().setResult(RESULT_CANCELED);
+ getActivity().finish();
+ break;
+ }
+ }
+
+ private void showError(int msg) {
+ mHeaderText.setText(msg);
+ mPasswordEntry.setText(null);
+ mHandler.postDelayed(new Runnable() {
+ public void run() {
+ mHeaderText.setText(R.string.lockpassword_confirm_your_password_header);
+ }
+ }, ERROR_MESSAGE_TIMEOUT);
+ }
+
+ public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+ // Check if this was the result of hitting the enter key
+ if (actionId == EditorInfo.IME_NULL) {
+ handleNext();
+ return true;
+ }
+ return false;
}
- return false;
}
}