Fix account spinner width.
- make it take up different size on phones and tablets (also landscape
phone/portrait phone)
- move unread count outside of the spinner area
Bug: 5108972
Bug: 5111250
Change-Id: I2c16bbb52ce53bbf1c8fe08fd78f1a4b4afd4ccf
diff --git a/res/layout/action_bar_custom_view.xml b/res/layout/action_bar_custom_view.xml
index c1b5367..c97adb8 100644
--- a/res/layout/action_bar_custom_view.xml
+++ b/res/layout/action_bar_custom_view.xml
@@ -26,7 +26,7 @@
android:layout_height="0dip"
>
<include
- android:id="@+id/account_spinner"
+ android:id="@+id/account_spinner_container"
layout="@layout/action_bar_spinner"
android:visibility="gone"
/>
diff --git a/res/layout/action_bar_spinner.xml b/res/layout/action_bar_spinner.xml
index 8c9f15e..3528f4c 100644
--- a/res/layout/action_bar_spinner.xml
+++ b/res/layout/action_bar_spinner.xml
@@ -14,43 +14,44 @@
limitations under the License.
-->
-<RelativeLayout
+<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="@dimen/account_spinner_width"
- android:layout_height="match_parent"
- android:focusable="true"
- style="@android:style/Widget.Holo.Spinner"
+ style="@style/action_bar_spinner"
+ android:orientation="horizontal"
>
- <TextView
- android:id="@+id/spinner_count"
- style="@style/action_bar_unread_count"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:layout_alignParentRight="true"
- android:includeFontPadding="false"
- android:singleLine="true"
- android:ellipsize="none"
- android:gravity="center"
- />
<RelativeLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_toLeftOf="@+id/spinner_count"
- android:layout_alignParentLeft="true"
+ android:id="@+id/account_spinner"
+ style="@android:style/Widget.Holo.Spinner"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
android:layout_centerVertical="true"
+ android:focusable="true"
>
<TextView
android:id="@+id/spinner_line_1"
- android:layout_width="wrap_content"
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/action_bar_spinner_primary_text"
/>
<TextView
android:id="@+id/spinner_line_2"
- android:layout_width="wrap_content"
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/spinner_line_1"
style="@style/action_bar_spinner_secondary_text"
/>
</RelativeLayout>
-</RelativeLayout>
+ <TextView
+ android:id="@+id/spinner_count"
+ style="@style/action_bar_unread_count"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:paddingLeft="16dip"
+ android:paddingRight="16dip"
+ android:includeFontPadding="false"
+ android:singleLine="true"
+ android:ellipsize="none"
+ android:gravity="center"
+ />
+</LinearLayout>
diff --git a/res/values-sw600dp/styles.xml b/res/values-sw600dp/styles.xml
index cd8257a..41d4e28 100644
--- a/res/values-sw600dp/styles.xml
+++ b/res/values-sw600dp/styles.xml
@@ -121,6 +121,11 @@
<item name="android:layout_height">match_parent</item>
</style>
+ <style name="action_bar_spinner">
+ <item name="android:layout_width">350dip</item>
+ <item name="android:layout_height">match_parent</item>
+ </style>
+
<style name="action_bar_spinner_primary_text">
<item name="android:includeFontPadding">false</item>
<item name="android:textSize">18sp</item>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 2d20a96..918037d 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -31,7 +31,7 @@
<!-- Standard text colors -->
<color name="text_primary_color">#000000</color>
<color name="text_secondary_color">#666666</color>
- <color name="text_ternary_color">#888888</color>
+ <color name="text_ternary_color">#aaaaaa</color>
<color name="text_disabled_color">#888888</color>
<color name="divider_color">#ff808080</color>
diff --git a/res/values/dimensions.xml b/res/values/dimensions.xml
index ff3ac82..eceb316 100644
--- a/res/values/dimensions.xml
+++ b/res/values/dimensions.xml
@@ -56,7 +56,6 @@
<dimen name="setup_item_inset_left">0dip</dimen>
<dimen name="setup_item_inset_right">0dip</dimen>
- <dimen name="account_spinner_width">250dip</dimen>
<dimen name="account_spinner_dropdown_width">300dip</dimen>
<!-- MessageListItem -->
diff --git a/res/values/styles.xml b/res/values/styles.xml
index cfaecdf..7ec1da7 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -157,12 +157,17 @@
</style>
<style name="action_bar_unread_count">
- <item name="android:textSize">32sp</item>
+ <item name="android:textSize">36sp</item>
<item name="android:textColor">@color/text_ternary_color</item>
<item name="android:singleLine">true</item>
<item name="android:ellipsize">end</item>
</style>
+ <style name="action_bar_spinner">
+ <item name="android:layout_width">match_parent</item>
+ <item name="android:layout_height">match_parent</item>
+ </style>
+
<style name="action_bar_spinner_primary_text">
<item name="android:textSize">16sp</item>
<item name="android:textColor">@color/text_primary_color</item>
diff --git a/src/com/android/email/activity/ActionBarController.java b/src/com/android/email/activity/ActionBarController.java
index 6450b82..705ec19 100644
--- a/src/com/android/email/activity/ActionBarController.java
+++ b/src/com/android/email/activity/ActionBarController.java
@@ -71,6 +71,7 @@
private final String mAllFoldersLabel;
private final ViewGroup mActionBarCustomView;
+ private final ViewGroup mAccountSpinnerContainer;
private final View mAccountSpinner;
private final Drawable mAccountSpinnerDefaultBackground;
private final TextView mAccountSpinnerLine1View;
@@ -214,6 +215,8 @@
mActionBar.setCustomView(mActionBarCustomView, customViewLayout);
// Account spinner
+ mAccountSpinnerContainer =
+ UiUtilities.getView(mActionBarCustomView, R.id.account_spinner_container);
mAccountSpinner = UiUtilities.getView(mActionBarCustomView, R.id.account_spinner);
mAccountSpinnerDefaultBackground = mAccountSpinner.getBackground();
@@ -434,13 +437,13 @@
initSearchViews();
// In search mode, the search box is a replacement of the account spinner, so ignore
// the work needed to update that. It will get updated when it goes visible again.
- mAccountSpinner.setVisibility(View.GONE);
+ mAccountSpinnerContainer.setVisibility(View.GONE);
mSearchContainer.setVisibility(View.VISIBLE);
return;
}
// Account spinner visible.
- mAccountSpinner.setVisibility(View.VISIBLE);
+ mAccountSpinnerContainer.setVisibility(View.VISIBLE);
UiUtilities.setVisibilitySafe(mSearchContainer, View.GONE);
if (mTitleMode == Callback.TITLE_MODE_MESSAGE_SUBJECT) {