From bd03600f8403816a1225bc8208da133896ab22b4 Mon Sep 17 00:00:00 2001 From: linyuh Date: Tue, 31 Oct 2017 10:29:45 -0700 Subject: Use DialpadTextView instead of TextView to show letters under each digit key. Bug: 30215380 Test: Manual PiperOrigin-RevId: 174055180 Change-Id: Iac6deb8f9dcb6f3e9da6dfd0d732f29cc34bb7f6 --- .../dialer/dialpadview/DialpadTextView.java | 4 +- .../android/dialer/dialpadview/DialpadView.java | 17 ++-- .../dialpadview/res/layout-land/dialpad_key.xml | 2 +- .../res/layout-land/dialpad_key_zero.xml | 48 ---------- .../dialer/dialpadview/res/layout/dialpad.xml | 100 +++++++++++---------- .../dialer/dialpadview/res/layout/dialpad_key.xml | 2 +- .../dialpadview/res/layout/dialpad_key_zero.xml | 34 ------- .../dialer/dialpadview/res/values-land/styles.xml | 4 +- .../dialer/dialpadview/res/values/attrs.xml | 1 - .../dialer/dialpadview/res/values/dimens.xml | 2 - .../dialer/dialpadview/res/values/styles.xml | 13 +-- 11 files changed, 69 insertions(+), 158 deletions(-) delete mode 100644 java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_zero.xml delete mode 100644 java/com/android/dialer/dialpadview/res/layout/dialpad_key_zero.xml (limited to 'java/com/android/dialer/dialpadview') diff --git a/java/com/android/dialer/dialpadview/DialpadTextView.java b/java/com/android/dialer/dialpadview/DialpadTextView.java index 5b1b7bb5d..b1eee4b9c 100644 --- a/java/com/android/dialer/dialpadview/DialpadTextView.java +++ b/java/com/android/dialer/dialpadview/DialpadTextView.java @@ -24,8 +24,8 @@ import android.util.AttributeSet; import android.widget.TextView; /** - * This is a custom text view intended only for rendering the numerals (and star and pound) on the - * dialpad. TextView has built in top/bottom padding to help account for ascenders/descenders. + * This is a custom text view intended for rendering text on the dialpad. TextView has built-in + * top/bottom padding to help account for ascenders/descenders. * *

Since vertical space is at a premium on the dialpad, particularly if the font size is scaled * to a larger default, for the dialpad we use this class to more precisely render characters diff --git a/java/com/android/dialer/dialpadview/DialpadView.java b/java/com/android/dialer/dialpadview/DialpadView.java index d70b0a6c2..5e79cb59f 100644 --- a/java/com/android/dialer/dialpadview/DialpadView.java +++ b/java/com/android/dialer/dialpadview/DialpadView.java @@ -223,29 +223,32 @@ public class DialpadView extends LinearLayout { if (mIsLandscape) { adjustKeyWidths(); } else { - adjustKeyHeightsInFirstRow(); + adjustDigitKeyHeights(); } } } /** - * Adjust key heights in the first row. + * Make the heights of all digit keys the same. * - *

A voice mail icon is shown under key "1", which makes its height different from other keys - * in the first row. + *

When the device is in portrait mode, we first find the maximum height among digit key + * layouts. Then for each key, we adjust the height of the layout containing letters/the voice + * mail icon to ensure the height of each digit key is the same. * *

This method should be called after the sizes of related layouts have been calculated by the * framework. */ - private void adjustKeyHeightsInFirstRow() { + private void adjustDigitKeyHeights() { + Assert.checkState(!mIsLandscape); + int maxHeight = 0; - for (int i = 1; i <= 3; i++) { + for (int i = 0; i <= 9; i++) { DialpadKeyButton dialpadKey = (DialpadKeyButton) findViewById(BUTTON_IDS[i]); LinearLayout keyLayout = (LinearLayout) dialpadKey.findViewById(R.id.dialpad_key_layout); maxHeight = Math.max(maxHeight, keyLayout.getHeight()); } - for (int i = 1; i <= 3; i++) { + for (int i = 0; i <= 9; i++) { DialpadKeyButton dialpadKey = (DialpadKeyButton) findViewById(BUTTON_IDS[i]); LinearLayout keyLayout = (LinearLayout) dialpadKey.findViewById(R.id.dialpad_key_layout); diff --git a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key.xml b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key.xml index 12f24ac52..769e2d8bb 100644 --- a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key.xml +++ b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key.xml @@ -39,7 +39,7 @@ android:id="@+id/dialpad_key_icon_or_letters_layout" style="@style/DialpadKeyInternalLayoutStyle"> - diff --git a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_zero.xml b/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_zero.xml deleted file mode 100644 index 714507202..000000000 --- a/java/com/android/dialer/dialpadview/res/layout-land/dialpad_key_zero.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad.xml index 5a14d14ea..0061d5497 100644 --- a/java/com/android/dialer/dialpadview/res/layout/dialpad.xml +++ b/java/com/android/dialer/dialpadview/res/layout/dialpad.xml @@ -16,84 +16,86 @@ - + android:layout_height="match_parent" + android:clipChildren="false" + android:orientation="vertical"> + + android:id="@+id/two" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:id="@+id/three" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + android:id="@+id/four" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:id="@+id/five" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:id="@+id/six" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + android:id="@+id/seven" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:id="@+id/eight" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:id="@+id/nine" + style="@style/DialpadKeyButtonStyle" + layout="@layout/dialpad_key"/> + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> - + + android:layout_width="match_parent" + android:layout_height="?attr/dialpad_end_key_spacing"/> diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_key.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_key.xml index 6c87cd2b4..bb9ec63f6 100644 --- a/java/com/android/dialer/dialpadview/res/layout/dialpad_key.xml +++ b/java/com/android/dialer/dialpadview/res/layout/dialpad_key.xml @@ -31,7 +31,7 @@ android:id="@+id/dialpad_key_icon_or_letters_layout" style="@style/DialpadKeyInternalLayoutStyle"> - diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_key_zero.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_key_zero.xml deleted file mode 100644 index 8d9c7b216..000000000 --- a/java/com/android/dialer/dialpadview/res/layout/dialpad_key_zero.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - diff --git a/java/com/android/dialer/dialpadview/res/values-land/styles.xml b/java/com/android/dialer/dialpadview/res/values-land/styles.xml index 012cfa2b2..de9ef1fbf 100644 --- a/java/com/android/dialer/dialpadview/res/values-land/styles.xml +++ b/java/com/android/dialer/dialpadview/res/values-land/styles.xml @@ -37,8 +37,6 @@ center - diff --git a/java/com/android/dialer/dialpadview/res/values/attrs.xml b/java/com/android/dialer/dialpadview/res/values/attrs.xml index d73946e65..972263883 100644 --- a/java/com/android/dialer/dialpadview/res/values/attrs.xml +++ b/java/com/android/dialer/dialpadview/res/values/attrs.xml @@ -25,7 +25,6 @@ - diff --git a/java/com/android/dialer/dialpadview/res/values/dimens.xml b/java/com/android/dialer/dialpadview/res/values/dimens.xml index 1e5880a3e..797d7e839 100644 --- a/java/com/android/dialer/dialpadview/res/values/dimens.xml +++ b/java/com/android/dialer/dialpadview/res/values/dimens.xml @@ -22,8 +22,6 @@ 36sp 64dp 3dp - - 1dp 13dp 34sp 24sp diff --git a/java/com/android/dialer/dialpadview/res/values/styles.xml b/java/com/android/dialer/dialpadview/res/values/styles.xml index 9d30021b9..653fe484f 100644 --- a/java/com/android/dialer/dialpadview/res/values/styles.xml +++ b/java/com/android/dialer/dialpadview/res/values/styles.xml @@ -32,10 +32,6 @@ center - - -- cgit v1.2.3