Merge "Refresh onboarding flow UI" into ub-contactsdialer-a-dev
diff --git a/res/drawable-hdpi/ill_onboard_default.png b/res/drawable-hdpi/ill_onboard_default.png
new file mode 100644
index 0000000..d16c1f4
--- /dev/null
+++ b/res/drawable-hdpi/ill_onboard_default.png
Binary files differ
diff --git a/res/drawable-hdpi/ill_onboard_permissions.png b/res/drawable-hdpi/ill_onboard_permissions.png
new file mode 100644
index 0000000..90ef14c
--- /dev/null
+++ b/res/drawable-hdpi/ill_onboard_permissions.png
Binary files differ
diff --git a/res/drawable-mdpi/ill_onboard_default.png b/res/drawable-mdpi/ill_onboard_default.png
new file mode 100644
index 0000000..41de467
--- /dev/null
+++ b/res/drawable-mdpi/ill_onboard_default.png
Binary files differ
diff --git a/res/drawable-mdpi/ill_onboard_permissions.png b/res/drawable-mdpi/ill_onboard_permissions.png
new file mode 100644
index 0000000..3ec39db
--- /dev/null
+++ b/res/drawable-mdpi/ill_onboard_permissions.png
Binary files differ
diff --git a/res/drawable-xhdpi/ill_onboard_default.png b/res/drawable-xhdpi/ill_onboard_default.png
new file mode 100644
index 0000000..1cf47df
--- /dev/null
+++ b/res/drawable-xhdpi/ill_onboard_default.png
Binary files differ
diff --git a/res/drawable-xhdpi/ill_onboard_permissions.png b/res/drawable-xhdpi/ill_onboard_permissions.png
new file mode 100644
index 0000000..ab52a58
--- /dev/null
+++ b/res/drawable-xhdpi/ill_onboard_permissions.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ill_onboard_default.png b/res/drawable-xxhdpi/ill_onboard_default.png
new file mode 100644
index 0000000..f243d44
--- /dev/null
+++ b/res/drawable-xxhdpi/ill_onboard_default.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ill_onboard_permissions.png b/res/drawable-xxhdpi/ill_onboard_permissions.png
new file mode 100644
index 0000000..4725bfd
--- /dev/null
+++ b/res/drawable-xxhdpi/ill_onboard_permissions.png
Binary files differ
diff --git a/res/drawable-xxxhdpi/ill_onboard_default.png b/res/drawable-xxxhdpi/ill_onboard_default.png
new file mode 100644
index 0000000..53f858d
--- /dev/null
+++ b/res/drawable-xxxhdpi/ill_onboard_default.png
Binary files differ
diff --git a/res/drawable-xxxhdpi/ill_onboard_permissions.png b/res/drawable-xxxhdpi/ill_onboard_permissions.png
new file mode 100644
index 0000000..f406a95
--- /dev/null
+++ b/res/drawable-xxxhdpi/ill_onboard_permissions.png
Binary files differ
diff --git a/res/layout/onboarding_screen_fragment.xml b/res/layout/onboarding_screen_fragment.xml
index f4136ae..f60225d 100644
--- a/res/layout/onboarding_screen_fragment.xml
+++ b/res/layout/onboarding_screen_fragment.xml
@@ -17,7 +17,14 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:padding="20dp" >
+    android:paddingBottom="20dp" >
+
+    <ImageView
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:id="@+id/onboarding_screen_background_image"
+        android:scaleType="centerCrop"
+        android:importantForAccessibility="no" />
 
     <TextView
         android:id="@+id/onboarding_screen_title"
@@ -25,42 +32,40 @@
         android:layout_height="wrap_content"
         android:layout_above="@+id/onboarding_screen_content"
         android:textAppearance="?android:attr/textAppearanceLarge"
-        android:textColor="@color/onboarding_primary_text_color" />
+        android:textColor="@color/onboarding_primary_text_color"
+        android:layout_marginStart="@dimen/onboard_screen_side_padding"
+        android:layout_marginEnd="@dimen/onboard_screen_side_padding" />
 
     <TextView
         android:id="@id/onboarding_screen_content"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:layout_above="@+id/onboarding_buttons_container"
