Update keyguard and pattern-lock layouts for new UX designs.

To do this, we bring DigitalClock over from Clock into the
internal widgets.  Its font, Clockopia, comes along for the
ride (find it in /system/fonts).

This change is required for relevant code changes in
frameworks/policy/phone.

Change-Id: I354534f1abd9cf9557c9d18566f1d55b6be5e8f1
diff --git a/core/java/com/android/internal/widget/DigitalClock.java b/core/java/com/android/internal/widget/DigitalClock.java
new file mode 100644
index 0000000..ca71722
--- /dev/null
+++ b/core/java/com/android/internal/widget/DigitalClock.java
@@ -0,0 +1,186 @@
+/*
+ * Copyright (C) 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.
+ */
+
+package com.android.internal.widget;
+
+import com.android.internal.R;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.content.res.Resources;
+import android.database.ContentObserver;
+import android.graphics.Typeface;
+import android.os.Handler;
+import android.provider.Settings;
+import android.text.format.DateFormat;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+
+import java.text.DateFormatSymbols;
+import java.util.Calendar;
+
+/**
+ * Displays the time
+ */
+public class DigitalClock extends LinearLayout {
+
+    private final static String M12 = "h:mm";
+    private final static String M24 = "kk:mm";
+
+    private Calendar mCalendar;
+    private String mFormat;
+    private TextView mTimeDisplay;
+    private AmPm mAmPm;
+    private ContentObserver mFormatChangeObserver;
+    private boolean mLive = true;
+    private boolean mAttached;
+
+    /* called by system on minute ticks */
+    private final Handler mHandler = new Handler();
+    private final BroadcastReceiver mIntentReceiver = new BroadcastReceiver() {
+            @Override
+            public void onReceive(Context context, Intent intent) {
+                if (mLive && intent.getAction().equals(
+                            Intent.ACTION_TIMEZONE_CHANGED)) {
+                    mCalendar = Calendar.getInstance();
+                }
+                updateTime();
+            }
+        };
+
+    static class AmPm {
+        private TextView mAmPm;
+        private String mAmString, mPmString;
+
+        AmPm(View parent, Typeface tf) {
+            mAmPm = (TextView) parent.findViewById(R.id.am_pm);
+            if (tf != null) {
+                mAmPm.setTypeface(tf);
+            }
+
+            String[] ampm = new DateFormatSymbols().getAmPmStrings();
+            mAmString = ampm[0];
+            mPmString = ampm[1];
+        }
+
+        void setShowAmPm(boolean show) {
+            mAmPm.setVisibility(show ? View.VISIBLE : View.GONE);
+        }
+
+        void setIsMorning(boolean isMorning) {
+            mAmPm.setText(isMorning ? mAmString : mPmString);
+        }
+    }
+
+    private class FormatChangeObserver extends ContentObserver {
+        public FormatChangeObserver() {
+            super(new Handler());
+        }
+        @Override
+        public void onChange(boolean selfChange) {
+            setDateFormat();
+            updateTime();
+        }
+    }
+
+    public DigitalClock(Context context) {
+        this(context, null);
+    }
+
+    public DigitalClock(Context context, AttributeSet attrs) {
+        super(context, attrs);
+    }
+
+    @Override
+    protected void onFinishInflate() {
+        super.onFinishInflate();
+
+        mTimeDisplay = (TextView) findViewById(R.id.timeDisplay);
+        mTimeDisplay.setTypeface(Typeface.createFromFile("/system/fonts/Clockopia.ttf"));
+        mAmPm = new AmPm(this, Typeface.createFromFile("/system/fonts/DroidSans-Bold.ttf"));
+        mCalendar = Calendar.getInstance();
+
+        setDateFormat();
+    }
+
+    @Override
+    protected void onAttachedToWindow() {
+        super.onAttachedToWindow();
+
+        if (mAttached) return;
+        mAttached = true;
+
+        if (mLive) {
+            /* monitor time ticks, time changed, timezone */
+            IntentFilter filter = new IntentFilter();
+            filter.addAction(Intent.ACTION_TIME_TICK);
+            filter.addAction(Intent.ACTION_TIME_CHANGED);
+            filter.addAction(Intent.ACTION_TIMEZONE_CHANGED);
+            mContext.registerReceiver(mIntentReceiver, filter, null, mHandler);
+        }
+
+        /* monitor 12/24-hour display preference */
+        mFormatChangeObserver = new FormatChangeObserver();
+        mContext.getContentResolver().registerContentObserver(
+                Settings.System.CONTENT_URI, true, mFormatChangeObserver);
+
+        updateTime();
+    }
+
+    @Override
+    protected void onDetachedFromWindow() {
+        super.onDetachedFromWindow();
+
+        if (!mAttached) return;
+        mAttached = false;
+
+        if (mLive) {
+            mContext.unregisterReceiver(mIntentReceiver);
+        }
+        mContext.getContentResolver().unregisterContentObserver(
+                mFormatChangeObserver);
+    }
+
+
+    void updateTime(Calendar c) {
+        mCalendar = c;
+        updateTime();
+    }
+
+    private void updateTime() {
+        if (mLive) {
+            mCalendar.setTimeInMillis(System.currentTimeMillis());
+        }
+
+        CharSequence newTime = DateFormat.format(mFormat, mCalendar);
+        mTimeDisplay.setText(newTime);
+        mAmPm.setIsMorning(mCalendar.get(Calendar.AM_PM) == 0);
+    }
+
+    private void setDateFormat() {
+        mFormat = android.text.format.DateFormat.is24HourFormat(getContext()) 
+            ? M24 : M12;
+        mAmPm.setShowAmPm(mFormat.equals(M12));
+    }
+
+    void setLive(boolean live) {
+        mLive = live;
+    }
+}
diff --git a/core/res/res/layout/keyguard_screen_tab_unlock.xml b/core/res/res/layout/keyguard_screen_tab_unlock.xml
index 84b5751..6f7010e 100644
--- a/core/res/res/layout/keyguard_screen_tab_unlock.xml
+++ b/core/res/res/layout/keyguard_screen_tab_unlock.xml
@@ -38,58 +38,80 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_alignParentTop="true"
-            android:layout_marginTop="20dip"
+            android:layout_alignParentRight="true"
+            android:layout_marginTop="16dip"
+            android:layout_marginRight="16dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             />
     
