Merge change I54089080 into eclair
* changes: Update keyguard and pattern-lock layouts for new UX designs.
This commit is contained in:
186
core/java/com/android/internal/widget/DigitalClock.java
Normal file
186
core/java/com/android/internal/widget/DigitalClock.java
Normal file
@@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -38,47 +38,69 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentTop="true"
|
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:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<TextView
|
<!-- time and date -->
|
||||||
android:id="@+id/time"
|
<com.android.internal.widget.DigitalClock android:id="@+id/time"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/carrier"
|
android:layout_below="@id/carrier"
|
||||||
android:layout_marginTop="25dip"
|
android:layout_marginBottom="8dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
android:layout_marginTop="16dip"
|
||||||
android:textSize="55sp"
|
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
|
<TextView
|
||||||
android:id="@+id/date"
|
android:id="@+id/date"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/time"
|
android:layout_below="@id/time"
|
||||||
android:layout_marginTop="-12dip"
|
android:layout_marginLeft="24dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
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
|
<TextView
|
||||||
android:id="@+id/status1"
|
android:id="@+id/status1"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/divider"
|
android:layout_below="@id/date"
|
||||||
android:layout_marginTop="6dip"
|
android:layout_marginTop="6dip"
|
||||||
|
android:layout_marginLeft="24dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -88,8 +110,8 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/status1"
|
android:layout_below="@id/status1"
|
||||||
android:layout_marginTop="6dip"
|
android:layout_marginTop="6dip"
|
||||||
|
android:layout_marginLeft="24dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -98,9 +120,8 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/status2"
|
android:layout_below="@id/status2"
|
||||||
|
android:layout_marginLeft="24dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:gravity="center"
|
|
||||||
android:layout_marginTop="12dip"
|
android:layout_marginTop="12dip"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,8 @@
|
|||||||
android:layout_width="0dip"
|
android:layout_width="0dip"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
android:layout_weight="1.0"
|
android:layout_weight="1.0"
|
||||||
android:gravity="center_horizontal">
|
android:layout_marginLeft="24dip"
|
||||||
|
android:gravity="left">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/carrier"
|
android:id="@+id/carrier"
|
||||||
@@ -42,45 +43,62 @@
|
|||||||
android:layout_alignParentTop="true"
|
android:layout_alignParentTop="true"
|
||||||
android:layout_marginTop="20dip"
|
android:layout_marginTop="20dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<TextView
|
<com.android.internal.widget.DigitalClock android:id="@+id/time"
|
||||||
android:id="@+id/time"
|
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/carrier"
|
android:layout_below="@id/carrier"
|
||||||
android:layout_marginTop="25dip"
|
android:layout_marginBottom="8dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
android:layout_marginTop="56dip"
|
||||||
android:textSize="55sp"
|
>
|
||||||
|
|
||||||
|
<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
|
<TextView
|
||||||
android:id="@+id/date"
|
android:id="@+id/date"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/time"
|
android:layout_below="@id/time"
|
||||||
android:layout_marginTop="-12dip"
|
android:layout_marginTop="6dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
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
|
<TextView
|
||||||
android:id="@+id/status1"
|
android:id="@+id/status1"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/divider"
|
android:layout_below="@id/date"
|
||||||
android:layout_marginTop="6dip"
|
android:layout_marginTop="6dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -91,7 +109,6 @@
|
|||||||
android:layout_below="@id/status1"
|
android:layout_below="@id/status1"
|
||||||
android:layout_marginTop="6dip"
|
android:layout_marginTop="6dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -101,7 +118,6 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@id/status2"
|
android:layout_below="@id/status2"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:layout_marginTop="12dip"
|
android:layout_marginTop="12dip"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -35,54 +35,71 @@
|
|||||||
android:layout_width="0dip"
|
android:layout_width="0dip"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
android:layout_weight="1.0"
|
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
|
<TextView
|
||||||
android:id="@+id/carrier"
|
android:id="@+id/carrier"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="5dip"
|
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
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:textSize="17sp"
|
||||||
|
android:drawablePadding="4dip"
|
||||||
|
android:layout_marginTop="32dip"
|
||||||
/>
|
/>
|
||||||
<TextView
|
<com.android.internal.widget.DigitalClock android:id="@+id/time"
|
||||||
android:id="@+id/time"
|
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_centerHorizontal="true"
|
android:layout_alignParentTop="true"
|
||||||
android:layout_marginTop="5dip"
|
android:layout_alignParentLeft="true"
|
||||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
android:layout_marginBottom="8dip"
|
||||||
android:textSize="35sp"
|
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
|
<TextView
|
||||||
android:id="@+id/date"
|
android:id="@+id/date"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentTop="true"
|
android:layout_below="@id/time"
|
||||||
android:layout_marginTop="-12dip"
|
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
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
|
<!-- used for instructions such as "draw pattern to unlock", the next alarm, and charging
|
||||||
@@ -94,15 +111,6 @@
|
|||||||
android:layout_marginTop="8dip"
|
android:layout_marginTop="8dip"
|
||||||
android:gravity="center"
|
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
|
<TextView
|
||||||
android:id="@+id/statusSep"
|
android:id="@+id/statusSep"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
@@ -110,7 +118,6 @@
|
|||||||
android:layout_marginLeft="5dip"
|
android:layout_marginLeft="5dip"
|
||||||
android:layout_marginRight="5dip"
|
android:layout_marginRight="5dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="17sp"
|
android:textSize="17sp"
|
||||||
/>
|
/>
|
||||||
<TextView
|
<TextView
|
||||||
@@ -119,7 +126,6 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentTop="true"
|
android:layout_alignParentTop="true"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="17sp"
|
android:textSize="17sp"
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
@@ -136,13 +142,14 @@
|
|||||||
<FrameLayout
|
<FrameLayout
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="16dip"
|
||||||
>
|
>
|
||||||
|
|
||||||
<!-- option 1: a single emergency call button -->
|
<!-- option 1: a single emergency call button -->
|
||||||
<RelativeLayout android:id="@+id/footerNormal"
|
<RelativeLayout android:id="@+id/footerNormal"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center"
|
android:gravity="left"
|
||||||
>
|
>
|
||||||
<Button android:id="@+id/emergencyCallAlone"
|
<Button android:id="@+id/emergencyCallAlone"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
@@ -162,7 +169,7 @@
|
|||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center"
|
android:gravity="left"
|
||||||
>
|
>
|
||||||
<Button android:id="@+id/forgotPattern"
|
<Button android:id="@+id/forgotPattern"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
|
|||||||
@@ -29,58 +29,79 @@
|
|||||||
android:background="#70000000"
|
android:background="#70000000"
|
||||||
>
|
>
|
||||||
|
|
||||||
<LinearLayout
|
<RelativeLayout
|
||||||
android:id="@+id/carrierAndDate"
|
android:layout_width="fill_parent"
|
||||||
android:orientation="horizontal"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="13dip"
|
|
||||||
>
|
>
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/carrier"
|
android:id="@+id/carrier"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="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: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_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="5dip"
|
android:layout_alignParentTop="true"
|
||||||
android:layout_marginRight="5dip"
|
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:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
android:shadowColor="#C0000000"
|
||||||
android:textSize="17sp"
|
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
|
<TextView
|
||||||
android:id="@+id/date"
|
android:id="@+id/date"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="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:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="17sp"
|
|
||||||
/>
|
/>
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
<TextView
|
</RelativeLayout>
|
||||||
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"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<View
|
<View
|
||||||
android:id="@+id/divider"
|
android:id="@+id/divider"
|
||||||
|
android:layout_below="@id/date"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="1dip"
|
android:layout_height="1dip"
|
||||||
android:layout_marginTop="-4dip"
|
android:layout_marginTop="8dip"
|
||||||
android:layout_centerHorizontal="true"
|
android:layout_marginBottom="8dip"
|
||||||
android:background="@android:drawable/divider_horizontal_dark"
|
android:background="@android:drawable/divider_horizontal_dark"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -88,17 +109,17 @@
|
|||||||
status. -->
|
status. -->
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="3dip"
|
android:layout_marginTop="3dip"
|
||||||
android:gravity="center"
|
android:layout_marginLeft="24dip"
|
||||||
|
android:gravity="left"
|
||||||
>
|
>
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/status1"
|
android:id="@+id/status1"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="17sp"
|
android:textSize="17sp"
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
@@ -109,7 +130,6 @@
|
|||||||
android:layout_marginLeft="5dip"
|
android:layout_marginLeft="5dip"
|
||||||
android:layout_marginRight="5dip"
|
android:layout_marginRight="5dip"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="17sp"
|
android:textSize="17sp"
|
||||||
/>
|
/>
|
||||||
<TextView
|
<TextView
|
||||||
@@ -118,7 +138,6 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentTop="true"
|
android:layout_alignParentTop="true"
|
||||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="17sp"
|
android:textSize="17sp"
|
||||||
android:drawablePadding="4dip"
|
android:drawablePadding="4dip"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -22,7 +22,8 @@ copy_from := \
|
|||||||
DroidSerif-Bold.ttf \
|
DroidSerif-Bold.ttf \
|
||||||
DroidSerif-Italic.ttf \
|
DroidSerif-Italic.ttf \
|
||||||
DroidSerif-BoldItalic.ttf \
|
DroidSerif-BoldItalic.ttf \
|
||||||
DroidSansMono.ttf
|
DroidSansMono.ttf \
|
||||||
|
Clockopia.ttf
|
||||||
|
|
||||||
ifneq ($(NO_FALLBACK_FONT),true)
|
ifneq ($(NO_FALLBACK_FONT),true)
|
||||||
copy_from += DroidSansFallback.ttf
|
copy_from += DroidSansFallback.ttf
|
||||||
|
|||||||
BIN
data/fonts/Clockopia.ttf
Normal file
BIN
data/fonts/Clockopia.ttf
Normal file
Binary file not shown.
Reference in New Issue
Block a user