+        android:layout_above="@+id/onboard_next_button"
         android:layout_marginTop="20dp"
-        android:textColor="@color/onboarding_primary_text_color" />
+        android:textColor="@color/onboarding_primary_text_color"
+        android:layout_marginStart="@dimen/onboard_screen_side_padding"
+        android:layout_marginEnd="@dimen/onboard_screen_side_padding" />
 
-    <LinearLayout
-        android:id="@id/onboarding_buttons_container"
-        android:layout_width="match_parent"
+    <Button
+        android:id="@+id/onboard_skip_button"
+        android:layout_width="wrap_content"
         android:layout_height="wrap_content"
+        android:layout_alignTop="@id/onboard_next_button"
+        android:layout_toStartOf="@id/onboard_next_button"
+        android:text="@string/onboarding_skip_button"
+        android:textColor="@color/onboarding_primary_text_color"
+        style="?android:attr/borderlessButtonStyle" />
+
+    <Button
+        android:id="@id/onboard_next_button"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignParentEnd="true"
         android:layout_alignParentBottom="true"
-        android:layout_marginTop="20dp" >
+        android:layout_marginBottom="5dp"
+        android:layout_marginEnd="@dimen/onboard_screen_side_padding"
+        android:text="@string/onboarding_next_button"
+        android:textColor="@color/onboarding_primary_text_color"
+        style="@android:style/Widget.Material.Button" />
 
-        <Button
-            android:id="@+id/onboard_skip_button"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_weight="1"
-            android:gravity="center"
-            android:text="@string/onboarding_skip_button"
-            android:textColor="@color/onboarding_primary_text_color"
-            style="?android:attr/borderlessButtonStyle" />
-
-        <Button
-            android:id="@+id/onboard_next_button"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_weight="1"
-            android:gravity="center"
-            android:text="@string/onboarding_next_button"
-            android:textColor="@color/onboarding_primary_text_color"
-            style="?android:attr/borderlessButtonStyle" />
-
-    </LinearLayout>
 </RelativeLayout>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index d8d0de4..da68061 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -138,6 +138,7 @@
     <color name="onboarding_primary_text_color">#ffffff</color>
     <color name="onboarding_default_dialer_screen_background_color">#e06055</color>
     <color name="onboarding_permissions_screen_background_color">#689f38</color>
+    <color name="onboarding_next_button_color">#ffffff</color>
 
     <!-- Grey 700 -->
     <color name="call_detail_footer_text_color">#616161</color>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 18f33d5..8ea7d1c 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -167,4 +167,6 @@
     <dimen name="blocked_number_settings_description_text_size">16sp</dimen>
 
     <dimen name="call_type_icon_size">12dp</dimen>
+
+    <dimen name="onboard_screen_side_padding">20dp</dimen>
 </resources>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 533b88e..108f299 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -120,6 +120,8 @@
         <item name="windowActionBar">false</item>
         <item name="android:windowNoTitle">true</item>
         <item name="windowNoTitle">true</item>
+        <item name="android:colorButtonNormal">@color/onboarding_next_button_color</item>
+        <item name="colorButtonNormal">@color/onboarding_next_button_color</item>
     </style>
 
     <!-- Hide the actionbar title during the activity preview -->
diff --git a/src/com/android/dialer/onboard/OnboardingActivity.java b/src/com/android/dialer/onboard/OnboardingActivity.java
index 144e6d4..9be0fd0 100644
--- a/src/com/android/dialer/onboard/OnboardingActivity.java
+++ b/src/com/android/dialer/onboard/OnboardingActivity.java
@@ -257,6 +257,7 @@
                     SCREEN_DEFAULT_DIALER,
                     canSkipScreen(),
                     R.color.onboarding_default_dialer_screen_background_color,
+                    R.drawable.ill_onboard_default,
                     R.string.request_default_dialer_screen_title,
                     R.string.request_default_dialer_screen_content
             );