-        <TextView
-            android:id="@+id/time"
+        <!-- time and date -->
+        <com.android.internal.widget.DigitalClock android:id="@+id/time"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_below="@id/carrier"
-            android:layout_marginTop="25dip"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:textSize="55sp"
-            />
+            android:layout_marginBottom="8dip"
+            android:layout_marginTop="16dip"
+            android:layout_marginLeft="24dip"
+            >
+
+            <TextView android:id="@+id/timeDisplay"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:gravity="bottom"
+                android:textSize="72sp"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+
+            <TextView android:id="@+id/am_pm"
+                android:layout_width="wrap_content"
+                android:layout_height="fill_parent"
+                android:gravity="bottom"
+                android:textSize="22sp"
+                android:singleLine="true"
+                android:layout_marginLeft="8dip"
+                android:layout_marginBottom="-6dip"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+        </com.android.internal.widget.DigitalClock>
     
         <TextView
             android:id="@+id/date"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_below="@id/time"
-            android:layout_marginTop="-12dip"
+            android:layout_marginLeft="24dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
             />
     
-        <View
-            android:id="@+id/divider"
-            android:layout_width="fill_parent"
-            android:layout_height="1dip"
-            android:layout_marginTop="10dip"
-            android:layout_below="@id/date"
-            android:background="@android:drawable/divider_horizontal_dark"
-            />
-    
         <TextView
             android:id="@+id/status1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_below="@id/divider"
+            android:layout_below="@id/date"
             android:layout_marginTop="6dip"
+            android:layout_marginLeft="24dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:drawablePadding="4dip"
             />
-    
+
         <TextView
             android:id="@+id/status2"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_below="@id/status1"
             android:layout_marginTop="6dip"
