Fix 4283049: Restore continue/cancel buttons in LockScreen Settings
This fixes a bug where the continue/cancel buttons were missing
from LockScreen settings in landscape mode.
The change also includes a minor change to enable using the IME enter
key to proceed to the next step.
Change-Id: I2dca0b40e38a128cc0aa637f573da01e779edb73
diff --git a/res/layout-land/choose_lock_password.xml b/res/layout-land/choose_lock_password.xml
index 10a01c7..005dd63 100644
--- a/res/layout-land/choose_lock_password.xml
+++ b/res/layout-land/choose_lock_password.xml
@@ -58,15 +58,10 @@
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@drawable/password_field_default"
android:textColor="#ffffffff"
+ android:imeOptions="actionNext|flagNoEnterAction"
/>
</LinearLayout>
- <!-- Spacer between password entry and keyboard -->
- <View
- android:layout_width="match_parent"
- android:layout_height="0dip"
- android:layout_weight="1" />
-
<!-- Alphanumeric keyboard -->
<com.android.internal.widget.PasswordEntryKeyboardView android:id="@+id/keyboard"
android:layout_alignParentBottom="true"
@@ -78,29 +73,26 @@
/>
<RelativeLayout
- android:layout_height="wrap_content"
android:layout_width="match_parent"
- android:background="@android:drawable/bottom_bar"
- android:visibility="gone">
-
- <Button android:id="@+id/cancel_button"
- android:layout_width="150dip"
- android:layout_height="wrap_content"
- android:layout_margin="5dip"
- android:layout_alignParentLeft="true"
- android:text="@string/lockpassword_cancel_label"
- />
-
- <Button android:id="@+id/next_button"
- android:layout_width="150dip"
- android:layout_height="wrap_content"
- android:layout_margin="5dip"
+ android:layout_height="0dip"
+ android:layout_weight="1">
+ <LinearLayout
+ style="@style/SecurityPreferenceButtonContainer"
+ android:orientation="horizontal"
android:layout_alignParentRight="true"
- android:drawableRight="@drawable/ic_btn_next"
- android:drawablePadding="10dip"
- android:text="@string/lockpassword_continue_label"
- />
+ android:layout_alignParentBottom="true">
+ <!-- left : cancel -->
+ <Button android:id="@+id/cancel_button"
+ style="@style/SecurityPreferenceButton"
+ android:text="@string/lockpassword_cancel_label"/>
+
+ <!-- right : continue -->
+ <Button android:id="@+id/next_button"
+ style="@style/SecurityPreferenceButton"
+ android:text="@string/lockpassword_continue_label"/>
+
+ </LinearLayout>
</RelativeLayout>
</LinearLayout>
diff --git a/res/layout-land/confirm_lock_password.xml b/res/layout-land/confirm_lock_password.xml
index 4138be1..e5580eb 100644
--- a/res/layout-land/confirm_lock_password.xml
+++ b/res/layout-land/confirm_lock_password.xml
@@ -59,6 +59,7 @@
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@drawable/password_field_default"
android:textColor="#ffffffff"
+ android:imeOptions="actionNext|flagNoEnterAction"
/>
</LinearLayout>
diff --git a/res/layout/choose_lock_password.xml b/res/layout/choose_lock_password.xml
index a854b9a..958cc16 100644
--- a/res/layout/choose_lock_password.xml
+++ b/res/layout/choose_lock_password.xml
@@ -54,6 +54,7 @@
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@drawable/password_field_default"
android:textColor="#ffffffff"
+ android:imeOptions="actionNext|flagNoEnterAction"
/>
<!-- Spacer between password entry and keyboard -->
diff --git a/res/layout/confirm_lock_password.xml b/res/layout/confirm_lock_password.xml
index 308228b..21eecc2 100644
--- a/res/layout/confirm_lock_password.xml
+++ b/res/layout/confirm_lock_password.xml
@@ -57,6 +57,7 @@
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@drawable/password_field_default"
android:textColor="#ffffffff"
+ android:imeOptions="actionNext|flagNoEnterAction"
/>
<!-- Spacer between password entry and keyboard -->
diff --git a/src/com/android/settings/ChooseLockPassword.java b/src/com/android/settings/ChooseLockPassword.java
index a0f2346..96255eb 100644
--- a/src/com/android/settings/ChooseLockPassword.java
+++ b/src/com/android/settings/ChooseLockPassword.java
@@ -405,8 +405,10 @@
}
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 && event.getAction() == KeyEvent.ACTION_DOWN) {
+ // Check if this was the result of hitting the enter or "done" key
+ if (actionId == EditorInfo.IME_NULL
+ || actionId == EditorInfo.IME_ACTION_DONE
+ || actionId == EditorInfo.IME_ACTION_NEXT) {
handleNext();
return true;
}
diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java
index 3f4a4f3..7b7b103 100644
--- a/src/com/android/settings/ConfirmLockPassword.java
+++ b/src/com/android/settings/ConfirmLockPassword.java
@@ -173,8 +173,10 @@
}
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) {
+ // Check if this was the result of hitting the enter or "done" key
+ if (actionId == EditorInfo.IME_NULL
+ || actionId == EditorInfo.IME_ACTION_DONE
+ || actionId == EditorInfo.IME_ACTION_NEXT) {
handleNext();
return true;
}