@@ -294,6 +295,7 @@
                     SCREEN_PERMISSIONS,
                     canSkipScreen(),
                     R.color.onboarding_permissions_screen_background_color,
+                    R.drawable.ill_onboard_permissions,
                     R.string.request_permissions_screen_title,
                     R.string.request_permissions_screen_content
             );
diff --git a/src/com/android/dialer/onboard/OnboardingFragment.java b/src/com/android/dialer/onboard/OnboardingFragment.java
index 77b265b..2836a95 100644
--- a/src/com/android/dialer/onboard/OnboardingFragment.java
+++ b/src/com/android/dialer/onboard/OnboardingFragment.java
@@ -21,6 +21,8 @@
 import android.view.View;
 import android.view.View.OnClickListener;
 import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.ImageView;
 import android.widget.TextView;
 
 import com.android.dialer.R;
@@ -28,7 +30,8 @@
 public class OnboardingFragment extends Fragment implements OnClickListener {
     public static final String ARG_SCREEN_ID = "arg_screen_id";
     public static final String ARG_CAN_SKIP_SCREEN = "arg_can_skip_screen";
-    public static final String ARG_BACKGROUND_COLOR_RESOURCE = "arg_background_color";
+    public static final String ARG_BACKGROUND_COLOR_RESOURCE = "arg_background_color_resource";
+    public static final String ARG_BACKGROUND_IMAGE_RESOURCE="arg_background_image_resource";
     public static final String ARG_TEXT_TITLE_RESOURCE = "arg_text_title_resource";
     public static final String ARG_TEXT_CONTENT_RESOURCE = "arg_text_content_resource";
 
@@ -42,11 +45,12 @@
     public OnboardingFragment() {}
 
     public OnboardingFragment(int screenId, boolean canSkipScreen, int backgroundColorResourceId,
-            int textTitleResourceId, int textContentResourceId) {
+            int backgroundImageResourceId, int textTitleResourceId, int textContentResourceId) {
         final Bundle args = new Bundle();
         args.putInt(ARG_SCREEN_ID, screenId);
         args.putBoolean(ARG_CAN_SKIP_SCREEN, canSkipScreen);
         args.putInt(ARG_BACKGROUND_COLOR_RESOURCE, backgroundColorResourceId);
+        args.putInt(ARG_BACKGROUND_IMAGE_RESOURCE, backgroundImageResourceId);
         args.putInt(ARG_TEXT_TITLE_RESOURCE, textTitleResourceId);
         args.putInt(ARG_TEXT_CONTENT_RESOURCE, textContentResourceId);
         setArguments(args);
@@ -62,12 +66,17 @@
     public View onCreateView(LayoutInflater inflater, ViewGroup container,
             Bundle savedInstanceState) {
         final View view = inflater.inflate(R.layout.onboarding_screen_fragment, container, false);
-        view.setBackgroundColor(getResources().getColor(
-                getArguments().getInt(ARG_BACKGROUND_COLOR_RESOURCE), null));
+        final int backgroundColor = getResources().getColor(
+                getArguments().getInt(ARG_BACKGROUND_COLOR_RESOURCE), null);
+        view.setBackgroundColor(backgroundColor);
+        ((ImageView) view.findViewById(R.id.onboarding_screen_background_image)).setImageResource(
+                getArguments().getInt(ARG_BACKGROUND_IMAGE_RESOURCE));
         ((TextView) view.findViewById(R.id.onboarding_screen_content)).
                 setText(getArguments().getInt(ARG_TEXT_CONTENT_RESOURCE));
         ((TextView) view.findViewById(R.id.onboarding_screen_title)).
-        setText(getArguments().getInt(ARG_TEXT_TITLE_RESOURCE));
+                setText(getArguments().getInt(ARG_TEXT_TITLE_RESOURCE));
+        ((Button) view.findViewById(R.id.onboard_next_button)).setTextColor(backgroundColor);
+
         if (!getArguments().getBoolean(ARG_CAN_SKIP_SCREEN)) {
             view.findViewById(R.id.onboard_skip_button).setVisibility(View.INVISIBLE);
         }