summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYorke Lee <yorkelee@google.com>2014-06-20 19:27:53 +0000
committerYorke Lee <yorkelee@google.com>2014-06-20 19:27:53 +0000
commit4aac9d221bd23ae582e44064ffcadc90d06b220d (patch)
tree99ba08066620c6cb6aba2c715cbf3eeb311cace2
parentc4a7bd9be54759105c0a9ea235ac5bda2c1b3f8f (diff)
downloadpackages_apps_PhoneCommon-4aac9d221bd23ae582e44064ffcadc90d06b220d.tar.gz
packages_apps_PhoneCommon-4aac9d221bd23ae582e44064ffcadc90d06b220d.tar.bz2
packages_apps_PhoneCommon-4aac9d221bd23ae582e44064ffcadc90d06b220d.zip
Revert "Update Emergency Dialer to match Dialer (5/5)."
This reverts commit c4a7bd9be54759105c0a9ea235ac5bda2c1b3f8f. Change-Id: I9a81515783de2ab534a611c777f10b9376ca3b7a
-rw-r--r--Android.mk7
-rw-r--r--AndroidManifest.xml21
-rw-r--r--res/anim/dialpad_slide_in_bottom.xml20
-rw-r--r--res/anim/dialpad_slide_in_right.xml21
-rw-r--r--res/anim/dialpad_slide_out_bottom.xml20
-rw-r--r--res/anim/dialpad_slide_out_right.xml21
-rw-r--r--res/drawable-hdpi/ic_dialpad_delete.pngbin805 -> 0 bytes
-rw-r--r--res/drawable-hdpi/ic_dialpad_vm.pngbin554 -> 0 bytes
-rw-r--r--res/drawable-hdpi/ic_overflow_menu.pngbin503 -> 0 bytes
-rw-r--r--res/drawable-mdpi/ic_dialpad_delete.pngbin669 -> 0 bytes
-rw-r--r--res/drawable-mdpi/ic_dialpad_vm.pngbin450 -> 0 bytes
-rw-r--r--res/drawable-mdpi/ic_overflow_menu.pngbin424 -> 0 bytes
-rw-r--r--res/drawable-xhdpi/ic_dialpad_delete.pngbin1110 -> 0 bytes
-rw-r--r--res/drawable-xhdpi/ic_dialpad_vm.pngbin672 -> 0 bytes
-rw-r--r--res/drawable-xhdpi/ic_overflow_menu.pngbin550 -> 0 bytes
-rw-r--r--res/drawable-xxhdpi/ic_dialpad_delete.pngbin1745 -> 0 bytes
-rw-r--r--res/drawable-xxhdpi/ic_dialpad_vm.pngbin1502 -> 0 bytes
-rw-r--r--res/drawable-xxhdpi/ic_overflow_menu.pngbin1384 -> 0 bytes
-rw-r--r--res/drawable/btn_dialpad_key.xml18
-rw-r--r--res/layout-land/dialpad_key.xml43
-rw-r--r--res/layout-land/dialpad_key_one.xml48
-rw-r--r--res/layout/dialpad.xml111
-rw-r--r--res/layout/dialpad_key.xml35
-rw-r--r--res/layout/dialpad_key_one.xml41
-rw-r--r--res/layout/dialpad_view.xml94
-rw-r--r--res/values-land/dimens.xml20
-rw-r--r--res/values/animation_constants.xml21
-rw-r--r--res/values/attrs.xml21
-rw-r--r--res/values/colors.xml26
-rw-r--r--res/values/dimens.xml55
-rw-r--r--res/values/strings.xml84
-rw-r--r--res/values/styles.xml83
-rw-r--r--src/com/android/phone/common/animation/AnimUtils.java108
-rw-r--r--src/com/android/phone/common/animation/AnimationListenerAdapter.java48
-rw-r--r--src/com/android/phone/common/dialpad/DialpadKeyButton.java229
-rw-r--r--src/com/android/phone/common/dialpad/DialpadTextView.java72
-rw-r--r--src/com/android/phone/common/dialpad/DialpadView.java259
-rw-r--r--src/com/android/phone/common/dialpad/DigitsEditText.java94
-rw-r--r--src/com/android/phone/common/util/ViewUtil.java97
39 files changed, 3 insertions, 1714 deletions
diff --git a/Android.mk b/Android.mk
index 3d1bb08..f01263e 100644
--- a/Android.mk
+++ b/Android.mk
@@ -13,12 +13,11 @@
# limitations under the License.
LOCAL_PATH:= $(call my-dir)
+
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(call all-java-files-under, src)
-LOCAL_RESOURCE_FILES := $(addprefix $(LOCAL_PATH)/, res)
-LOCAL_PACKAGE_NAME := com.android.phone.common
+LOCAL_MODULE := com.android.phone.shared
-include $(BUILD_PACKAGE)
-include $(CLEAR_VARS)
+include $(BUILD_STATIC_JAVA_LIBRARY)
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
deleted file mode 100644
index ff2935f..0000000
--- a/AndroidManifest.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- ~ Copyright (C) 2014 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
- -->
-
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.android.phone.common">
-</manifest>
-
diff --git a/res/anim/dialpad_slide_in_bottom.xml b/res/anim/dialpad_slide_in_bottom.xml
deleted file mode 100644
index 07748b5..0000000
--- a/res/anim/dialpad_slide_in_bottom.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-<translate xmlns:android="http://schemas.android.com/apk/res/android"
- android:interpolator="@android:interpolator/fast_out_slow_in"
- android:duration="@integer/dialpad_slide_in_duration"
- android:fromYDelta="67%p"
- android:toYDelta="0" />
diff --git a/res/anim/dialpad_slide_in_right.xml b/res/anim/dialpad_slide_in_right.xml
deleted file mode 100644
index d87e82a..0000000
--- a/res/anim/dialpad_slide_in_right.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (c) 2014, 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.
--->
-
-<translate xmlns:android="http://schemas.android.com/apk/res/android"
- android:fromXDelta="100%p"
- android:toXDelta="0"
- android:interpolator="@android:anim/decelerate_interpolator"
- android:duration="@integer/dialpad_slide_in_duration"/>
diff --git a/res/anim/dialpad_slide_out_bottom.xml b/res/anim/dialpad_slide_out_bottom.xml
deleted file mode 100644
index c80c8ed..0000000
--- a/res/anim/dialpad_slide_out_bottom.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-<translate xmlns:android="http://schemas.android.com/apk/res/android"
- android:interpolator="@android:interpolator/fast_out_linear_in"
- android:duration="@integer/dialpad_slide_out_duration"
- android:fromYDelta="0"
- android:toYDelta="80%p" />
diff --git a/res/anim/dialpad_slide_out_right.xml b/res/anim/dialpad_slide_out_right.xml
deleted file mode 100644
index a29c1a0..0000000
--- a/res/anim/dialpad_slide_out_right.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (c) 2014, 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.
--->
-
-<translate xmlns:android="http://schemas.android.com/apk/res/android"
- android:fromXDelta="0"
- android:toXDelta="100%"
- android:interpolator="@android:anim/decelerate_interpolator"
- android:duration="@integer/dialpad_slide_out_duration"/>
diff --git a/res/drawable-hdpi/ic_dialpad_delete.png b/res/drawable-hdpi/ic_dialpad_delete.png
deleted file mode 100644
index e588d90..0000000
--- a/res/drawable-hdpi/ic_dialpad_delete.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_dialpad_vm.png b/res/drawable-hdpi/ic_dialpad_vm.png
deleted file mode 100644
index 9501300..0000000
--- a/res/drawable-hdpi/ic_dialpad_vm.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_overflow_menu.png b/res/drawable-hdpi/ic_overflow_menu.png
deleted file mode 100644
index 262e9df..0000000
--- a/res/drawable-hdpi/ic_overflow_menu.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_dialpad_delete.png b/res/drawable-mdpi/ic_dialpad_delete.png
deleted file mode 100644
index 64a52d0..0000000
--- a/res/drawable-mdpi/ic_dialpad_delete.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_dialpad_vm.png b/res/drawable-mdpi/ic_dialpad_vm.png
deleted file mode 100644
index f32d8bf..0000000
--- a/res/drawable-mdpi/ic_dialpad_vm.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_overflow_menu.png b/res/drawable-mdpi/ic_overflow_menu.png
deleted file mode 100644
index 0e720dd..0000000
--- a/res/drawable-mdpi/ic_overflow_menu.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_dialpad_delete.png b/res/drawable-xhdpi/ic_dialpad_delete.png
deleted file mode 100644
index 87bc113..0000000
--- a/res/drawable-xhdpi/ic_dialpad_delete.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_dialpad_vm.png b/res/drawable-xhdpi/ic_dialpad_vm.png
deleted file mode 100644
index 5d87c50..0000000
--- a/res/drawable-xhdpi/ic_dialpad_vm.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_overflow_menu.png b/res/drawable-xhdpi/ic_overflow_menu.png
deleted file mode 100644
index 9156076..0000000
--- a/res/drawable-xhdpi/ic_overflow_menu.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_dialpad_delete.png b/res/drawable-xxhdpi/ic_dialpad_delete.png
deleted file mode 100644
index 186508a..0000000
--- a/res/drawable-xxhdpi/ic_dialpad_delete.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_dialpad_vm.png b/res/drawable-xxhdpi/ic_dialpad_vm.png
deleted file mode 100644
index ac20fab..0000000
--- a/res/drawable-xxhdpi/ic_dialpad_vm.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_overflow_menu.png b/res/drawable-xxhdpi/ic_overflow_menu.png
deleted file mode 100644
index 92526f5..0000000
--- a/res/drawable-xxhdpi/ic_overflow_menu.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/btn_dialpad_key.xml b/res/drawable/btn_dialpad_key.xml
deleted file mode 100644
index a4cb088..0000000
--- a/res/drawable/btn_dialpad_key.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 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.
--->
-
-<ripple xmlns:android="http://schemas.android.com/apk/res/android"
- android:color="?android:attr/colorControlHighlight" /> \ No newline at end of file
diff --git a/res/layout-land/dialpad_key.xml b/res/layout-land/dialpad_key.xml
deleted file mode 100644
index 29e6bf1..0000000
--- a/res/layout-land/dialpad_key.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-
-<!-- A layout representing a single key in the dialpad -->
-<com.android.phone.common.dialpad.DialpadKeyButton
- xmlns:android="http://schemas.android.com/apk/res/android"
- style="@style/DialpadKeyButtonStyle" >
-
- <LinearLayout style="@style/DialpadKeyInternalLayoutStyle"
- android:orientation="horizontal"
- android:baselineAligned="false"
- android:layout_gravity="right|center_vertical" >
-
- <!-- Note in the referenced styles that we assign hard widths to these components
- because we want them to line up vertically when we arrange them in an MxN grid -->
-
- <com.android.phone.common.dialpad.DialpadTextView
- android:id="@+id/dialpad_key_number"
- style="@style/DialpadKeyNumberStyle"
- android:layout_gravity="right"
- android:layout_marginBottom="0dp"
- android:layout_marginRight="@dimen/dialpad_key_margin_right" />
-
- <TextView
- android:id="@+id/dialpad_key_letters"
- style="@style/DialpadKeyLettersStyle"
- android:layout_width="@dimen/dialpad_key_text_width"
- android:layout_gravity="right|bottom" />
- </LinearLayout>
-</com.android.phone.common.dialpad.DialpadKeyButton>
diff --git a/res/layout-land/dialpad_key_one.xml b/res/layout-land/dialpad_key_one.xml
deleted file mode 100644
index 2890fd1..0000000
--- a/res/layout-land/dialpad_key_one.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2006 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.
--->
-<com.android.phone.common.dialpad.DialpadKeyButton
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/one"
- style="@style/DialpadKeyButtonStyle">
- <LinearLayout
- style="@style/DialpadKeyInternalLayoutStyle"
- android:orientation="horizontal"
- android:baselineAligned="false"
- android:layout_gravity="right|center_vertical" >
- <com.android.phone.common.dialpad.DialpadTextView
- android:id="@+id/dialpad_key_number"
- style="@style/DialpadKeyNumberStyle"
- android:layout_gravity="right"
- android:layout_marginBottom="0dp"
- android:layout_marginRight="@dimen/dialpad_key_margin_right" />
- <RelativeLayout
- android:layout_width="@dimen/dialpad_key_text_width"
- android:layout_height="wrap_content"
- android:layout_gravity="right|bottom" >
- <ImageView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:paddingTop="@dimen/dialpad_voicemail_icon_padding_top"
- android:id="@+id/dialpad_key_voicemail"
- android:src="@drawable/ic_dialpad_vm"
- android:scaleType="fitCenter"
- android:layout_centerInParent="true"
- android:tint="@color/dialpad_secondary_text_color" />
- <!-- Place empty text view so vertical height is same as other dialpad keys. -->
- <TextView style="@style/DialpadKeyLettersStyle" />
- </RelativeLayout>
- </LinearLayout>
-</com.android.phone.common.dialpad.DialpadKeyButton>
diff --git a/res/layout/dialpad.xml b/res/layout/dialpad.xml
deleted file mode 100644
index 1fc1f6c..0000000
--- a/res/layout/dialpad.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2006 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.
--->
-
-<!-- Dialpad in the Phone app. -->
-<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/dialpad"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical"
- android:clipChildren="false">
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="horizontal">
- <Space style="@style/DialpadSpaceStyle" />
- <include layout="@layout/dialpad_key_one" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/two"
- style="@style/DialpadKeyButtonStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/three"
- style="@style/DialpadKeyButtonStyle" />
- <Space style="@style/DialpadSpaceStyle" />
- </LinearLayout>
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="horizontal">
- <Space style="@style/DialpadSpaceStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/four"
- style="@style/DialpadKeyButtonStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/five"
- style="@style/DialpadKeyButtonStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/six"
- style="@style/DialpadKeyButtonStyle" />
- <Space style="@style/DialpadSpaceStyle" />
- </LinearLayout>
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="horizontal">
- <Space style="@style/DialpadSpaceStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/seven"
- style="@style/DialpadKeyButtonStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/eight"
- style="@style/DialpadKeyButtonStyle" />
- <include layout="@layout/dialpad_key"
- android:id="@+id/nine"
- style="@style/DialpadKeyButtonStyle" />
- <Space style="@style/DialpadSpaceStyle" />
- </LinearLayout>
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="horizontal">
- <Space style="@style/DialpadSpaceStyle" />
- <com.android.phone.common.dialpad.DialpadKeyButton
- android:id="@+id/star"
- style="@style/DialpadKeyButtonStyle">
- <LinearLayout
- style="@style/DialpadKeyInternalLayoutStyle">
- <com.android.phone.common.dialpad.DialpadTextView
- android:id="@+id/dialpad_key_number"
- style="@style/DialpadKeyStarStyle" />
- </LinearLayout>
- </com.android.phone.common.dialpad.DialpadKeyButton>
- <include layout="@layout/dialpad_key"
- android:id="@+id/zero"
- style="@style/DialpadKeyButtonStyle" />
- <com.android.phone.common.dialpad.DialpadKeyButton
- android:id="@+id/pound"
- style="@style/DialpadKeyButtonStyle">
- <LinearLayout
- style="@style/DialpadKeyInternalLayoutStyle">
- <com.android.phone.common.dialpad.DialpadTextView
- android:id="@id/dialpad_key_number"
- style="@style/DialpadKeyPoundStyle" />
- </LinearLayout>
- </com.android.phone.common.dialpad.DialpadKeyButton>
- <Space style="@style/DialpadSpaceStyle" />
- </LinearLayout>
- <Space
- android:layout_width="match_parent"
- android:layout_height="@dimen/dialpad_bottom_key_height" />
-</LinearLayout>
diff --git a/res/layout/dialpad_key.xml b/res/layout/dialpad_key.xml
deleted file mode 100644
index d5f47a4..0000000
--- a/res/layout/dialpad_key.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-
-<!-- A layout representing a single key in the dialpad -->
-<com.android.phone.common.dialpad.DialpadKeyButton
- xmlns:android="http://schemas.android.com/apk/res/android"
- style="@style/DialpadKeyButtonStyle" >
-
- <LinearLayout style="@style/DialpadKeyInternalLayoutStyle">
-
- <!-- Note in the referenced styles that we assign hard widths to these components
- because we want them to line up vertically when we arrange them in an MxN grid -->
-
- <com.android.phone.common.dialpad.DialpadTextView
- android:id="@+id/dialpad_key_number"
- style="@style/DialpadKeyNumberStyle" />
-
- <TextView
- android:id="@+id/dialpad_key_letters"
- style="@style/DialpadKeyLettersStyle" />
- </LinearLayout>
-</com.android.phone.common.dialpad.DialpadKeyButton>
diff --git a/res/layout/dialpad_key_one.xml b/res/layout/dialpad_key_one.xml
deleted file mode 100644
index dfb444a..0000000
--- a/res/layout/dialpad_key_one.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2006 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.
--->
-<com.android.phone.common.dialpad.DialpadKeyButton
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/one"
- style="@style/DialpadKeyButtonStyle">
- <LinearLayout
- style="@style/DialpadKeyInternalLayoutStyle">
- <com.android.phone.common.dialpad.DialpadTextView
- android:id="@+id/dialpad_key_number"
- style="@style/DialpadKeyNumberStyle" />
- <RelativeLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content" >
- <ImageView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:paddingTop="@dimen/dialpad_voicemail_icon_padding_top"
- android:id="@+id/dialpad_key_voicemail"
- android:src="@drawable/ic_dialpad_vm"
- android:scaleType="fitCenter"
- android:layout_centerInParent="true"
- android:tint="@color/dialpad_secondary_text_color" />
- <!-- Place empty text view so vertical height is same as other dialpad keys. -->
- <TextView style="@style/DialpadKeyLettersStyle" />
- </RelativeLayout>
- </LinearLayout>
-</com.android.phone.common.dialpad.DialpadKeyButton>
diff --git a/res/layout/dialpad_view.xml b/res/layout/dialpad_view.xml
deleted file mode 100644
index 68de527..0000000
--- a/res/layout/dialpad_view.xml
+++ /dev/null
@@ -1,94 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 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.
--->
-<view class="com.android.phone.common.dialpad.DialpadView"
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/dialpad_view"
- android:layout_height="match_parent"
- android:layout_width="match_parent"
- android:layout_gravity="bottom"
- android:orientation="vertical"
- android:layoutDirection="ltr"
- android:background="@color/background_dialpad"
- android:clickable="true" >
-
- <!-- Text field and possibly soft menu button above the keypad where
- the digits are displayed. -->
- <LinearLayout
- android:id="@+id/digits_container"
- android:layout_width="match_parent"
- android:layout_height="@dimen/dialpad_digits_height"
- android:orientation="horizontal">
-
- <ImageButton android:id="@+id/dialpad_overflow"
- android:background="@drawable/btn_dialpad_key"
- android:src="@drawable/ic_overflow_menu"
- android:tint="@color/dialpad_icon_tint"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:paddingLeft="@dimen/dialpad_digits_padding"
- android:paddingRight="@dimen/dialpad_digits_menu_right_padding"
- android:contentDescription="@string/description_dialpad_overflow"
- android:gravity="center"
- android:visibility="gone" />
-
- <view class="com.android.phone.common.dialpad.DigitsEditText"
- android:id="@+id/digits"
- android:layout_width="0dp"
- android:layout_height="match_parent"
- android:scrollHorizontally="true"
- android:singleLine="true"
- android:layout_weight="1"
- android:gravity="center"
- android:background="@android:color/transparent"
- android:maxLines="1"
- android:textSize="@dimen/dialpad_digits_text_size"
- android:freezesText="true"
- android:focusableInTouchMode="true"
- android:cursorVisible="false"
- android:textColor="@color/dialpad_digits_text_color"
- android:textCursorDrawable="@null"
- android:fontFamily="sans-serif-light"
- android:textStyle="normal" />
-
- <ImageButton
- android:id="@+id/deleteButton"
- android:background="@drawable/btn_dialpad_key"
- android:tint="@color/dialpad_icon_tint"
- android:paddingLeft="@dimen/dialpad_digits_padding"
- android:paddingRight="@dimen/dialpad_digits_padding"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:state_enabled="false"
- android:contentDescription="@string/description_delete_button"
- android:src="@drawable/ic_dialpad_delete" />
- </LinearLayout>
-
- <View
- android:layout_width="match_parent"
- android:layout_height="1dp"
- android:background="#e3e3e3" />
-
- <Space
- android:layout_width="match_parent"
- android:layout_height="14dp" />
-
- <include layout="@layout/dialpad" />
-
- <Space
- android:layout_width="match_parent"
- android:layout_height="8dp" />
-
-</view>
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
deleted file mode 100644
index 96547f0..0000000
--- a/res/values-land/dimens.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2014 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.
- -->
-<resources>
- <dimen name="dialpad_key_margin_right">10dp</dimen>
- <dimen name="dialpad_key_text_width">25dp</dimen>
-</resources>
diff --git a/res/values/animation_constants.xml b/res/values/animation_constants.xml
deleted file mode 100644
index f8523e3..0000000
--- a/res/values/animation_constants.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- ~ Copyright (C) 2014 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
- -->
-<resources>
- <integer name="floating_action_button_animation_duration">250</integer>
- <integer name="dialpad_slide_in_duration">532</integer>
- <integer name="dialpad_slide_out_duration">257</integer>
-</resources>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
deleted file mode 100644
index 09620a8..0000000
--- a/res/values/attrs.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<!--
- ~ Copyright (C) 2012 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.
- -->
-
-<resources>
- <declare-styleable name="Dialpad">
- <attr name="dialpad_key_button_touch_tint" format="color"/>
- </declare-styleable>
-</resources>
diff --git a/res/values/colors.xml b/res/values/colors.xml
deleted file mode 100644
index d38428c..0000000
--- a/res/values/colors.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<!--
- ~ Copyright (C) 2012 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
- -->
-
-<resources>
- <!-- Colors for the dialpad -->
- <color name="background_dialpad">#fcfcfc</color>
- <color name="background_dialpad_pressed">#ececec</color>
- <color name="dialpad_primary_text_color">#26c6da</color>
- <color name="dialpad_secondary_text_color">#999999</color>
- <color name="dialpad_digits_text_color">#666666</color>
- <color name="dialpad_separator_line_color">#dadada</color>
- <color name="dialpad_icon_tint">#b3b3b3</color>
-</resources>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
deleted file mode 100644
index d681d9d..0000000
--- a/res/values/dimens.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<!--
- ~ Copyright (C) 2012 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
- -->
-
-<resources>
- <!-- Text dimensions for dialpad keys -->
- <dimen name="dialpad_key_numbers_size">36sp</dimen>
- <dimen name="dialpad_key_letters_size">8sp</dimen>
- <dimen name="dialpad_key_pound_size">23sp</dimen>
- <dimen name="dialpad_key_star_size">28sp</dimen>
- <dimen name="dialpad_key_height">64dp</dimen>
- <dimen name="dialpad_key_number_margin_bottom">2dp</dimen>
- <dimen name="dialpad_symbol_margin_bottom">13dp</dimen>
- <!-- The bottom row of the dialpad is slightly taller to account for the dial button -->
- <dimen name="dialpad_bottom_key_height">65dp</dimen>
- <dimen name="dialpad_key_plus_size">18sp</dimen>
- <dimen name="dialpad_horizontal_padding">5dp</dimen>
- <dimen name="dialpad_digits_text_size">36dp</dimen>
- <dimen name="dialpad_digits_height">64dp</dimen>
- <dimen name="dialpad_digits_padding">16dp</dimen>
- <dimen name="dialpad_digits_menu_right_padding">10dp</dimen>
- <dimen name="dialpad_center_margin">3dp</dimen>
- <dimen name="dialpad_button_margin">2dp</dimen>
- <dimen name="dialpad_voicemail_icon_padding_top">2dp</dimen>
- <dimen name="dialpad_key_button_translate_y">100dp</dimen>
- <!-- Height of the floating action button -->
- <dimen name="floating_action_button_height">56dp</dimen>
- <!-- Width of the floating action button -->
- <dimen name="floating_action_button_width">56dp</dimen>
- <!-- Corner radius of the floating action button -->
- <dimen name="floating_action_button_radius">28dp</dimen>
- <!-- Z translation of the floating action button -->
- <dimen name="floating_action_button_translation_z">3dp</dimen>
- <!-- Padding to be applied to the bottom of lists to make space for the floating action
- button -->
- <dimen name="floating_action_button_list_bottom_padding">88dp</dimen>
- <!-- Right margin of the floating action button -->
- <dimen name="floating_action_button_margin_right">16dp</dimen>
- <!-- Bottom margin of the floating action button -->
- <dimen name="floating_action_button_margin_bottom">16dp</dimen>
- <!-- Offset of bottom margin of the floating action button used when dialpad is up -->
- <dimen name="floating_action_button_dialpad_margin_bottom_offset">4dp</dimen>
-</resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
deleted file mode 100644
index bfa63a9..0000000
--- a/res/values/strings.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- ~ Copyright (C) 2012 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
- -->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <!-- The digit to be displayed on the 0 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_0_number">0</string>
- <!-- The digit to be displayed on the 1 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_1_number">1</string>
- <!-- The digit to be displayed on the 2 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_2_number">2</string>
- <!-- The digit to be displayed on the 3 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_3_number">3</string>
- <!-- The digit to be displayed on the 4 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_4_number">4</string>
- <!-- The digit to be displayed on the 5 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_5_number">5</string>
- <!-- The digit to be displayed on the 6 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_6_number">6</string>
- <!-- The digit to be displayed on the 7 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_7_number">7</string>
- <!-- The digit to be displayed on the 8 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_8_number">8</string>
- <!-- The digit to be displayed on the 9 key of the dialpad [CHAR LIMIT=1]-->
- <string name="dialpad_9_number">9</string>
- <!-- Do not translate. -->
- <string name="dialpad_star_number">*</string>
- <!-- Do not translate. -->
- <string name="dialpad_pound_number">#</string>
-
- <!-- Do not translate. -->
- <string name="dialpad_0_letters">+</string>
- <!-- Do not translate. -->
- <string name="dialpad_1_letters"></string>
- <!-- Do not translate. -->
- <string name="dialpad_2_letters">ABC</string>
- <!-- Do not translate. -->
- <string name="dialpad_3_letters">DEF</string>
- <!-- Do not translate. -->
- <string name="dialpad_4_letters">GHI</string>
- <!-- Do not translate. -->
- <string name="dialpad_5_letters">JKL</string>
- <!-- Do not translate. -->
- <string name="dialpad_6_letters">MNO</string>
- <!-- Do not translate. -->
- <string name="dialpad_7_letters">PQRS</string>
- <!-- Do not translate. -->
- <string name="dialpad_8_letters">TUV</string>
- <!-- Do not translate. -->
- <string name="dialpad_9_letters">WXYZ</string>
- <!-- Do not translate. -->
- <string name="dialpad_star_letters"></string>
- <!-- Do not translate. -->
- <string name="dialpad_pound_letters"></string>
-
- <!-- String describing the overflow menu button in the dialpad. -->
- <string name="description_dialpad_overflow">More options</string>
-
- <!-- String describing the Delete/Backspace ImageButton.
- Used by AccessibilityService to announce the purpose of the button.
- -->
- <string name="description_delete_button">backspace</string>
-
- <!-- String describing the button used to add a plus (+) symbol to the dialpad -->
- <string name="description_image_button_plus">plus</string>
-
- <!-- String describing the Voicemail ImageButton.
- Used by AccessibilityService to announce the purpose of the button.
- -->
- <string name="description_voicemail_button">voicemail</string>
-
-</resources>
diff --git a/res/values/styles.xml b/res/values/styles.xml
deleted file mode 100644
index 5297aa1..0000000
--- a/res/values/styles.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<!--
- ~ Copyright (C) 2012 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
- -->
-
-<resources>
- <style name="DialpadSpaceStyle">
- <item name="android:layout_width">0dp</item>
- <item name="android:layout_height">match_parent</item>
- <item name="android:layout_weight">3</item>
- </style>
-
- <style name="DialpadKeyNumberStyle">
- <item name="android:textColor">@color/dialpad_primary_text_color</item>
- <item name="android:textSize">@dimen/dialpad_key_numbers_size</item>
- <item name="android:fontFamily">sans-serif-light</item>
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- <item name="android:layout_marginBottom">@dimen/dialpad_key_number_margin_bottom</item>
- <item name="android:gravity">center</item>
- </style>
-
- <style name="DialpadKeyStarStyle">
- <item name="android:textColor">@color/dialpad_secondary_text_color</item>
- <item name="android:textSize">@dimen/dialpad_key_star_size</item>
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- <item name="android:layout_marginBottom">@dimen/dialpad_symbol_margin_bottom</item>
- <item name="android:gravity">center</item>
- </style>
-
- <style name="DialpadKeyPoundStyle">
- <item name="android:textColor">@color/dialpad_secondary_text_color</item>
- <item name="android:textSize">@dimen/dialpad_key_pound_size</item>
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- <item name="android:layout_marginBottom">@dimen/dialpad_symbol_margin_bottom</item>
- <item name="android:gravity">center</item>
- </style>
-
- <style name="DialpadKeyLettersStyle">
- <item name="android:textColor">@color/dialpad_secondary_text_color</item>
- <item name="android:textSize">@dimen/dialpad_key_letters_size</item>
- <item name="android:fontFamily">sans-serif-medium</item>
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- <item name="android:gravity">center_horizontal</item>
- </style>
-
- <style name="DialpadKeyButtonStyle">
- <item name="android:soundEffectsEnabled">false</item>
- <item name="android:clickable">true</item>
- <item name="android:layout_width">0dp</item>
- <item name="android:layout_height">match_parent</item>
- <item name="android:layout_weight">13</item>
- <item name="android:minHeight">@dimen/dialpad_key_height</item>
- <item name="android:background">@drawable/btn_dialpad_key</item>
- <item name="android:focusable">true</item>
- </style>
-
- <style name="DialpadBottomKeyButtonStyle" parent="DialpadKeyButtonStyle">
- <item name="android:layout_height">@dimen/dialpad_bottom_key_height</item>
- </style>
-
- <style name="DialpadKeyInternalLayoutStyle">
- <item name="android:layout_width">wrap_content</item>
- <item name="android:layout_height">wrap_content</item>
- <item name="android:layout_gravity">center</item>
- <item name="android:gravity">center</item>
- <item name="android:orientation">vertical</item>
- </style>
-</resources>
diff --git a/src/com/android/phone/common/animation/AnimUtils.java b/src/com/android/phone/common/animation/AnimUtils.java
deleted file mode 100644
index 35ac107..0000000
--- a/src/com/android/phone/common/animation/AnimUtils.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2014 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.phone.common.animation;
-
-import android.animation.Animator;
-import android.animation.AnimatorListenerAdapter;
-import android.view.View;
-import android.view.ViewPropertyAnimator;
-import android.view.animation.Interpolator;
-import android.view.animation.PathInterpolator;
-
-public class AnimUtils {
- public static final int DEFAULT_DURATION = -1;
- public static final Interpolator EASE_IN = new PathInterpolator(0.0f, 0.0f, 0.2f, 1.0f);
- public static final Interpolator EASE_OUT = new PathInterpolator(0.4f, 0.0f, 1.0f, 1.0f);
- public static final Interpolator EASE_OUT_EASE_IN = new PathInterpolator(0.4f, 0, 0.2f, 1);
-
- public static class AnimationCallback {
- public void onAnimationEnd() {}
- public void onAnimationCancel() {}
- }
-
- public static void crossFadeViews(View fadeIn, View fadeOut, int duration) {
- fadeIn(fadeIn, duration);
- fadeOut(fadeOut, duration);
- }
-
- public static void fadeOut(View fadeOut, int duration) {
- fadeOut(fadeOut, duration, null);
- }
-
- public static void fadeOut(final View fadeOut, int duration, final AnimationCallback callback) {
- fadeOut.setAlpha(1);
- final ViewPropertyAnimator animator = fadeOut.animate();
- animator.cancel();
- animator.alpha(0).withLayer().setListener(new AnimatorListenerAdapter() {
- @Override
- public void onAnimationEnd(Animator animation) {
- fadeOut.setVisibility(View.GONE);
- if (callback != null) {
- callback.onAnimationEnd();
- }
- }
-
- @Override
- public void onAnimationCancel(Animator animation) {
- fadeOut.setVisibility(View.GONE);
- fadeOut.setAlpha(0);
- if (callback != null) {
- callback.onAnimationCancel();
- }
- }
- });
- if (duration != DEFAULT_DURATION) {
- animator.setDuration(duration);
- }
- animator.start();
- }
-
- public static void fadeIn(View fadeIn, int duration) {
- fadeIn(fadeIn, duration, null);
- }
-
- public static void fadeIn(final View fadeIn, int duration, final AnimationCallback callback) {
- fadeIn.setAlpha(0);
- final ViewPropertyAnimator animator = fadeIn.animate();
- animator.cancel();
- animator.alpha(1).withLayer().setListener(new AnimatorListenerAdapter() {
- @Override
- public void onAnimationStart(Animator animation) {
- fadeIn.setVisibility(View.VISIBLE);
- }
-
- @Override
- public void onAnimationCancel(Animator animation) {
- fadeIn.setAlpha(1);
- if (callback != null) {
- callback.onAnimationCancel();
- }
- }
-
- @Override
- public void onAnimationEnd(Animator animation) {
- if (callback != null) {
- callback.onAnimationEnd();
- }
- }
- });
- if (duration != DEFAULT_DURATION) {
- animator.setDuration(duration);
- }
- animator.start();
- }
-}
diff --git a/src/com/android/phone/common/animation/AnimationListenerAdapter.java b/src/com/android/phone/common/animation/AnimationListenerAdapter.java
deleted file mode 100644
index d8f3fa6..0000000
--- a/src/com/android/phone/common/animation/AnimationListenerAdapter.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2014 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.phone.common.animation;
-
-import android.view.animation.Animation;
-import android.view.animation.Animation.AnimationListener;
-
-/**
- * Provides empty implementations of the methods in {@link AnimationListener}
- * for convenience reasons.
- */
-public class AnimationListenerAdapter implements AnimationListener {
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void onAnimationStart(Animation animation) {
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void onAnimationEnd(Animation animation) {
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public void onAnimationRepeat(Animation animation) {
- }
-}
diff --git a/src/com/android/phone/common/dialpad/DialpadKeyButton.java b/src/com/android/phone/common/dialpad/DialpadKeyButton.java
deleted file mode 100644
index 4e3781c..0000000
--- a/src/com/android/phone/common/dialpad/DialpadKeyButton.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- * Copyright (C) 2012 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.phone.common.dialpad;
-
-import android.content.Context;
-import android.graphics.Rect;
-import android.os.Bundle;
-import android.util.AttributeSet;
-import android.view.MotionEvent;
-import android.view.View;
-import android.view.ViewConfiguration;
-import android.view.accessibility.AccessibilityEvent;
-import android.view.accessibility.AccessibilityManager;
-import android.view.accessibility.AccessibilityNodeInfo;
-import android.widget.FrameLayout;
-
-/**
- * Custom class for dialpad buttons.
- * <p>
- * When touch exploration mode is enabled for accessibility, this class
- * implements the lift-to-type interaction model:
- * <ul>
- * <li>Hovering over the button will cause it to gain accessibility focus
- * <li>Removing the hover pointer while inside the bounds of the button will
- * perform a click action
- * <li>If long-click is supported, hovering over the button for a longer period
- * of time will switch to the long-click action
- * <li>Moving the hover pointer outside of the bounds of the button will restore
- * to the normal click action
- * <ul>
- */
-public class DialpadKeyButton extends FrameLayout {
- /** Timeout before switching to long-click accessibility mode. */
- private static final int LONG_HOVER_TIMEOUT = ViewConfiguration.getLongPressTimeout() * 2;
-
- /** Accessibility manager instance used to check touch exploration state. */
- private AccessibilityManager mAccessibilityManager;
-
- /** Bounds used to filter HOVER_EXIT events. */
- private Rect mHoverBounds = new Rect();
-
- /** Whether this view is currently in the long-hover state. */
- private boolean mLongHovered;
-
- /** Alternate content description for long-hover state. */
- private CharSequence mLongHoverContentDesc;
-
- /** Backup of standard content description. Used for accessibility. */
- private CharSequence mBackupContentDesc;
-
- /** Backup of clickable property. Used for accessibility. */
- private boolean mWasClickable;
-
- /** Backup of long-clickable property. Used for accessibility. */
- private boolean mWasLongClickable;
-
- /** Runnable used to trigger long-click mode for accessibility. */
- private Runnable mLongHoverRunnable;
-
- public interface OnPressedListener {
- public void onPressed(View view, boolean pressed);
- }
-
- private OnPressedListener mOnPressedListener;
-
- public void setOnPressedListener(OnPressedListener onPressedListener) {
- mOnPressedListener = onPressedListener;
- }
-
- public DialpadKeyButton(Context context, AttributeSet attrs) {
- super(context, attrs);
- initForAccessibility(context);
- }
-
- public DialpadKeyButton(Context context, AttributeSet attrs, int defStyle) {
- super(context, attrs, defStyle);
- initForAccessibility(context);
- }
-
- private void initForAccessibility(Context context) {
- mAccessibilityManager = (AccessibilityManager) context.getSystemService(
- Context.ACCESSIBILITY_SERVICE);
- }
-
- public void setLongHoverContentDescription(CharSequence contentDescription) {
- mLongHoverContentDesc = contentDescription;
-
- if (mLongHovered) {
- super.setContentDescription(mLongHoverContentDesc);
- }
- }
-
- @Override
- public void setContentDescription(CharSequence contentDescription) {
- if (mLongHovered) {
- mBackupContentDesc = contentDescription;
- } else {
- super.setContentDescription(contentDescription);
- }
- }
-
- @Override
- public void setPressed(boolean pressed) {
- super.setPressed(pressed);
- if (mOnPressedListener != null) {
- mOnPressedListener.onPressed(this, pressed);
- }
- }
-
- @Override
- public void onSizeChanged(int w, int h, int oldw, int oldh) {
- super.onSizeChanged(w, h, oldw, oldh);
-
- mHoverBounds.left = getPaddingLeft();
- mHoverBounds.right = w - getPaddingRight();
- mHoverBounds.top = getPaddingTop();
- mHoverBounds.bottom = h - getPaddingBottom();
- }
-
- @Override
- public boolean performAccessibilityAction(int action, Bundle arguments) {
- if (action == AccessibilityNodeInfo.ACTION_CLICK) {
- simulateClickForAccessibility();
- return true;
- }
-
- return super.performAccessibilityAction(action, arguments);
- }
-
- @Override
- public boolean onHoverEvent(MotionEvent event) {
- // When touch exploration is turned on, lifting a finger while inside
- // the button's hover target bounds should perform a click action.
- if (mAccessibilityManager.isEnabled()
- && mAccessibilityManager.isTouchExplorationEnabled()) {
- switch (event.getActionMasked()) {
- case MotionEvent.ACTION_HOVER_ENTER:
- // Lift-to-type temporarily disables double-tap activation.
- mWasClickable = isClickable();
- mWasLongClickable = isLongClickable();
- if (mWasLongClickable && mLongHoverContentDesc != null) {
- if (mLongHoverRunnable == null) {
- mLongHoverRunnable = new Runnable() {
- @Override
- public void run() {
- setLongHovered(true);
- announceForAccessibility(mLongHoverContentDesc);
- }
- };
- }
- postDelayed(mLongHoverRunnable, LONG_HOVER_TIMEOUT);
- }
-
- setClickable(false);
- setLongClickable(false);
- break;
- case MotionEvent.ACTION_HOVER_EXIT:
- if (mHoverBounds.contains((int) event.getX(), (int) event.getY())) {
- if (mLongHovered) {
- performLongClick();
- } else {
- simulateClickForAccessibility();
- }
- }
-
- cancelLongHover();
- setClickable(mWasClickable);
- setLongClickable(mWasLongClickable);
- break;
- }
- }
-
- return super.onHoverEvent(event);
- }
-
- /**
- * When accessibility is on, simulate press and release to preserve the
- * semantic meaning of performClick(). Required for Braille support.
- */
- private void simulateClickForAccessibility() {
- // Checking the press state prevents double activation.
- if (isPressed()) {
- return;
- }
-
- setPressed(true);
-
- // Stay consistent with performClick() by sending the event after
- // setting the pressed state but before performing the action.
- sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);
-
- setPressed(false);
- }
-
- private void setLongHovered(boolean enabled) {
- if (mLongHovered != enabled) {
- mLongHovered = enabled;
-
- // Switch between normal and alternate description, if available.
- if (enabled) {
- mBackupContentDesc = getContentDescription();
- super.setContentDescription(mLongHoverContentDesc);
- } else {
- super.setContentDescription(mBackupContentDesc);
- }
- }
- }
-
- private void cancelLongHover() {
- if (mLongHoverRunnable != null) {
- removeCallbacks(mLongHoverRunnable);
- }
- setLongHovered(false);
- }
-}
diff --git a/src/com/android/phone/common/dialpad/DialpadTextView.java b/src/com/android/phone/common/dialpad/DialpadTextView.java
deleted file mode 100644
index 2802b32..0000000
--- a/src/com/android/phone/common/dialpad/DialpadTextView.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright (C) 2014 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.phone.common.dialpad;
-
-import android.content.Context;
-import android.graphics.Canvas;
-import android.graphics.Paint;
-import android.graphics.Rect;
-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.
- *
- * 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 according
- * to the precise amount of space they need.
- */
-public class DialpadTextView extends TextView {
- private Rect mTextBounds = new Rect();
- private String mTextStr;
-
- public DialpadTextView(Context context, AttributeSet attrs) {
- super(context, attrs);
- }
-
- /**
- * Draw the text to fit within the height/width which have been specified during measurement.
- */
- @Override
- public void draw(Canvas canvas) {
- Paint paint = getPaint();
-
- // Without this, the draw does not respect the style's specified text color.
- paint.setColor(getCurrentTextColor());
-
- // The text bounds values are relative and can be negative,, so rather than specifying a
- // standard origin such as 0, 0, we need to use negative of the left/top bounds.
- // For example, the bounds may be: Left: 11, Right: 37, Top: -77, Bottom: 0
- canvas.drawText(mTextStr, -mTextBounds.left, -mTextBounds.top, paint);
- }
-
- /**
- * Calculate the pixel-accurate bounds of the text when rendered, and use that to specify the
- * height and width.
- */
- @Override
- protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);
- mTextStr = getText().toString();
- getPaint().getTextBounds(mTextStr, 0, mTextStr.length(), mTextBounds);
-
- int width = resolveSize(mTextBounds.width(), widthMeasureSpec);
- int height = resolveSize(mTextBounds.height(), heightMeasureSpec);
- setMeasuredDimension(width, height);
- }
-}
diff --git a/src/com/android/phone/common/dialpad/DialpadView.java b/src/com/android/phone/common/dialpad/DialpadView.java
deleted file mode 100644
index 6f9dd41..0000000
--- a/src/com/android/phone/common/dialpad/DialpadView.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
- * Copyright (C) 2014 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.phone.common.dialpad;
-
-import android.animation.Animator;
-import android.animation.AnimatorListenerAdapter;
-import android.content.Context;
-import android.content.res.ColorStateList;
-import android.content.res.Resources;
-import android.content.res.TypedArray;
-import android.graphics.PorterDuff;
-import android.graphics.drawable.RippleDrawable;
-import android.util.AttributeSet;
-import android.util.Log;
-import android.view.MotionEvent;
-import android.view.View;
-import android.widget.EditText;
-import android.widget.ImageButton;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-
-import com.android.phone.common.R;
-import com.android.phone.common.animation.AnimUtils;
-
-/**
- * View that displays a twelve-key phone dialpad.
- */
-public class DialpadView extends LinearLayout {
- private static final String TAG = DialpadView.class.getSimpleName();
-
- private static final double DELAY_MULTIPLIER = 0.66;
- private static final double DURATION_MULTIPLIER = 0.8;
-
- private EditText mDigits;
- private ImageButton mDelete;
- private View mOverflowMenuButton;
- private ColorStateList mRippleColor;
-
- private boolean mCanDigitsBeEdited;
-
- private final int[] mButtonIds = new int[] {R.id.zero, R.id.one, R.id.two, R.id.three,
- R.id.four, R.id.five, R.id.six, R.id.seven, R.id.eight, R.id.nine, R.id.star,
- R.id.pound};
-
- // For animation.
- private static final int KEY_FRAME_DURATION = 33;
-
- private int mTranslateDistance;
-
- public DialpadView(Context context) {
- this(context, null);
- }
-
- public DialpadView(Context context, AttributeSet attrs) {
- this(context, attrs, 0);
- }
-
- public DialpadView(Context context, AttributeSet attrs, int defStyle) {
- super(context, attrs, defStyle);
-
- TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.Dialpad);
- mRippleColor = a.getColorStateList(R.styleable.Dialpad_dialpad_key_button_touch_tint);
- a.recycle();
-
- mTranslateDistance = getResources().getDimensionPixelSize(
- R.dimen.dialpad_key_button_translate_y);
- }
-
- @Override
- protected void onFinishInflate() {
- setupKeypad();
- mDigits = (EditText) findViewById(R.id.digits);
- mDelete = (ImageButton) findViewById(R.id.deleteButton);
- mOverflowMenuButton = findViewById(R.id.dialpad_overflow);
- }
-
- private void setupKeypad() {
- final int[] numberIds = new int[] {R.string.dialpad_0_number, R.string.dialpad_1_number,
- R.string.dialpad_2_number, R.string.dialpad_3_number, R.string.dialpad_4_number,
- R.string.dialpad_5_number, R.string.dialpad_6_number, R.string.dialpad_7_number,
- R.string.dialpad_8_number, R.string.dialpad_9_number, R.string.dialpad_star_number,
- R.string.dialpad_pound_number};
-
- final int[] letterIds = new int[] {R.string.dialpad_0_letters, R.string.dialpad_1_letters,
- R.string.dialpad_2_letters, R.string.dialpad_3_letters, R.string.dialpad_4_letters,
- R.string.dialpad_5_letters, R.string.dialpad_6_letters, R.string.dialpad_7_letters,
- R.string.dialpad_8_letters, R.string.dialpad_9_letters,
- R.string.dialpad_star_letters, R.string.dialpad_pound_letters};
-
- final Resources resources = getContext().getResources();
-
- DialpadKeyButton dialpadKey;
- TextView numberView;
- TextView lettersView;
-
- for (int i = 0; i < mButtonIds.length; i++) {
- dialpadKey = (DialpadKeyButton) findViewById(mButtonIds[i]);
- numberView = (TextView) dialpadKey.findViewById(R.id.dialpad_key_number);
- lettersView = (TextView) dialpadKey.findViewById(R.id.dialpad_key_letters);
- final String numberString = resources.getString(numberIds[i]);
- final RippleDrawable rippleBackground =
- (RippleDrawable) resources.getDrawable(R.drawable.btn_dialpad_key);
- if (mRippleColor != null) {
- rippleBackground.setColor(mRippleColor);
- }
-
- numberView.setText(numberString);
- numberView.setElegantTextHeight(false);
- dialpadKey.setContentDescription(numberString);
- dialpadKey.setBackground(rippleBackground);
-
- if (lettersView != null) {
- lettersView.setText(resources.getString(letterIds[i]));
- }
- }
-
- final DialpadKeyButton one = (DialpadKeyButton) findViewById(R.id.one);
- one.setLongHoverContentDescription(
- resources.getText(R.string.description_voicemail_button));
-
- final DialpadKeyButton zero = (DialpadKeyButton) findViewById(R.id.zero);
- zero.setLongHoverContentDescription(
- resources.getText(R.string.description_image_button_plus));
-
- }
-
- public void setShowVoicemailButton(boolean show) {
- View view = findViewById(R.id.dialpad_key_voicemail);
- if (view != null) {
- view.setVisibility(show ? View.VISIBLE : View.INVISIBLE);
- }
- }
-
- /**
- * Whether or not the digits above the dialer can be edited.
- *
- * @param canBeEdited If true, the backspace button will be shown and the digits EditText
- * will be configured to allow text manipulation.
- */
- public void setCanDigitsBeEdited(boolean canBeEdited) {
- View deleteButton = findViewById(R.id.deleteButton);
- deleteButton.setVisibility(canBeEdited ? View.VISIBLE : View.GONE);
- View overflowMenuButton = findViewById(R.id.dialpad_overflow);
- overflowMenuButton.setVisibility(canBeEdited ? View.VISIBLE : View.GONE);
-
- EditText digits = (EditText) findViewById(R.id.digits);
- digits.setClickable(canBeEdited);
- digits.setLongClickable(canBeEdited);
- digits.setFocusableInTouchMode(canBeEdited);
- digits.setCursorVisible(false);
-
- mCanDigitsBeEdited = canBeEdited;
- }
-
- public boolean canDigitsBeEdited() {
- return mCanDigitsBeEdited;
- }
-
- /**
- * Always returns true for onHoverEvent callbacks, to fix problems with accessibility due to
- * the dialpad overlaying other fragments.
- */
- @Override
- public boolean onHoverEvent(MotionEvent event) {
- return true;
- }
-
- public void animateShow() {
- // This is a hack; without this, the setTranslationY is delayed in being applied, and the
- // numbers appear at their original position (0) momentarily before animating.
- final AnimatorListenerAdapter showListener = new AnimatorListenerAdapter() {};
-
- for (int i = 0; i < mButtonIds.length; i++) {
- int delay = (int)(getKeyButtonAnimationDelay(mButtonIds[i]) * DELAY_MULTIPLIER);
- int duration =
- (int)(getKeyButtonAnimationDuration(mButtonIds[i]) * DURATION_MULTIPLIER);
- final DialpadKeyButton dialpadKey = (DialpadKeyButton) findViewById(mButtonIds[i]);
-
- dialpadKey.setTranslationY(mTranslateDistance);
- dialpadKey.animate()
- .translationY(0)
- .setInterpolator(AnimUtils.EASE_OUT_EASE_IN)
- .setStartDelay(delay)
- .setDuration(duration)
- .setListener(showListener)
- .start();
- }
- }
-
- public EditText getDigits() {
- return mDigits;
- }
-
- public ImageButton getDeleteButton() {
- return mDelete;
- }
-
- public View getOverflowMenuButton() {
- return mOverflowMenuButton;
- }
-
- private int getKeyButtonAnimationDelay(int buttonId) {
- switch(buttonId) {
- case R.id.one: return KEY_FRAME_DURATION * 1;
- case R.id.two: return KEY_FRAME_DURATION * 2;
- case R.id.three: return KEY_FRAME_DURATION * 3;
- case R.id.four: return KEY_FRAME_DURATION * 4;
- case R.id.five: return KEY_FRAME_DURATION * 5;
- case R.id.six: return KEY_FRAME_DURATION * 6;
- case R.id.seven: return KEY_FRAME_DURATION * 7;
- case R.id.eight: return KEY_FRAME_DURATION * 8;
- case R.id.nine: return KEY_FRAME_DURATION * 9;
- case R.id.star: return KEY_FRAME_DURATION * 10;
- case R.id.zero:
- case R.id.pound:
- return KEY_FRAME_DURATION * 11;
- }
-
- Log.wtf(TAG, "Attempted to get animation delay for invalid key button id.");
- return 0;
- }
-
- private int getKeyButtonAnimationDuration(int buttonId) {
- switch(buttonId) {
- case R.id.one:
- case R.id.two:
- case R.id.three:
- case R.id.four:
- case R.id.five:
- case R.id.six:
- return KEY_FRAME_DURATION * 10;
- case R.id.seven:
- case R.id.eight:
- case R.id.nine:
- return KEY_FRAME_DURATION * 9;
- case R.id.star:
- case R.id.zero:
- case R.id.pound:
- return KEY_FRAME_DURATION * 8;
- }
-
- Log.wtf(TAG, "Attempted to get animation duration for invalid key button id.");
- return 0;
- }
-}
diff --git a/src/com/android/phone/common/dialpad/DigitsEditText.java b/src/com/android/phone/common/dialpad/DigitsEditText.java
deleted file mode 100644
index b2022aa..0000000
--- a/src/com/android/phone/common/dialpad/DigitsEditText.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (C) 2011 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.phone.common.dialpad;
-
-import android.content.Context;
-import android.graphics.Paint;
-import android.graphics.Rect;
-import android.text.InputType;
-import android.util.AttributeSet;
-import android.util.TypedValue;
-import android.view.MotionEvent;
-import android.view.ViewGroup;
-import android.view.inputmethod.InputMethodManager;
-import android.widget.EditText;
-
-import com.android.phone.common.R;
-
-/**
- * EditText which suppresses IME show up.
- */
-public class DigitsEditText extends EditText {
- // Only scale the text down to 66% smaller at most.
- private static final float MIN_TEXT_RESIZE_RATIO = 0.66f;
- private final float mOriginalTextSize;
-
- public DigitsEditText(Context context, AttributeSet attrs) {
- super(context, attrs);
- mOriginalTextSize = getTextSize();
- setInputType(getInputType() | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
- setShowSoftInputOnFocus(false);
- }
-
- @Override
- protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {
- super.onFocusChanged(focused, direction, previouslyFocusedRect);
- final InputMethodManager imm = ((InputMethodManager) getContext()
- .getSystemService(Context.INPUT_METHOD_SERVICE));
- if (imm != null && imm.isActive(this)) {
- imm.hideSoftInputFromWindow(getApplicationWindowToken(), 0);
- }
- }
-
- @Override
- public boolean onTouchEvent(MotionEvent event) {
- final boolean ret = super.onTouchEvent(event);
- // Must be done after super.onTouchEvent()
- final InputMethodManager imm = ((InputMethodManager) getContext()
- .getSystemService(Context.INPUT_METHOD_SERVICE));
- if (imm != null && imm.isActive(this)) {
- imm.hideSoftInputFromWindow(getApplicationWindowToken(), 0);
- }
- return ret;
- }
-
- @Override
- protected void onTextChanged(CharSequence text, int start, int lengthBefore, int lengthAfter) {
- super.onTextChanged(text, start, lengthBefore, lengthAfter);
- resizeText(getWidth());
- }
-
- @Override
- protected void onSizeChanged(int w, int h, int oldw, int oldh) {
- super.onSizeChanged(w, h, oldw, oldh);
- resizeText(w);
- }
-
- private void resizeText(int width) {
- if (width == 0) {
- return;
- }
- final Paint paint = getPaint();
- setTextSize(TypedValue.COMPLEX_UNIT_PX, mOriginalTextSize);
-
- float ratio = width / paint.measureText(getText().toString());
- if (ratio <= 1.0f) {
- setTextSize(TypedValue.COMPLEX_UNIT_PX,
- mOriginalTextSize * Math.max(MIN_TEXT_RESIZE_RATIO, ratio));
- }
- }
-}
diff --git a/src/com/android/phone/common/util/ViewUtil.java b/src/com/android/phone/common/util/ViewUtil.java
deleted file mode 100644
index 171eee0..0000000
--- a/src/com/android/phone/common/util/ViewUtil.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2012 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.phone.common.util;
-
-import android.content.res.Resources;
-import android.graphics.Outline;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ListView;
-
-import com.android.phone.common.R;
-
-/**
- * Provides static functions to work with views
- */
-public class ViewUtil {
- private ViewUtil() {}
-
- /**
- * Returns the width as specified in the LayoutParams
- * @throws IllegalStateException Thrown if the view's width is unknown before a layout pass
- * s
- */
- public static int getConstantPreLayoutWidth(View view) {
- // We haven't been layed out yet, so get the size from the LayoutParams
- final ViewGroup.LayoutParams p = view.getLayoutParams();
- if (p.width < 0) {
- throw new IllegalStateException("Expecting view's width to be a constant rather " +
- "than a result of the layout pass");
- }
- return p.width;
- }
-
- /**
- * Returns a boolean indicating whether or not the view's layout direction is RTL
- *
- * @param view - A valid view
- * @return True if the view's layout direction is RTL
- */
- public static boolean isViewLayoutRtl(View view) {
- return view.getLayoutDirection() == View.LAYOUT_DIRECTION_RTL;
- }
-
- /**
- * Configures the floating action button, clipping it to a circle and setting its translation z.
- * @param view The float action button's view.
- * @param res The resources file.
- */
- public static void setupFloatingActionButton(View view, Resources res) {
- // Once layout is complete and the floating action button has been assigned a width and
- // height, assign the outline.
- view.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {
- @Override
- public void onLayoutChange(View v, int left, int top, int right, int bottom,
- int oldLeft, int oldTop, int oldRight, int oldBottom) {
- final Outline outline = new Outline();
- final int minDimension = Math.min(right - left, bottom - top);
- if (minDimension <= 0) {
- return;
- }
- outline.setRoundRect(0, 0, right - left, bottom - top, minDimension / 2);
- v.setOutline(outline);
- }
- });
- view.setTranslationZ(
- res.getDimensionPixelSize(R.dimen.floating_action_button_translation_z));
- }
-
- /**
- * Adds padding to the bottom of the given {@link ListView} so that the floating action button
- * does not obscure any content.
- *
- * @param listView to add the padding to
- * @param res valid resources object
- */
- public static void addBottomPaddingToListViewForFab(ListView listView, Resources res) {
- final int fabPadding = res.getDimensionPixelSize(
- R.dimen.floating_action_button_list_bottom_padding);
- listView.setPaddingRelative(listView.getPaddingStart(), listView.getPaddingTop(),
- listView.getPaddingEnd(), listView.getPaddingBottom() + fabPadding);
- listView.setClipToPadding(false);
- }
-}