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) {