From c3ba431972a3eac655763ea55d5274c09a440a7a Mon Sep 17 00:00:00 2001 From: Edgar Wang Date: Fri, 1 Apr 2022 01:38:18 +0800 Subject: [PATCH] Enable hyphenation on most of preference. Bug: 217659992 Bug: 231924943 Bug: 229763000 Test: manual Change-Id: Ia490c4c17a60004efd3a6f2d03b5eaaccc491a00 --- .../SettingsLib/AppPreference/res/layout/preference_app.xml | 2 ++ .../collapsingtoolbar/CollapsingToolbarDelegate.java | 5 +++++ .../widget/CollapsingCoordinatorLayout.java | 5 +++++ .../FooterPreference/res/layout-v31/preference_footer.xml | 1 + .../RadioButtonPreference/res/layout/preference_radio.xml | 2 ++ .../res/layout/preference_selector_with_widget.xml | 2 ++ .../SettingsTheme/res/layout-v31/settingslib_preference.xml | 2 ++ .../TopIntroPreference/res/layout/top_intro_preference.xml | 1 + .../res/layout-v31/preference_two_target.xml | 2 ++ packages/SettingsLib/res/layout/preference_access_point.xml | 2 ++ .../res/layout/preference_checkable_two_target.xml | 2 ++ .../SettingsLib/res/layout/restricted_switch_preference.xml | 3 +++ 12 files changed, 29 insertions(+) diff --git a/packages/SettingsLib/AppPreference/res/layout/preference_app.xml b/packages/SettingsLib/AppPreference/res/layout/preference_app.xml index e65f7de2466ac..12db901bdb69e 100644 --- a/packages/SettingsLib/AppPreference/res/layout/preference_app.xml +++ b/packages/SettingsLib/AppPreference/res/layout/preference_app.xml @@ -55,6 +55,7 @@ android:ellipsize="marquee" android:fadingEdge="horizontal" android:maxLines="2" + android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem"/> diff --git a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java index 30e39731d41b1..31e8cc709749d 100644 --- a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java +++ b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java @@ -16,6 +16,8 @@ package com.android.settingslib.collapsingtoolbar; +import static android.text.Layout.HYPHENATION_FREQUENCY_NORMAL_FAST; + import android.app.ActionBar; import android.os.Build; import android.view.LayoutInflater; @@ -82,6 +84,9 @@ public class CollapsingToolbarDelegate { mAppBarLayout = view.findViewById(R.id.app_bar); if (mCollapsingToolbarLayout != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { mCollapsingToolbarLayout.setLineSpacingMultiplier(TOOLBAR_LINE_SPACING_MULTIPLIER); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + mCollapsingToolbarLayout.setHyphenationFrequency(HYPHENATION_FREQUENCY_NORMAL_FAST); + } } disableCollapsingToolbarLayoutScrollingBehavior(); mToolbar = view.findViewById(R.id.action_bar); diff --git a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java index dbb4b5017e6b6..1ead2f3373147 100644 --- a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java +++ b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/widget/CollapsingCoordinatorLayout.java @@ -16,6 +16,8 @@ package com.android.settingslib.collapsingtoolbar.widget; +import static android.text.Layout.HYPHENATION_FREQUENCY_NORMAL_FAST; + import android.app.ActionBar; import android.app.Activity; import android.content.Context; @@ -106,6 +108,9 @@ public class CollapsingCoordinatorLayout extends CoordinatorLayout { mAppBarLayout = findViewById(R.id.app_bar); if (mCollapsingToolbarLayout != null) { mCollapsingToolbarLayout.setLineSpacingMultiplier(TOOLBAR_LINE_SPACING_MULTIPLIER); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + mCollapsingToolbarLayout.setHyphenationFrequency(HYPHENATION_FREQUENCY_NORMAL_FAST); + } if (!TextUtils.isEmpty(mToolbarTitle)) { mCollapsingToolbarLayout.setTitle(mToolbarTitle); } diff --git a/packages/SettingsLib/FooterPreference/res/layout-v31/preference_footer.xml b/packages/SettingsLib/FooterPreference/res/layout-v31/preference_footer.xml index 42700b3ace07e..2c1fdd493c8ad 100644 --- a/packages/SettingsLib/FooterPreference/res/layout-v31/preference_footer.xml +++ b/packages/SettingsLib/FooterPreference/res/layout-v31/preference_footer.xml @@ -53,6 +53,7 @@ android:paddingTop="16dp" android:paddingBottom="8dp" android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" android:ellipsize="marquee" /> @@ -57,6 +58,7 @@ android:textAlignment="viewStart" android:textColor="?android:attr/textColorSecondary" android:maxLines="10" + android:hyphenationFrequency="normalFast" style="@style/PreferenceSummaryTextStyle"/> diff --git a/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml b/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml index 4d6e1b7f0ac84..b2a9037e3b797 100644 --- a/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml +++ b/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml @@ -33,5 +33,6 @@ android:clickable="false" android:longClickable="false" android:maxLines="10" + android:hyphenationFrequency="normalFast" android:textAppearance="@style/TextAppearance.TopIntroText"/> \ No newline at end of file diff --git a/packages/SettingsLib/TwoTargetPreference/res/layout-v31/preference_two_target.xml b/packages/SettingsLib/TwoTargetPreference/res/layout-v31/preference_two_target.xml index 2c35772de2cae..ac5807dc08de4 100644 --- a/packages/SettingsLib/TwoTargetPreference/res/layout-v31/preference_two_target.xml +++ b/packages/SettingsLib/TwoTargetPreference/res/layout-v31/preference_two_target.xml @@ -41,6 +41,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" + android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee"/> @@ -52,6 +53,7 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" android:maxLines="10"/> diff --git a/packages/SettingsLib/res/layout/preference_access_point.xml b/packages/SettingsLib/res/layout/preference_access_point.xml index 802d604a44f97..4ad9d8040aaa4 100644 --- a/packages/SettingsLib/res/layout/preference_access_point.xml +++ b/packages/SettingsLib/res/layout/preference_access_point.xml @@ -65,6 +65,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" + android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee" /> @@ -76,6 +77,7 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" android:maxLines="10" /> diff --git a/packages/SettingsLib/res/layout/preference_checkable_two_target.xml b/packages/SettingsLib/res/layout/preference_checkable_two_target.xml index f512f9b271315..cbe49cd5dba7c 100644 --- a/packages/SettingsLib/res/layout/preference_checkable_two_target.xml +++ b/packages/SettingsLib/res/layout/preference_checkable_two_target.xml @@ -62,6 +62,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" + android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee" /> @@ -73,6 +74,7 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" android:maxLines="10" /> diff --git a/packages/SettingsLib/res/layout/restricted_switch_preference.xml b/packages/SettingsLib/res/layout/restricted_switch_preference.xml index 169ae97c1a6d3..edea1444e83a3 100644 --- a/packages/SettingsLib/res/layout/restricted_switch_preference.xml +++ b/packages/SettingsLib/res/layout/restricted_switch_preference.xml @@ -52,6 +52,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" + android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee" /> @@ -62,6 +63,7 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" android:maxLines="10" />