diff options
author | Nicole Huang <nicolehuang@google.com> | 2018-05-18 16:03:54 +0800 |
---|---|---|
committer | Nicole Huang <nicolehuang@google.com> | 2018-05-22 11:33:53 +0800 |
commit | 02da3fd71e489769270b6b44d9f96ebd1693bff9 (patch) | |
tree | 03f6f9e8c15a9c58b27dd071e724f059fddeac6f /library | |
parent | 2c20d03bbd0cb0ad835853f93a00cd509e982836 (diff) | |
download | setupwizard-02da3fd71e489769270b6b44d9f96ebd1693bff9.tar.gz |
Modify the default SwitchItem as non-verbose Style
For consistency the default SwitchItem should be the non-verbose, and create a new layout xml for verbose.
Bug: 79539019
Test: ./gradlew test
Change-Id: Icb617f4a317cfeeccf73f6de452115f07c6981d7
Diffstat (limited to 'library')
3 files changed, 102 insertions, 7 deletions
diff --git a/library/gingerbread/res/layout/suw_items_switch.xml b/library/gingerbread/res/layout/suw_items_switch.xml index 5296a62..5614044 100644 --- a/library/gingerbread/res/layout/suw_items_switch.xml +++ b/library/gingerbread/res/layout/suw_items_switch.xml @@ -17,17 +17,17 @@ <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" - style="@style/SuwItemContainer.Verbose" + style="@style/SuwItemContainer" android:layout_width="match_parent" android:layout_height="wrap_content" - android:clipToPadding="false" + android:baselineAligned="false" android:orientation="horizontal"> <FrameLayout android:id="@+id/suw_items_icon_container" android:layout_width="@dimen/suw_items_icon_container_width" android:layout_height="wrap_content" - android:layout_gravity="top" + android:layout_gravity="center_vertical" android:gravity="start"> <ImageView @@ -41,13 +41,13 @@ <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_marginBottom="@dimen/suw_items_verbose_padding_bottom_extra" + android:layout_marginBottom="@dimen/suw_items_padding_bottom_extra" android:layout_weight="1" android:orientation="vertical"> <com.android.setupwizardlib.view.RichTextView android:id="@+id/suw_items_title" - style="@style/SuwItemTitle.Verbose" + style="@style/SuwItemTitle" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="start" diff --git a/library/gingerbread/res/layout/suw_items_switch_verbose.xml b/library/gingerbread/res/layout/suw_items_switch_verbose.xml new file mode 100644 index 0000000..8911acc --- /dev/null +++ b/library/gingerbread/res/layout/suw_items_switch_verbose.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2016 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + 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. +--> + +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + style="@style/SuwItemContainer.Verbose" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:baselineAligned="false" + android:clipToPadding="false" + android:orientation="horizontal" + tools:ignore="UnusedResources"> + <!-- Ignore UnusedResources: can be used by clients --> + + <FrameLayout + android:id="@+id/suw_items_icon_container" + android:layout_width="@dimen/suw_items_icon_container_width" + android:layout_height="wrap_content" + android:layout_gravity="top" + android:gravity="start"> + + <ImageView + android:id="@+id/suw_items_icon" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + tools:ignore="ContentDescription" /> + + </FrameLayout> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_marginBottom="@dimen/suw_items_verbose_padding_bottom_extra" + android:layout_weight="1" + android:orientation="vertical"> + + <com.android.setupwizardlib.view.RichTextView + android:id="@+id/suw_items_title" + style="@style/SuwItemTitle.Verbose" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="start" + android:labelFor="@+id/suw_items_switch" + android:textAlignment="viewStart" + tools:ignore="UnusedAttribute" /> + + <com.android.setupwizardlib.view.RichTextView + android:id="@+id/suw_items_summary" + style="@style/SuwItemSummary" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="start" + android:textAlignment="viewStart" + android:visibility="gone" + tools:ignore="UnusedAttribute" /> + + </LinearLayout> + + <androidx.appcompat.widget.SwitchCompat + android:id="@+id/suw_items_switch" + style="@style/SuwSwitchStyle" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:layout_gravity="center_vertical" /> + +</LinearLayout> diff --git a/library/gingerbread/test/robotest/src/com/android/setupwizardlib/items/SwitchItemTest.java b/library/gingerbread/test/robotest/src/com/android/setupwizardlib/items/SwitchItemTest.java index 05d6e5b..4716c4d 100644 --- a/library/gingerbread/test/robotest/src/com/android/setupwizardlib/items/SwitchItemTest.java +++ b/library/gingerbread/test/robotest/src/com/android/setupwizardlib/items/SwitchItemTest.java @@ -31,6 +31,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; import android.widget.ImageView; +import android.widget.LinearLayout; import android.widget.TextView; import androidx.appcompat.widget.SwitchCompat; @@ -41,6 +42,7 @@ import com.android.setupwizardlib.robolectric.SuwLibRobolectricTestRunner; import org.junit.Assume; import org.junit.Test; import org.junit.runner.RunWith; +import org.robolectric.Robolectric; import org.robolectric.annotation.Config; @RunWith(SuwLibRobolectricTestRunner.class) @@ -50,11 +52,24 @@ public class SwitchItemTest { private SwitchCompat mSwitch; @Test - public void testLayout() { + public void defaultLayout_baselineAligned_shouldBeFalse() { Assume.assumeTrue(VERSION.SDK_INT >= VERSION_CODES.LOLLIPOP); + LayoutInflater inflater = LayoutInflater.from(application); SwitchItem item = new SwitchItem(); + LinearLayout layout = (LinearLayout) inflater.inflate(item.getDefaultLayoutResource(), + null); + assertThat(layout.isBaselineAligned()).isFalse(); + } + + @Test + public void verboseLayout_clipPadding_shouldBeFalse() { + Assume.assumeTrue(VERSION.SDK_INT >= VERSION_CODES.LOLLIPOP); LayoutInflater inflater = LayoutInflater.from(application); - ViewGroup layout = (ViewGroup) inflater.inflate(item.getDefaultLayoutResource(), null); + SwitchItem item = new SwitchItem(application, + Robolectric.buildAttributeSet() + .addAttribute(android.R.attr.layout, "@layout/suw_items_switch_verbose") + .build()); + ViewGroup layout = (ViewGroup) inflater.inflate(item.getLayoutResource(), null); assertThat(layout.getClipToPadding()).isFalse(); } |