Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f866589 authored by John Wang's avatar John Wang Committed by Android Git Automerger
Browse files

am 71030e53: Merge "Add SIM PUK unlockscreen." into honeycomb-LTE

* commit '71030e53':
  Add SIM PUK unlockscreen.
parents e139167c 71030e53
Loading
Loading
Loading
Loading
+23 −1
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.provider.Settings;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;

import java.io.File;
@@ -775,6 +776,16 @@ public class LockPatternUtils {
        setBoolean(LOCKOUT_PERMANENT_KEY, locked);
    }

    public boolean isEmergencyCallCapable() {
        return mContext.getResources().getBoolean(
                com.android.internal.R.bool.config_voice_capable);
    }

    public boolean isPukUnlockScreenEnable() {
        return mContext.getResources().getBoolean(
                com.android.internal.R.bool.config_enable_puk_unlock_screen);
    }

    /**
     * @return A formatted string of the next alarm (for showing on the lock screen),
     *   or null if there is no next alarm.
@@ -827,11 +838,22 @@ public class LockPatternUtils {
    }

    /**
     * Sets the text on the emergency button to indicate what action will be taken.
     * Sets the emergency button visibility based on isEmergencyCallCapable().
     *
     * If the emergency button is visible, sets the text on the emergency button
     * to indicate what action will be taken.
     *
     * If there's currently a call in progress, the button will take them to the call
     * @param button the button to update
     */
    public void updateEmergencyCallButtonState(Button button) {
        if (isEmergencyCallCapable()) {
            button.setVisibility(View.VISIBLE);
        } else {
            button.setVisibility(View.GONE);
            return;
        }

        int newState = TelephonyManager.getDefault().getCallState();
        int textId;
        if (newState == TelephonyManager.CALL_STATE_OFFHOOK) {
+182 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2008, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/background_dark"
        >

    <LinearLayout android:id="@+id/topDisplayGroup"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <!-- header text ('Enter Puk Code') -->
        <TextView android:id="@+id/headerText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:singleLine="true"
            android:textAppearance="?android:attr/textAppearanceLarge"/>

        <!-- Carrier info -->
        <TextView android:id="@+id/carrier"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="9dip"
            android:gravity="center"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:textAppearance="?android:attr/textAppearanceMedium"/>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_marginRight="10dip"
                android:layout_marginLeft="10dip">
                <TextView android:id="@+id/enter_puk"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center_vertical"
                    android:text="@android:string/keyguard_password_enter_puk_prompt"
                    android:textSize="30sp"
                    android:layout_marginBottom="10dip"/>
                <TextView android:id="@+id/enter_pin"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center_vertical"
                    android:text="@android:string/keyguard_password_enter_pin_prompt"
                    android:textSize="30sp"
                    android:layout_marginTop="10dip"/>
            </LinearLayout>

            <LinearLayout
                  android:orientation="vertical"
                  android:layout_width="wrap_content"
                  android:layout_weight="1"
                  android:layout_height="match_parent"
                  android:paddingRight="0dip"
                  android:layout_marginRight="10dip"
                  android:layout_marginLeft="10dip">

                  <LinearLayout
                      android:layout_width="match_parent"
                      android:layout_height="wrap_content"
                      android:orientation="horizontal"
                      android:layout_marginRight="6dip"
                      android:layout_marginLeft="6dip"
                      android:gravity="center_vertical"
                      android:background="@android:drawable/edit_text">

                      <!-- displays dots as user enters puk -->
                      <TextView android:id="@+id/pukDisplay"
                          android:layout_width="0dip"
                          android:layout_height="wrap_content"
                          android:layout_weight="1"
                          android:maxLines="1"
                          android:textAppearance="?android:attr/textAppearanceLargeInverse"
                          android:textStyle="bold"
                          android:inputType="textPassword"
                      />

                      <ImageButton android:id="@+id/pukDel"
                          android:src="@android:drawable/ic_input_delete"
                          android:layout_width="wrap_content"
                          android:layout_height="wrap_content"
                          android:layout_marginRight="-3dip"
                          android:layout_marginBottom="-3dip"
                      />
                  </LinearLayout>


                  <LinearLayout
                      android:layout_width="match_parent"
                      android:layout_height="wrap_content"
                      android:orientation="horizontal"
                      android:layout_marginRight="6dip"
                      android:layout_marginLeft="6dip"
                      android:gravity="center_vertical"
                      android:background="@android:drawable/edit_text">

                      <!-- displays dots as user enters new pin -->
                      <TextView android:id="@+id/pinDisplay"
                          android:layout_width="0dip"
                          android:layout_height="wrap_content"
                          android:layout_weight="1"
                          android:maxLines="1"
                          android:textAppearance="?android:attr/textAppearanceLargeInverse"
                          android:textStyle="bold"
                          android:inputType="textPassword"
                      />

                      <ImageButton android:id="@+id/pinDel"
                          android:src="@android:drawable/ic_input_delete"
                          android:layout_width="wrap_content"
                          android:layout_height="wrap_content"
                          android:layout_marginRight="-3dip"
                          android:layout_marginBottom="-3dip"
                      />
                  </LinearLayout>
              </LinearLayout>
        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:orientation="horizontal"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="8dip"
        android:layout_marginRight="8dip">

        <Button android:id="@+id/ok"
            android:text="@android:string/ok"
            android:layout_alignParentBottom="true"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="1.0"
            android:layout_marginBottom="8dip"
            android:layout_marginRight="8dip"
            android:textSize="18sp"
            />

        <Button android:id="@+id/emergencyCall"
            android:text="@android:string/lockscreen_emergency_call"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="1.0"
            android:layout_marginBottom="8dip"
            android:layout_marginLeft="8dip"
            android:textSize="18sp"
            android:drawableLeft="@drawable/ic_emergency"
            android:drawablePadding="8dip"
        />
    </LinearLayout>

</RelativeLayout>
+185 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2008, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@android:color/background_dark"
    android:gravity="center_horizontal">

    <LinearLayout android:id="@+id/topDisplayGroup"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <!-- header text ('Enter Puk Code') -->
        <TextView android:id="@+id/headerText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:singleLine="true"
            android:textAppearance="?android:attr/textAppearanceLarge"/>

        <!-- Carrier info -->
        <TextView android:id="@+id/carrier"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="9dip"
            android:gravity="center"
            android:singleLine="true"
            android:ellipsize="marquee"
            android:textAppearance="?android:attr/textAppearanceMedium"/>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <LinearLayout
                android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_marginRight="10dip"
                android:layout_marginLeft="10dip">
                <TextView android:id="@+id/enter_puk"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center_vertical"
                    android:text="@android:string/keyguard_password_enter_puk_prompt"
                    android:textSize="30sp"
                    android:layout_marginBottom="10dip"/>
                <TextView android:id="@+id/enter_pin"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:gravity="center_vertical"
                    android:text="@android:string/keyguard_password_enter_pin_prompt"
                    android:textSize="30sp"
                    android:layout_marginTop="10dip"/>
            </LinearLayout>

            <LinearLayout
                  android:orientation="vertical"
                  android:layout_width="wrap_content"
                  android:layout_weight="1"
                  android:layout_height="match_parent"
                  android:paddingRight="0dip"
                  android:layout_marginRight="10dip"
                  android:layout_marginLeft="10dip">

                  <LinearLayout
                      android:layout_width="match_parent"
                      android:layout_height="wrap_content"
                      android:orientation="horizontal"
                      android:layout_marginRight="6dip"
                      android:layout_marginLeft="6dip"
                      android:gravity="center_vertical"
                      android:background="@android:drawable/edit_text">

                      <!-- displays dots as user enters puk -->
                      <TextView android:id="@+id/pukDisplay"
                          android:layout_width="0dip"
                          android:layout_height="wrap_content"
                          android:layout_weight="1"
                          android:maxLines="1"
                          android:textAppearance="?android:attr/textAppearanceLargeInverse"
                          android:textStyle="bold"
                          android:inputType="textPassword"
                      />

                      <ImageButton android:id="@+id/pukDel"
                          android:src="@android:drawable/ic_input_delete"
                          android:layout_width="wrap_content"
                          android:layout_height="wrap_content"
                          android:layout_marginRight="-3dip"
                          android:layout_marginBottom="-3dip"
                      />
                  </LinearLayout>


                  <LinearLayout
                      android:layout_width="match_parent"
                      android:layout_height="wrap_content"
                      android:orientation="horizontal"
                      android:layout_marginRight="6dip"
                      android:layout_marginLeft="6dip"
                      android:gravity="center_vertical"
                      android:background="@android:drawable/edit_text">

                      <!-- displays dots as user enters new pin -->
                      <TextView android:id="@+id/pinDisplay"
                          android:layout_width="0dip"
                          android:layout_height="wrap_content"
                          android:layout_weight="1"
                          android:maxLines="1"
                          android:textAppearance="?android:attr/textAppearanceLargeInverse"
                          android:textStyle="bold"
                          android:inputType="textPassword"
                      />

                      <ImageButton android:id="@+id/pinDel"
                          android:src="@android:drawable/ic_input_delete"
                          android:layout_width="wrap_content"
                          android:layout_height="wrap_content"
                          android:layout_marginRight="-3dip"
                          android:layout_marginBottom="-3dip"
                      />
                  </LinearLayout>
              </LinearLayout>
        </LinearLayout>
    </LinearLayout>

    <include
        android:id="@+id/keyPad"
        layout="@android:layout/twelve_key_entry"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/topDisplayGroup"
        android:layout_marginTop="10dip"
    />

    <!-- spacer below keypad -->
    <View
        android:id="@+id/spacerBottom"
        android:layout_width="match_parent"
        android:layout_height="1dip"
        android:layout_marginTop="6dip"
        android:layout_above="@id/emergencyCall"
        android:background="@android:drawable/divider_horizontal_dark"
    />

    <!-- The emergency button should take the rest of the space and be centered vertically -->
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="1"
        android:gravity="center"
        android:orientation="vertical">

        <!-- emergency call button -->
        <Button
            android:id="@+id/emergencyCall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:drawableLeft="@android:drawable/ic_emergency"
            android:drawablePadding="8dip"
            android:text="@android:string/lockscreen_emergency_call"
        />
    </LinearLayout>

</LinearLayout>
+4 −0
Original line number Diff line number Diff line
@@ -370,6 +370,10 @@
    <!-- Diable lockscreen rotation by default -->
    <bool name="config_enableLockScreenRotation">false</bool>

    <!-- Diable puk unlockscreen by default.
         If unlock screen is disabled, the puk should be unlocked through Emergency Dialer -->
    <bool name="config_enable_puk_unlock_screen">false</bool>

    <!-- Control the behavior when the user long presses the power button.
            0 - Nothing
            1 - Recent apps dialog
+11 −0
Original line number Diff line number Diff line
@@ -87,6 +87,8 @@
    <string name="mismatchPin">The PINs you entered do not match.</string>
    <!-- Displayed when a SIM PIN password is too long or too short. -->
    <string name="invalidPin">Type a PIN that is 4 to 8 numbers.</string>
    <!-- Displayed when a SIM PUK password is too short. -->
    <string name="invalidPuk">Type a PUK that is 8 numbers or longer.</string>
    <!-- Displayed to prompt the user to type the PUK password to unlock
         the SIM card. -->
    <string name="needPuk">Your SIM card is PUK-locked. Type the PUK code to unlock it.</string>
@@ -1644,6 +1646,15 @@
         Displayed in one line in a large font.  -->
    <string name="keyguard_password_enter_pin_code">Enter PIN code</string>

    <!-- Instructions telling the user to enter their SIM PUK to unlock the keyguard.
         Displayed in one line in a large font.  -->
    <string name="keyguard_password_enter_puk_code">Enter PUK and new PIN code</string>

    <!-- Prompt to enter SIM PUK in Edit Text Box in unlock screen -->
    <string name="keyguard_password_enter_puk_prompt">PUK code</string>
    <!-- Prompt to enter New SIM PIN in Edit Text Box in unlock screen -->
    <string name="keyguard_password_enter_pin_prompt">New Pin Code</string>

    <!-- Displayed as hint in passwordEntry EditText on PasswordUnlockScreen [CHAR LIMIT=30]-->
    <string name="keyguard_password_entry_touch_hint"><font size="17">Touch to enter password</font></string>

Loading