+            android:layout_marginLeft="24dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:drawablePadding="4dip"
             />
     
@@ -98,9 +120,8 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_below="@id/status2"
+            android:layout_marginLeft="24dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
-            android:gravity="center"
             android:layout_marginTop="12dip"
             />
     
diff --git a/core/res/res/layout/keyguard_screen_tab_unlock_land.xml b/core/res/res/layout/keyguard_screen_tab_unlock_land.xml
index b80806b..a9edb6b 100644
--- a/core/res/res/layout/keyguard_screen_tab_unlock_land.xml
+++ b/core/res/res/layout/keyguard_screen_tab_unlock_land.xml
@@ -33,7 +33,8 @@
             android:layout_width="0dip"
             android:layout_height="fill_parent"
             android:layout_weight="1.0"
-            android:gravity="center_horizontal">
+            android:layout_marginLeft="24dip"
+            android:gravity="left">
 
         <TextView
             android:id="@+id/carrier"
@@ -42,45 +43,62 @@
             android:layout_alignParentTop="true"
             android:layout_marginTop="20dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             />
 
-        <TextView
-            android:id="@+id/time"
+        <com.android.internal.widget.DigitalClock android:id="@+id/time"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_below="@id/carrier"
-            android:layout_marginTop="25dip"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:textSize="55sp"
-            />
+            android:layout_marginBottom="8dip"
+            android:layout_marginTop="56dip"
+            >
+
+            <TextView android:id="@+id/timeDisplay"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:gravity="bottom"
+                android:textSize="72sp"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+
+            <TextView android:id="@+id/am_pm"
+                android:layout_width="wrap_content"
+                android:layout_height="fill_parent"
+                android:gravity="bottom"
+                android:textSize="22sp"
+                android:singleLine="true"
+                android:layout_marginLeft="8dip"
+                android:layout_marginBottom="-6dip"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+        </com.android.internal.widget.DigitalClock>
 
         <TextView
             android:id="@+id/date"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_below="@id/time"
-            android:layout_marginTop="-12dip"
+            android:layout_marginTop="6dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
             />
 
-        <View
-            android:id="@+id/divider"
-            android:layout_width="fill_parent"
-            android:layout_height="1dip"
-            android:layout_marginTop="10dip"
-            android:layout_below="@id/date"
-            android:background="@android:drawable/divider_horizontal_dark"
-            />
-
         <TextView
             android:id="@+id/status1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_below="@id/divider"
+            android:layout_below="@id/date"
             android:layout_marginTop="6dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:drawablePadding="4dip"
             />
 
@@ -91,7 +109,6 @@
             android:layout_below="@id/status1"
             android:layout_marginTop="6dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:drawablePadding="4dip"
             />
 
@@ -101,7 +118,6 @@
             android:layout_height="wrap_content"
             android:layout_below="@id/status2"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:gravity="center"
             android:layout_marginTop="12dip"
             />
diff --git a/core/res/res/layout/keyguard_screen_unlock_landscape.xml b/core/res/res/layout/keyguard_screen_unlock_landscape.xml
index 3e00ae8e1..6da82e9 100644
--- a/core/res/res/layout/keyguard_screen_unlock_landscape.xml
+++ b/core/res/res/layout/keyguard_screen_unlock_landscape.xml
@@ -35,56 +35,73 @@
             android:layout_width="0dip"
             android:layout_height="fill_parent"
             android:layout_weight="1.0"
-            android:gravity="center_horizontal"
+            android:layout_marginLeft="24dip"
+            android:gravity="left"
             >
         <TextView
+            android:id="@+id/status1"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="16dip"
+            android:textAppearance="?android:attr/textAppearanceMedium"
+            />
+
+        <TextView
             android:id="@+id/carrier"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_marginTop="5dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
-            />
-        <TextView
-            android:id="@+id/centerDot"
-            android:visibility="gone"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginLeft="5dip"
-            android:layout_marginRight="5dip"
-            android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:textSize="17sp"
+            android:drawablePadding="4dip"
+            android:layout_marginTop="32dip"
             />
