Get encryption working for phones.

I've removed the "special" keyboard from the phone
layouts for now.

Change-Id: I4b18279dafb18ba7cebacfad1b7167e34a7203b4
diff --git a/res/layout/crypt_keeper_password_entry.xml b/res/layout/crypt_keeper_password_entry.xml
index 4dce67a..a5193ce 100644
--- a/res/layout/crypt_keeper_password_entry.xml
+++ b/res/layout/crypt_keeper_password_entry.xml
@@ -30,39 +30,16 @@
                >
        <include layout="@layout/crypt_keeper_status" />
    </LinearLayout>
-   
-   <!-- right side: password -->
-   <LinearLayout
+
+   <EditText android:id="@+id/passwordEntry"
+       android:layout_height="wrap_content"
        android:layout_width="match_parent"
-       android:layout_height="match_parent"
-       android:orientation="vertical"
-       android:gravity="center">
+       android:singleLine="true"
+       android:textStyle="normal"
+       android:inputType="textPassword"
+       android:textSize="24sp"
+       android:textAppearance="?android:attr/textAppearanceMedium"
+       android:textColor="#ffffffff"
+    />
 
-       <!-- Password entry field -->
-       <EditText android:id="@+id/passwordEntry"
-           android:layout_height="wrap_content"
-           android:layout_width="450dip"
-           android:singleLine="true"
-           android:textStyle="normal"
-           android:inputType="textPassword"
-           android:gravity="center"
-           android:layout_gravity="center"
-           android:textSize="24sp"
-           android:layout_marginTop="120dip"
-           android:layout_marginBottom="5dip"
-           android:textAppearance="?android:attr/textAppearanceMedium"
-           android:textColor="#ffffffff"
-           android:editable="false"
-        />
-
-       <com.android.internal.widget.PasswordEntryKeyboardView android:id="@+id/keyboard"
-           android:layout_width="450dip"
-           android:layout_height="230dip"
-           android:background="#00000000"
-           android:keyBackground="@*android:drawable/btn_keyboard_key_fulltrans"
-           android:visibility="visible"
-       />
-       
-   </LinearLayout>
-    
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout/crypt_keeper_progress.xml b/res/layout/crypt_keeper_progress.xml
index 7c6c363..f8e3a1a 100644
--- a/res/layout/crypt_keeper_progress.xml
+++ b/res/layout/crypt_keeper_progress.xml
@@ -54,11 +54,11 @@
     
     
     <TextView
+        android:id="@+id/status"
         android:layout_width="match_parent"
         android:layout_height="0dip"
         android:layout_weight="1"
         android:layout_marginLeft="16dip"
-        android:text="@string/crypt_keeper_setup_description"
     />
 
 </LinearLayout>
diff --git a/src/com/android/settings/CryptKeeper.java b/src/com/android/settings/CryptKeeper.java
index edf00d5..20bf7ce 100644
--- a/src/com/android/settings/CryptKeeper.java
+++ b/src/com/android/settings/CryptKeeper.java
@@ -342,9 +342,11 @@
 
         KeyboardView keyboardView = (PasswordEntryKeyboardView) findViewById(R.id.keyboard);
 
-        PasswordEntryKeyboardHelper keyboardHelper = new PasswordEntryKeyboardHelper(this,
-                keyboardView, mPasswordEntry, false);
-        keyboardHelper.setKeyboardMode(PasswordEntryKeyboardHelper.KEYBOARD_MODE_ALPHA);
+        if (keyboardView != null) {
+            PasswordEntryKeyboardHelper keyboardHelper = new PasswordEntryKeyboardHelper(this,
+                    keyboardView, mPasswordEntry, false);
+            keyboardHelper.setKeyboardMode(PasswordEntryKeyboardHelper.KEYBOARD_MODE_ALPHA);
+        }
     }
 
     private IMountService getMountService() {
@@ -357,7 +359,7 @@
 
     @Override
     public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
-        if (actionId == EditorInfo.IME_NULL) {
+        if (actionId == EditorInfo.IME_NULL || actionId == EditorInfo.IME_ACTION_DONE) {
             // Get the password
             String password = v.getText().toString();
 
diff --git a/src/com/android/settings/CryptKeeperConfirm.java b/src/com/android/settings/CryptKeeperConfirm.java
index ba8ce10..d177cb4 100644
--- a/src/com/android/settings/CryptKeeperConfirm.java
+++ b/src/com/android/settings/CryptKeeperConfirm.java
@@ -62,6 +62,8 @@
                 public void run() {
                     IBinder service = ServiceManager.getService("mount");
                     if (service == null) {
+                        Log.e("CryptKeeper", "Failed to find the mount service");
+                        finish();
                         return;
                     }