Introduce AppCompatActivity and modify account filter activities
- added PeopleThemeAppCompat for AppCompatActivity, and it will replace
PeopleTheme eventually (same for ContactsActionBarStyleAppCompat).
- removed "icon" from styleable Mapping since there would be conflict
when including appcompat in Android.mk.
- will clean up styles.xml after finalize all the changes.
Bug: 25629359
Change-Id: I988cee41a75800a63375e95242042ba0d0380300
diff --git a/Android.mk b/Android.mk
index 0679ac1..b0fa901 100644
--- a/Android.mk
+++ b/Android.mk
@@ -18,6 +18,7 @@
LOCAL_SRC_FILES := $(call all-java-files-under, $(src_dirs))
LOCAL_RESOURCE_DIR := $(addprefix $(LOCAL_PATH)/, $(res_dirs)) \
+ $(support_library_root_dir)/v7/appcompat/res \
$(support_library_root_dir)/v7/cardview/res
LOCAL_ASSET_DIR := $(addprefix $(LOCAL_PATH)/, $(asset_dirs))
@@ -25,6 +26,7 @@
--auto-add-overlay \
--extra-packages com.android.contacts.common \
--extra-packages com.android.phone.common \
+ --extra-packages android.support.v7.appcompat \
--extra-packages android.support.v7.cardview
LOCAL_STATIC_JAVA_LIBRARIES := \
@@ -32,6 +34,7 @@
android-common \
guava \
android-support-v13 \
+ android-support-v7-appcompat \
android-support-v7-cardview \
android-support-v7-palette \
android-support-v4 \
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index 6da3b94..86c46fc 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -20,8 +20,6 @@
<attr name="mimeType" format="string"/>
<!-- RemoteViews XML that should be used to format this data -->
<attr name="remoteViews" format="reference"/>
- <!-- Icon that should be used to represent this data -->
- <attr name="icon" format="reference"/>
<!-- Column in data table to summarize this data -->
<attr name="summaryColumn" format="string"/>
<!-- Column in data table to show details of this data -->
diff --git a/res/values/styles.xml b/res/values/styles.xml
index a8dbe0c..57b3c44 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -108,6 +108,73 @@
<item name="favorites_padding_bottom">0dip</item>
</style>
+ <style name="PeopleThemeAppCompat" parent="Theme.AppCompat.Light">
+ <!-- Styles that require AppCompat compatibility, remember to update both sets -->
+ <item name="android:actionBarStyle">@style/ContactsActionBarStyleAppCompat</item>
+ <item name="actionBarStyle">@style/ContactsActionBarStyleAppCompat</item>
+ <!-- Style for the tab bar (for the divider between tabs) -->
+ <item name="android:actionBarTabBarStyle">@style/ContactsActionBarTabBarStyle</item>
+ <item name="actionBarTabBarStyle">@style/ContactsActionBarTabBarStyle</item>
+ <!-- Style for the tab bar text (for text on tabs) -->
+ <item name="android:actionBarTabTextStyle">@style/ContactsActionBarTabTextStyle</item>
+ <item name="actionBarTabTextStyle">@style/ContactsActionBarTabTextStyle</item>
+ <!-- Drawable for the back button -->
+ <item name="android:homeAsUpIndicator">@drawable/ic_back_arrow</item>
+ <item name="homeAsUpIndicator">@drawable/ic_back_arrow</item>
+ <!-- Style for the overflow button in the actionbar. -->
+ <item name="android:actionOverflowButtonStyle">@style/ContactsActionBarOverflowQP</item>
+ <item name="android:actionModeCloseDrawable">@drawable/ic_close_lt</item>
+ <item name="android:fastScrollThumbDrawable">@drawable/fastscroll_thumb</item>
+ <item name="android:fastScrollTrackDrawable">@null</item>
+ <item name="android:textColorPrimary">@color/primary_text_color</item>
+ <item name="android:textColorSecondary">@color/secondary_text_color</item>
+ <item name="android:icon">@android:color/transparent</item>
+ <item name="android:listViewStyle">@style/ListViewStyle</item>
+ <item name="android:windowBackground">@color/background_primary</item>
+ <item name="android:colorPrimaryDark">@color/primary_color_dark</item>
+ <item name="colorPrimaryDark">@color/primary_color_dark</item>
+ <item name="android:colorPrimary">@color/primary_color</item>
+ <item name="colorPrimary">@color/primary_color</item>
+ <item name="android:colorAccent">@color/primary_color</item>
+ <item name="colorAccent">@color/primary_color</item>
+ <item name="android:alertDialogTheme">@style/ContactsAlertDialogTheme</item>
+ <item name="alertDialogTheme">@style/ContactsAlertDialogTheme</item>
+ <item name="list_item_height">?android:attr/listPreferredItemHeight</item>
+ <item name="activated_background">@drawable/list_item_activated_background</item>
+ <item name="section_header_background">@drawable/list_title_holo</item>
+ <item name="list_section_header_height">24dip</item>
+ <item name="list_item_padding_top">
+ @dimen/contact_browser_list_item_padding_top_or_bottom
+ </item>
+ <item name="list_item_padding_right">32dp</item>
+ <item name="list_item_padding_bottom">
+ @dimen/contact_browser_list_item_padding_top_or_bottom
+ </item>
+ <item name="list_item_padding_left">16dip</item>
+ <item name="list_item_gap_between_image_and_text">
+ @dimen/contact_browser_list_item_gap_between_image_and_text
+ </item>
+ <item name="list_item_gap_between_label_and_data">5dip</item>
+ <item name="list_item_presence_icon_margin">4dip</item>
+ <item name="list_item_presence_icon_size">16dip</item>
+ <item name="list_item_photo_size">@dimen/contact_browser_list_item_photo_size</item>
+ <item name="list_item_profile_photo_size">70dip</item>
+ <item name="list_item_prefix_highlight_color">@color/people_app_theme_color</item>
+ <item name="list_item_background_color">@color/list_item_pinned_header_color</item>
+ <item name="list_item_header_text_color">@color/people_app_theme_color</item>
+ <item name="list_item_header_text_size">14sp</item>
+ <item name="list_item_header_height">30dip</item>
+ <item name="list_item_data_width_weight">5</item>
+ <item name="list_item_label_width_weight">3</item>
+ <item name="list_item_header_text_indent">8dip</item>
+ <item name="contact_browser_list_padding_left">0dip</item>
+ <item name="contact_browser_list_padding_right">0dip</item>
+ <item name="contact_browser_background">@color/background_primary</item>
+ <item name="list_item_text_indent">@dimen/contact_browser_list_item_text_indent</item>
+ <!-- Favorites -->
+ <item name="favorites_padding_bottom">0dip</item>
+ </style>
+
<style name="ContactsActionBarOverflow" parent="@android:style/Widget.Holo.ActionButton.Overflow">
<item name="android:src">@drawable/ic_overflow_menu</item>
</style>
@@ -122,6 +189,20 @@
<item name="android:icon">@android:color/transparent</item>
</style>
+ <style name="ContactsActionBarStyleAppCompat"
+ parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
+ <!-- Styles that require AppCompat compatibility, remember to update both sets -->
+ <item name="android:background">@color/actionbar_background_color</item>
+ <item name="background">@color/actionbar_background_color</item>
+ <item name="android:titleTextStyle">@style/ContactsActionBarTitleText</item>
+ <item name="titleTextStyle">@style/ContactsActionBarTitleText</item>
+ <item name="android:backgroundStacked">@color/actionbar_background_color</item>
+ <item name="backgroundStacked">@color/actionbar_background_color</item>
+ <!-- Empty icon -->
+ <item name="android:icon">@android:color/transparent</item>
+ <item name="icon">@android:color/transparent</item>
+ </style>
+
<style name="EditorActionBarStyle" parent="@style/ContactsActionBarStyle">
<item name="android:contentInsetStart">72dp</item>
</style>
@@ -200,8 +281,9 @@
<item name="android:listViewStyle">@style/ListViewStyle</item>
</style>
- <style name="ContactListFilterTheme" parent="@style/PeopleTheme">
- <item name="android:listViewStyle">@style/ListViewStyle</item>
+ <style name="ContactListFilterTheme" parent="@style/PeopleThemeAppCompat">
+ <!-- Make the shadow when pressing a list item transparent rather than yellow. -->
+ <item name="android:listSelector">?android:attr/listChoiceBackgroundIndicator</item>
</style>
<style name="NonPhoneActivityTheme" parent="@android:Theme.Translucent.NoTitleBar">