-        <TextView
-            android:id="@+id/time"
+        <com.android.internal.widget.DigitalClock android:id="@+id/time"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_centerHorizontal="true"
-            android:layout_marginTop="5dip"
-            android:textAppearance="?android:attr/textAppearanceLarge"
-            android:textSize="35sp"
-            />
+            android:layout_alignParentTop="true"
+            android:layout_alignParentLeft="true"
+            android:layout_marginBottom="8dip"
+            android:layout_marginTop="8dip"
+            >
+
+            <TextView android:id="@+id/timeDisplay"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:gravity="bottom"
+                android:textSize="72sp"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+
+            <TextView android:id="@+id/am_pm"
+                android:layout_width="wrap_content"
+                android:layout_height="fill_parent"
+                android:gravity="bottom"
+                android:textSize="22sp"
+                android:singleLine="true"
+                android:layout_marginLeft="8dip"
+                android:layout_marginBottom="-6dip"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+        </com.android.internal.widget.DigitalClock>
+
         <TextView
             android:id="@+id/date"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_alignParentTop="true"
-            android:layout_marginTop="-12dip"
+            android:layout_below="@id/time"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
-            android:textSize="17sp"
             />
 
-
-        <View
-            android:id="@+id/divider"
-            android:layout_width="fill_parent"
-            android:layout_height="1dip"
-            android:layout_centerHorizontal="true"
-            android:background="@android:drawable/divider_horizontal_dark"
-                />
-
         <!-- used for instructions such as "draw pattern to unlock", the next alarm, and charging
              status.  -->
         <LinearLayout
@@ -95,22 +112,12 @@
             android:gravity="center"
             >
             <TextView
-                android:id="@+id/status1"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textColor="?android:attr/textColorSecondary"
-                android:textSize="17sp"
-                android:drawablePadding="4dip"
-                />
-            <TextView
                 android:id="@+id/statusSep"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="5dip"
                 android:layout_marginRight="5dip"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textColor="?android:attr/textColorSecondary"
                 android:textSize="17sp"
                 />
             <TextView
@@ -119,7 +126,6 @@
                 android:layout_height="wrap_content"
                 android:layout_alignParentTop="true"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textColor="?android:attr/textColorSecondary"
                 android:textSize="17sp"
                 android:drawablePadding="4dip"
                 />
@@ -136,13 +142,14 @@
         <FrameLayout
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
+            android:layout_marginBottom="16dip"
             >
 
             <!-- option 1: a single emergency call button -->
             <RelativeLayout android:id="@+id/footerNormal"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
-                android:gravity="center"
+                android:gravity="left"
                 >
                 <Button android:id="@+id/emergencyCallAlone"
                     android:layout_width="wrap_content"
@@ -162,7 +169,7 @@
                 android:orientation="vertical"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
-                android:gravity="center"
+                android:gravity="left"
                 >
                 <Button android:id="@+id/forgotPattern"
                     android:layout_width="fill_parent"
@@ -193,4 +200,4 @@
          android:layout_width="wrap_content"
          android:layout_height="wrap_content" />
 
-</com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
\ No newline at end of file
+</com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
diff --git a/core/res/res/layout/keyguard_screen_unlock_portrait.xml b/core/res/res/layout/keyguard_screen_unlock_portrait.xml
index 0525356..2856794 100644
--- a/core/res/res/layout/keyguard_screen_unlock_portrait.xml
+++ b/core/res/res/layout/keyguard_screen_unlock_portrait.xml
@@ -27,78 +27,99 @@
     android:layout_height="fill_parent"
     android:gravity="center_horizontal"
     android:background="#70000000"
-        >
+    >
 
-    <LinearLayout
-        android:id="@+id/carrierAndDate"
-        android:orientation="horizontal"
-        android:layout_width="wrap_content"
+    <RelativeLayout
+        android:layout_width="fill_parent"
         android:layout_height="wrap_content"
-        android:layout_marginTop="13dip"
         >
         <TextView
             android:id="@+id/carrier"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:layout_alignParentTop="true"
