summaryrefslogtreecommitdiff
path: root/res
diff options
context:
space:
mode:
authorYorke Lee <yorkelee@google.com>2014-01-16 11:26:46 -0800
committerYorke Lee <yorkelee@google.com>2014-02-20 12:24:36 -0800
commit3cefcc69c10ab12bd782a0b53779dbd1cc0e2aa1 (patch)
treee627f324ef1be14d2ac00bafe043d8f28294d575 /res
parent28ded60d6aa23314d2cfca9ccca1e5bf731508e4 (diff)
Add drag to remove for favorites in Dialer
* Add remove view in dialtacts_activity.xml, and rearrange layout slightly so that it takes up the same position in the layout as the search view container. Contacts that are dragged to this remove view will be unstarred and unpinned. * Add drag event logic to the Remove View, so that when the user hovers a contact over it, the UI will continue to respond. Previously, only the PhoneFavoritesListView would detect touch events. * Refactor DragDropController and OnDragDropListener into separate classes. DragDropController performs the work of receiving drag/drop events from multiple views, combining them, and then firing off callbacks as appropriate to OnDragDropListeners. Each OnDragDropListener can then update their UI or internal data model as necessary in response to the callbacks. OnDragDropListener <---------------------------------------- ^ | | | DialtactsActivity ---------------> RemoveView | | | | v | | callbacks PhoneFavoriteListFragment |drag events | | | | v v | PhoneFavoriteListView ------------> DragController-------- drag events | | callbacks v PhoneFavoritesTileAdapter --> OnDragDropListener * While in here, add a content description for the clear search button Change-Id: I044ad1c5aa42c7686bde6bf5074095a4fe879bde
Diffstat (limited to 'res')
-rw-r--r--res/drawable-hdpi/ic_remove.pngbin0 -> 884 bytes
-rw-r--r--res/drawable-hdpi/ic_remove_highlight.pngbin0 -> 717 bytes
-rw-r--r--res/drawable-mdpi/ic_remove.pngbin0 -> 728 bytes
-rw-r--r--res/drawable-mdpi/ic_remove_highlight.pngbin0 -> 587 bytes
-rw-r--r--res/drawable-xhdpi/ic_remove.pngbin0 -> 1237 bytes
-rw-r--r--res/drawable-xhdpi/ic_remove_highlight.pngbin0 -> 974 bytes
-rw-r--r--res/drawable-xxhdpi/ic_remove.pngbin0 -> 1942 bytes
-rw-r--r--res/drawable-xxhdpi/ic_remove_highlight.pngbin0 -> 1590 bytes
-rw-r--r--res/layout/dialtacts_activity.xml44
-rw-r--r--res/values/colors.xml16
-rw-r--r--res/values/dimens.xml20
-rw-r--r--res/values/strings.xml5
12 files changed, 65 insertions, 20 deletions
diff --git a/res/drawable-hdpi/ic_remove.png b/res/drawable-hdpi/ic_remove.png
new file mode 100644
index 000000000..1ee6adf8d
--- /dev/null
+++ b/res/drawable-hdpi/ic_remove.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_remove_highlight.png b/res/drawable-hdpi/ic_remove_highlight.png
new file mode 100644
index 000000000..435ee36b0
--- /dev/null
+++ b/res/drawable-hdpi/ic_remove_highlight.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_remove.png b/res/drawable-mdpi/ic_remove.png
new file mode 100644
index 000000000..2c134ea10
--- /dev/null
+++ b/res/drawable-mdpi/ic_remove.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_remove_highlight.png b/res/drawable-mdpi/ic_remove_highlight.png
new file mode 100644
index 000000000..6a961cbb2
--- /dev/null
+++ b/res/drawable-mdpi/ic_remove_highlight.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_remove.png b/res/drawable-xhdpi/ic_remove.png
new file mode 100644
index 000000000..be81592ef
--- /dev/null
+++ b/res/drawable-xhdpi/ic_remove.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_remove_highlight.png b/res/drawable-xhdpi/ic_remove_highlight.png
new file mode 100644
index 000000000..57949e317
--- /dev/null
+++ b/res/drawable-xhdpi/ic_remove_highlight.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_remove.png b/res/drawable-xxhdpi/ic_remove.png
new file mode 100644
index 000000000..2722f23aa
--- /dev/null
+++ b/res/drawable-xxhdpi/ic_remove.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_remove_highlight.png b/res/drawable-xxhdpi/ic_remove_highlight.png
new file mode 100644
index 000000000..23ee8f6da
--- /dev/null
+++ b/res/drawable-xxhdpi/ic_remove_highlight.png
Binary files differ
diff --git a/res/layout/dialtacts_activity.xml b/res/layout/dialtacts_activity.xml
index e2c385364..5a886e226 100644
--- a/res/layout/dialtacts_activity.xml
+++ b/res/layout/dialtacts_activity.xml
@@ -28,20 +28,20 @@
android:layout_height="match_parent"
android:clipChildren="false"
android:orientation="vertical" >
- <LinearLayout
+ <FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:id="@+id/search_view_container"
- android:orientation="vertical"
>
<LinearLayout
android:layout_width="match_parent"
- android:layout_height="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/search_view_container"
android:orientation="horizontal"
android:paddingLeft="16dp"
android:paddingRight="23dp"
android:background="@color/searchbox_background_color"
- android:gravity="center_vertical">
+ android:gravity="center_vertical"
+ >
<EditText
android:id="@+id/search_view"
android:layout_width="0dp"
@@ -57,6 +57,7 @@
android:src="@drawable/ic_close_dk"
android:clickable="true"
android:background="?android:attr/selectableItemBackground"
+ android:contentDescription="@string/description_clear_search"
android:visibility="gone" />
<ImageView
android:id="@+id/voice_search_button"
@@ -68,12 +69,35 @@
android:contentDescription="@string/description_start_voice_search"
android:background="?android:attr/selectableItemBackground" />
</LinearLayout>
- <View
- android:id="@+id/searchbox_divider"
- android:layout_height="1dp"
+ <com.android.dialer.list.RemoveView
android:layout_width="match_parent"
- android:background="@color/background_dialer_light" />
- </LinearLayout>
+ android:layout_height="56dp"
+ android:id="@+id/remove_view_container"
+ android:orientation="horizontal"
+ android:gravity="center"
+ android:visibility="gone">
+ <ImageView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/remove_view_icon"
+ android:src="@drawable/ic_remove"
+ android:contentDescription="@string/remove_contact"
+ />
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/remove_view_text"
+ android:textSize="@dimen/remove_text_size"
+ android:textColor="@color/remove_text_color"
+ android:text="@string/remove_contact"
+ />
+ </com.android.dialer.list.RemoveView>
+ </FrameLayout>
+ <View
+ android:id="@+id/searchbox_divider"
+ android:layout_height="1dp"
+ android:layout_width="match_parent"
+ android:background="@color/background_dialer_light" />
<FrameLayout
android:layout_height="0dp"
android:layout_weight="1"
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 370bdfeb6..fc8e8473f 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -12,7 +12,7 @@
~ 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>
@@ -27,8 +27,10 @@
<!-- Color of the text describing an unconsumed voicemail. -->
<color name="call_log_voicemail_highlight_color">#33b5e5</color>
- <!-- Colour of voicemail progress bar to the right of position indicator.
- Same as the background color of the dialer -->
+ <!--
+ Colour of voicemail progress bar to the right of position indicator.
+ Same as the background color of the dialer
+ -->
<color name="voicemail_playback_seek_bar_yet_to_play">#cecece</color>
<!-- Colour of voicemail progress bar to the left of position indicator. -->
@@ -38,7 +40,7 @@
<color name="item_selected">#660099cc</color>
<!-- Background color of new dialer activity -->
- <color name="background_dialer_light">#cecece</color>
+ <color name="background_dialer_light">#eeeeee</color>
<!-- Background color of dialer list items (contacts, call log entries) -->
<color name="background_dialer_list_items">#eeeeee</color>
@@ -71,6 +73,12 @@
<!-- Text color for no favorites message -->
<color name="nofavorite_text_color">#777777</color>
+ <!-- Text color for the "Remove" text in its regular state -->
+ <color name="remove_text_color">#555555</color>
+
+ <!-- Text color for the "Remove" text when a contact is dragged on top of the remove view -->
+ <color name="remove_highlighted_text_color">#FF3F3B</color>
+
<!-- Text color for the "speed dial" label in the favorites menu. -->
<color name="speed_dial_text_color">#555555</color>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 3c856d2e6..fb74e9748 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -13,7 +13,7 @@
~ 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>
<!-- Height of edit text in dialpad fragment -->
@@ -29,9 +29,15 @@
<!-- Match call_button_height to Phone's dimens/in_call_end_button_height -->
<dimen name="call_button_height">74dp</dimen>
- <!-- Search View -->
+ <!-- Search View -->
<dimen name="search_text_size">14sp</dimen>
+ <!--
+ Drag to remove view (in dp because it is used in conjunction with a statically
+ sized icon
+ -->
+ <dimen name="remove_text_size">16dp</dimen>
+
<!-- Call Log -->
<dimen name="call_log_call_action_size">32dip</dimen>
<dimen name="call_log_call_action_width">48dip</dimen>
@@ -51,9 +57,11 @@
the main area of a call log entry and the secondary action button. -->
<dimen name="call_log_list_item_vertical_divider_width">1dp</dimen>
- <!-- Layout weight values for dialpad screen. These layouts will be used in one
+ <!--
+ Layout weight values for dialpad screen. These layouts will be used in one
LinearLayout (dialpad_fragment.xml), configuring dialpad screen's vertical
- ratio. -->
+ ratio.
+ -->
<integer name="dialpad_layout_weight_digits">15</integer>
<integer name="dialpad_layout_weight_dialpad">65</integer>
@@ -63,14 +71,14 @@
<dimen name="dialpad_key_plus_size">15dp</dimen>
<dimen name="dialpad_key_special_characters_size">25dp</dimen>
<dimen name="dialpad_key_letters_width">41dp</dimen>
-
-
<dimen name="fake_action_bar_height">60dp</dimen>
<!-- Min with of fake menu buttons, which should be same as ActionBar's one -->
<dimen name="fake_menu_button_min_width">56dp</dimen>
<!-- Favorites tile and recent call log padding -->
<dimen name="contact_tile_divider_width">12dp</dimen>
+ <!-- Favorites tile and recent call log padding -->
+ <dimen name="contact_tile_divider_padding">3dp</dimen>
<dimen name="contact_tile_info_button_height_and_width">36dp</dimen>
<item name="contact_tile_height_to_width_ratio" type="dimen">67%</item>
<dimen name="favorites_row_top_padding">6dp</dimen>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a61e0bc4a..3f2157712 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -539,6 +539,9 @@
-->
<string name="description_call_log_unheard_voicemail">Unheard voicemail</string>
+ <!-- String describing the icon used to clear the search field -->
+ <string name="description_clear_search">Clear search</string>
+
<!-- String describing the icon used to start a voice search -->
<string name="description_start_voice_search">Start voice search</string>
@@ -726,6 +729,8 @@
<!-- Content description for dismiss button on badge. [CHAR LIMIT=NONE] -->
<string name="description_dismiss">Dismiss</string>
+ <!-- Remove button that shows up when contact is long-pressed. [CHAR LIMIT=NONE] -->
+ <string name="remove_contact">Remove</string>
<!-- Header text displayed on the main dialer screen above the list of favorite phone numbers.
[CHAR LIMIT=21] -->
<string name="favorites_menu_speed_dial">Speed Dial</string>