+            android:layout_alignParentRight="true"
+            android:layout_marginTop="16dip"
+            android:layout_marginRight="16dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
-            android:textSize="17sp"
             />
-        <TextView
-            android:id="@+id/centerDot"
+
+        <com.android.internal.widget.DigitalClock android:id="@+id/time"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_marginLeft="5dip"
-            android:layout_marginRight="5dip"
-            android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
-            android:textSize="17sp"
-            />
+            android:layout_alignParentTop="true"
+            android:layout_alignParentLeft="true"
+            android:layout_marginBottom="8dip"
+            android:layout_marginTop="16dip"
+            android:layout_marginLeft="24dip"
+            >
+
+            <TextView android:id="@+id/timeDisplay"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:gravity="bottom"
+                android:textSize="72sp"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+
+            <TextView android:id="@+id/am_pm"
+                android:layout_width="wrap_content"
+                android:layout_height="fill_parent"
+                android:gravity="bottom"
+                android:textSize="22sp"
+                android:singleLine="true"
+                android:layout_marginLeft="8dip"
+                android:layout_marginBottom="-6dip"
+                android:textAppearance="?android:attr/textAppearanceMedium"
+                android:shadowColor="#C0000000"
+                android:shadowDx="0"
+                android:shadowDy="0"
+                android:shadowRadius="3.0"
+                />
+
+        </com.android.internal.widget.DigitalClock>
+
         <TextView
             android:id="@+id/date"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:layout_alignParentTop="true"
+            android:layout_below="@id/time"
+            android:layout_marginLeft="24dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
-            android:textSize="17sp"
             />
-    </LinearLayout>
-
-    <TextView
-        android:id="@+id/time"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_centerHorizontal="true"
-        android:layout_marginTop="-9dip"
-        android:textAppearance="?android:attr/textAppearanceLarge"
-        android:textSize="48sp"
-        />
+    
+    </RelativeLayout>
 
     <View
         android:id="@+id/divider"
+        android:layout_below="@id/date"
         android:layout_width="fill_parent"
         android:layout_height="1dip"
-        android:layout_marginTop="-4dip"
-        android:layout_centerHorizontal="true"
+        android:layout_marginTop="8dip"
+        android:layout_marginBottom="8dip"
         android:background="@android:drawable/divider_horizontal_dark"
-            />
+        />
 
     <!-- used for instructions such as "draw pattern to unlock", the next alarm, and charging
          status.  -->
     <LinearLayout
         android:orientation="horizontal"
-        android:layout_width="wrap_content"
+        android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:layout_marginTop="3dip"
-        android:gravity="center"
+        android:layout_marginLeft="24dip"
+        android:gravity="left"
         >
         <TextView
             android:id="@+id/status1"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:textSize="17sp"
             android:drawablePadding="4dip"
             />
@@ -109,7 +130,6 @@
             android:layout_marginLeft="5dip"
             android:layout_marginRight="5dip"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:textSize="17sp"
             />
         <TextView
@@ -118,7 +138,6 @@
             android:layout_height="wrap_content"
             android:layout_alignParentTop="true"
             android:textAppearance="?android:attr/textAppearanceMedium"
-            android:textColor="?android:attr/textColorSecondary"
             android:textSize="17sp"
             android:drawablePadding="4dip"
             />
diff --git a/data/fonts/Android.mk b/data/fonts/Android.mk
index a8abf8b..597cb57 100644
--- a/data/fonts/Android.mk
+++ b/data/fonts/Android.mk
@@ -22,7 +22,8 @@
     DroidSerif-Bold.ttf     \
     DroidSerif-Italic.ttf   \
     DroidSerif-BoldItalic.ttf   \
-    DroidSansMono.ttf
+    DroidSansMono.ttf        \
+    Clockopia.ttf
 
 ifneq ($(NO_FALLBACK_FONT),true)
     copy_from += DroidSansFallback.ttf
diff --git a/data/fonts/Clockopia.ttf b/data/fonts/Clockopia.ttf
new file mode 100644
index 0000000..123ea4f
--- /dev/null
+++ b/data/fonts/Clockopia.ttf
Binary files differ