diff options
author | 2022-07-26 13:18:19 +0800 | |
---|---|---|
committer | 2022-08-04 00:35:04 +0000 | |
commit | e8cff4feea2832a4d79c499dc867aef4deb02c4e (patch) | |
tree | f9c15edc708b33382d33b225da3c58c94d54815c | |
parent | 32013bb060ce244a1400db49866502c43ab6870d (diff) |
Apply phrase based line breaking on most of Preference
- move related change to v33 folder for bater maintenance
Bug: 232992171
Test: manual
Change-Id: I269000147bddb027299367e2178f43597d8ab76c
26 files changed, 1133 insertions, 27 deletions
diff --git a/packages/SettingsLib/ActionButtonsPreference/res/layout-v31/settingslib_action_buttons.xml b/packages/SettingsLib/ActionButtonsPreference/res/layout-v31/settingslib_action_buttons.xml index a596a9a59ee8..7c3f5a566bdb 100644 --- a/packages/SettingsLib/ActionButtonsPreference/res/layout-v31/settingslib_action_buttons.xml +++ b/packages/SettingsLib/ActionButtonsPreference/res/layout-v31/settingslib_action_buttons.xml @@ -28,8 +28,7 @@ style="@style/SettingsLibActionButton" android:layout_width="0dp" android:layout_height="match_parent" - android:layout_weight="1" - android:hyphenationFrequency="normalFast"/> + android:layout_weight="1"/> <View android:id="@+id/divider1" @@ -44,8 +43,7 @@ style="@style/SettingsLibActionButton" android:layout_width="0dp" android:layout_height="match_parent" - android:layout_weight="1" - android:hyphenationFrequency="normalFast"/> + android:layout_weight="1"/> <View android:id="@+id/divider2" @@ -60,8 +58,7 @@ style="@style/SettingsLibActionButton" android:layout_width="0dp" android:layout_height="match_parent" - android:layout_weight="1" - android:hyphenationFrequency="normalFast"/> + android:layout_weight="1"/> <View android:id="@+id/divider3" @@ -76,6 +73,5 @@ style="@style/SettingsLibActionButton" android:layout_width="0dp" android:layout_height="match_parent" - android:layout_weight="1" - android:hyphenationFrequency="normalFast"/> + android:layout_weight="1"/> </LinearLayout> diff --git a/packages/SettingsLib/ActionButtonsPreference/res/layout-v33/settingslib_action_buttons.xml b/packages/SettingsLib/ActionButtonsPreference/res/layout-v33/settingslib_action_buttons.xml new file mode 100644 index 000000000000..b4640eea77df --- /dev/null +++ b/packages/SettingsLib/ActionButtonsPreference/res/layout-v33/settingslib_action_buttons.xml @@ -0,0 +1,85 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_margin="8dp" + android:paddingHorizontal="8dp" + android:orientation="horizontal"> + + <Button + android:id="@+id/button1" + style="@style/SettingsLibActionButton" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:lineBreakWordStyle="phrase" + android:hyphenationFrequency="normalFast"/> + + <View + android:id="@+id/divider1" + android:layout_width="1dp" + android:layout_height="match_parent" + android:paddingHorizontal="4dp" + android:visibility="gone" + android:background="?android:colorBackground" /> + + <Button + android:id="@+id/button2" + style="@style/SettingsLibActionButton" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:lineBreakWordStyle="phrase" + android:hyphenationFrequency="normalFast"/> + + <View + android:id="@+id/divider2" + android:layout_width="1dp" + android:layout_height="match_parent" + android:paddingHorizontal="4dp" + android:visibility="gone" + android:background="?android:colorBackground" /> + + <Button + android:id="@+id/button3" + style="@style/SettingsLibActionButton" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:lineBreakWordStyle="phrase" + android:hyphenationFrequency="normalFast"/> + + <View + android:id="@+id/divider3" + android:layout_width="1dp" + android:layout_height="match_parent" + android:paddingHorizontal="4dp" + android:visibility="gone" + android:background="?android:colorBackground" /> + + <Button + android:id="@+id/button4" + style="@style/SettingsLibActionButton" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:lineBreakWordStyle="phrase" + android:hyphenationFrequency="normalFast"/> +</LinearLayout> diff --git a/packages/SettingsLib/AppPreference/res/layout-v33/preference_app.xml b/packages/SettingsLib/AppPreference/res/layout-v33/preference_app.xml new file mode 100644 index 000000000000..897585729596 --- /dev/null +++ b/packages/SettingsLib/AppPreference/res/layout-v33/preference_app.xml @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="?android:attr/selectableItemBackground" + android:gravity="center_vertical" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"> + + <LinearLayout + android:id="@+id/icon_frame" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="start|center_vertical" + android:minWidth="@dimen/secondary_app_icon_size" + android:orientation="horizontal" + android:paddingEnd="16dp" + android:paddingTop="4dp" + android:paddingBottom="4dp"> + <ImageView + android:id="@android:id/icon" + android:layout_width="@dimen/secondary_app_icon_size" + android:layout_height="@dimen/secondary_app_icon_size"/> + </LinearLayout> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:orientation="vertical" + android:paddingTop="16dp" + android:paddingBottom="16dp"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:ellipsize="marquee" + android:fadingEdge="horizontal" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem"/> + + <TextView + android:id="@android:id/summary" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:textDirection="locale" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceSmall" + android:textColor="?android:attr/textColorSecondary"/> + + <TextView + android:id="@+id/appendix" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:ellipsize="end" + android:maxLines="1" + android:textAppearance="?android:attr/textAppearanceSmall" + android:textColor="?android:attr/textColorSecondary" + android:visibility="gone"/> + + <ProgressBar + android:id="@android:id/progress" + style="?android:attr/progressBarStyleHorizontal" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="4dp" + android:max="100" + android:visibility="gone"/> + </LinearLayout> + + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:gravity="center_vertical|end" + android:minWidth="@dimen/two_target_min_width" + android:orientation="vertical"/> + +</LinearLayout> diff --git a/packages/SettingsLib/AppPreference/res/layout-v33/preference_app_header.xml b/packages/SettingsLib/AppPreference/res/layout-v33/preference_app_header.xml new file mode 100644 index 000000000000..3a219b9045c8 --- /dev/null +++ b/packages/SettingsLib/AppPreference/res/layout-v33/preference_app_header.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:orientation="vertical" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:paddingBottom="16dp" + android:paddingTop="8dp" + android:clickable="false"> + + <TextView + android:id="@+id/apps_top_intro_text" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:textDirection="locale" + android:clickable="false" + android:longClickable="false" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="@style/TextAppearance.TopIntroText" /> + +</LinearLayout> diff --git a/packages/SettingsLib/AppPreference/res/layout/preference_app.xml b/packages/SettingsLib/AppPreference/res/layout/preference_app.xml index 12db901bdb69..e65f7de2466a 100644 --- a/packages/SettingsLib/AppPreference/res/layout/preference_app.xml +++ b/packages/SettingsLib/AppPreference/res/layout/preference_app.xml @@ -55,7 +55,6 @@ android:ellipsize="marquee" android:fadingEdge="horizontal" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem"/> <TextView @@ -63,7 +62,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:textDirection="locale" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="?android:attr/textColorSecondary"/> 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 ec091bf4de67..f4af9c7e0e78 100644 --- a/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java +++ b/packages/SettingsLib/CollapsingToolbarBaseActivity/src/com/android/settingslib/collapsingtoolbar/CollapsingToolbarDelegate.java @@ -19,6 +19,7 @@ package com.android.settingslib.collapsingtoolbar; import static android.text.Layout.HYPHENATION_FREQUENCY_NORMAL_FAST; import android.app.ActionBar; +import android.graphics.text.LineBreakConfig; import android.os.Build; import android.view.LayoutInflater; import android.view.View; @@ -88,6 +89,12 @@ public class CollapsingToolbarDelegate { mCollapsingToolbarLayout.setLineSpacingMultiplier(TOOLBAR_LINE_SPACING_MULTIPLIER); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { mCollapsingToolbarLayout.setHyphenationFrequency(HYPHENATION_FREQUENCY_NORMAL_FAST); + mCollapsingToolbarLayout.setStaticLayoutBuilderConfigurer(builder -> + builder.setLineBreakConfig( + new LineBreakConfig.Builder() + .setLineBreakWordStyle( + LineBreakConfig.LINE_BREAK_WORD_STYLE_PHRASE) + .build())); } } disableCollapsingToolbarLayoutScrollingBehavior(); 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 a8c7a3f936ee..522de93be1ff 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 @@ -22,6 +22,7 @@ import android.app.ActionBar; import android.app.Activity; import android.content.Context; import android.content.res.TypedArray; +import android.graphics.text.LineBreakConfig; import android.os.Build; import android.text.TextUtils; import android.util.AttributeSet; @@ -110,6 +111,12 @@ public class CollapsingCoordinatorLayout extends CoordinatorLayout { mCollapsingToolbarLayout.setLineSpacingMultiplier(TOOLBAR_LINE_SPACING_MULTIPLIER); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { mCollapsingToolbarLayout.setHyphenationFrequency(HYPHENATION_FREQUENCY_NORMAL_FAST); + mCollapsingToolbarLayout.setStaticLayoutBuilderConfigurer(builder -> + builder.setLineBreakConfig( + new LineBreakConfig.Builder() + .setLineBreakWordStyle( + LineBreakConfig.LINE_BREAK_WORD_STYLE_PHRASE) + .build())); } 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 2c1fdd493c8a..42700b3ace07 100644 --- a/packages/SettingsLib/FooterPreference/res/layout-v31/preference_footer.xml +++ b/packages/SettingsLib/FooterPreference/res/layout-v31/preference_footer.xml @@ -53,7 +53,6 @@ android:paddingTop="16dp" android:paddingBottom="8dp" android:textColor="?android:attr/textColorSecondary" - android:hyphenationFrequency="normalFast" android:ellipsize="marquee" /> <com.android.settingslib.widget.LinkTextView diff --git a/packages/SettingsLib/FooterPreference/res/layout-v33/preference_footer.xml b/packages/SettingsLib/FooterPreference/res/layout-v33/preference_footer.xml new file mode 100644 index 000000000000..a2f25100edad --- /dev/null +++ b/packages/SettingsLib/FooterPreference/res/layout-v33/preference_footer.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:background="?android:attr/selectableItemBackground" + android:orientation="vertical" + android:clipToPadding="false"> + + <LinearLayout + android:id="@+id/icon_frame" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:minWidth="56dp" + android:gravity="start|top" + android:orientation="horizontal" + android:paddingEnd="12dp" + android:paddingTop="16dp" + android:paddingBottom="4dp"> + <ImageView + android:id="@android:id/icon" + android:layout_width="wrap_content" + android:layout_height="wrap_content"/> + </LinearLayout> + + <LinearLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:orientation="vertical"> + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingTop="16dp" + android:paddingBottom="8dp" + android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:ellipsize="marquee" /> + + <com.android.settingslib.widget.LinkTextView + android:id="@+id/settingslib_learn_more" + android:text="@string/settingslib_learn_more_text" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingBottom="8dp" + android:clickable="true" + android:visibility="gone" + style="@style/TextAppearance.Footer.Title.SettingsLib"/> + </LinearLayout> + +</LinearLayout>
\ No newline at end of file diff --git a/packages/SettingsLib/MainSwitchPreference/res/layout-v33/settingslib_main_switch_bar.xml b/packages/SettingsLib/MainSwitchPreference/res/layout-v33/settingslib_main_switch_bar.xml new file mode 100644 index 000000000000..35d13230a3b7 --- /dev/null +++ b/packages/SettingsLib/MainSwitchPreference/res/layout-v33/settingslib_main_switch_bar.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:layout_height="wrap_content" + android:layout_width="match_parent" + android:background="?android:attr/colorBackground" + android:orientation="vertical"> + + <LinearLayout + android:id="@+id/frame" + android:minHeight="@dimen/settingslib_min_switch_bar_height" + android:layout_height="wrap_content" + android:layout_width="match_parent" + android:layout_margin="@dimen/settingslib_switchbar_margin" + android:paddingStart="@dimen/settingslib_switchbar_padding_left" + android:paddingEnd="@dimen/settingslib_switchbar_padding_right"> + + <TextView + android:id="@+id/switch_text" + android:layout_height="wrap_content" + android:layout_width="0dp" + android:layout_weight="1" + android:layout_marginEnd="@dimen/settingslib_switch_title_margin" + android:layout_marginVertical="@dimen/settingslib_switch_title_margin" + android:layout_gravity="center_vertical" + android:ellipsize="end" + android:textAppearance="?android:attr/textAppearanceListItem" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + style="@style/MainSwitchText.Settingslib" /> + + <ImageView + android:id="@+id/restricted_icon" + android:layout_width="@dimen/settingslib_restricted_icon_size" + android:layout_height="@dimen/settingslib_restricted_icon_size" + android:tint="?android:attr/colorAccent" + android:layout_gravity="center_vertical" + android:layout_marginEnd="@dimen/settingslib_restricted_icon_margin_end" + android:src="@drawable/settingslib_ic_info" + android:visibility="gone" /> + + <Switch + android:id="@android:id/switch_widget" + android:layout_width="wrap_content" + android:layout_height="48dp" + android:layout_gravity="center_vertical" + android:focusable="false" + android:clickable="false" + android:theme="@style/Switch.SettingsLib"/> + </LinearLayout> + +</LinearLayout> + + diff --git a/packages/SettingsLib/RadioButtonPreference/res/layout-v33/preference_radio.xml b/packages/SettingsLib/RadioButtonPreference/res/layout-v33/preference_radio.xml new file mode 100644 index 000000000000..bb8ac286e38d --- /dev/null +++ b/packages/SettingsLib/RadioButtonPreference/res/layout-v33/preference_radio.xml @@ -0,0 +1,127 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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:settings="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="?android:attr/selectableItemBackground" + android:gravity="center_vertical" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"> + + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:paddingHorizontal="20dp" + android:gravity="center" + android:minWidth="56dp" + android:orientation="vertical"/> + + <LinearLayout + android:id="@+id/icon_frame" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:minWidth="32dp" + android:orientation="horizontal" + android:layout_marginEnd="16dp" + android:paddingTop="4dp" + android:paddingBottom="4dp"> + <androidx.preference.internal.PreferenceImageView + android:id="@android:id/icon" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + settings:maxWidth="@dimen/secondary_app_icon_size" + settings:maxHeight="@dimen/secondary_app_icon_size"/> + </LinearLayout> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:orientation="vertical" + android:paddingTop="16dp" + android:paddingBottom="16dp" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem"/> + + <LinearLayout + android:id="@+id/summary_container" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:visibility="gone"> + <TextView + android:id="@android:id/summary" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:textAppearance="?android:attr/textAppearanceSmall" + android:textAlignment="viewStart" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textColor="?android:attr/textColorSecondary"/> + + <TextView + android:id="@+id/appendix" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:textAppearance="?android:attr/textAppearanceSmall" + android:textAlignment="viewEnd" + android:textColor="?android:attr/textColorSecondary" + android:maxLines="1" + android:visibility="gone" + android:ellipsize="end"/> + </LinearLayout> + </LinearLayout> + + <LinearLayout + android:id="@+id/radio_extra_widget_container" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:orientation="horizontal" + android:gravity="center_vertical"> + <View + android:layout_width=".75dp" + android:layout_height="32dp" + android:layout_marginTop="16dp" + android:layout_marginBottom="16dp" + android:background="?android:attr/dividerVertical" /> + <ImageView + android:id="@+id/radio_extra_widget" + android:layout_width="match_parent" + android:minWidth="@dimen/two_target_min_width" + android:layout_height="fill_parent" + android:src="@drawable/ic_settings_accent" + android:contentDescription="@string/settings_label" + android:paddingStart="24dp" + android:paddingEnd="24dp" + android:layout_gravity="center" + android:background="?android:attr/selectableItemBackground" /> + </LinearLayout> +</LinearLayout> diff --git a/packages/SettingsLib/RadioButtonPreference/res/layout/preference_radio.xml b/packages/SettingsLib/RadioButtonPreference/res/layout/preference_radio.xml index 64d100a43e68..906ff2cc09d5 100644 --- a/packages/SettingsLib/RadioButtonPreference/res/layout/preference_radio.xml +++ b/packages/SettingsLib/RadioButtonPreference/res/layout/preference_radio.xml @@ -66,7 +66,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem"/> <LinearLayout @@ -81,7 +80,6 @@ android:layout_weight="1" android:textAppearance="?android:attr/textAppearanceSmall" android:textAlignment="viewStart" - android:hyphenationFrequency="normalFast" android:textColor="?android:attr/textColorSecondary"/> <TextView diff --git a/packages/SettingsLib/SelectorWithWidgetPreference/res/layout-v33/preference_selector_with_widget.xml b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout-v33/preference_selector_with_widget.xml new file mode 100644 index 000000000000..0b274646214a --- /dev/null +++ b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout-v33/preference_selector_with_widget.xml @@ -0,0 +1,127 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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:settings="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="?android:attr/selectableItemBackground" + android:gravity="center_vertical" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"> + + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:paddingHorizontal="20dp" + android:gravity="center" + android:minWidth="56dp" + android:orientation="vertical"/> + + <LinearLayout + android:id="@+id/icon_frame" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:minWidth="32dp" + android:orientation="horizontal" + android:layout_marginEnd="16dp" + android:paddingTop="4dp" + android:paddingBottom="4dp"> + <androidx.preference.internal.PreferenceImageView + android:id="@android:id/icon" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + settings:maxWidth="@dimen/secondary_app_icon_size" + settings:maxHeight="@dimen/secondary_app_icon_size"/> + </LinearLayout> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:orientation="vertical" + android:paddingTop="16dp" + android:paddingBottom="16dp" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem"/> + + <LinearLayout + android:id="@+id/summary_container" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:visibility="gone"> + <TextView + android:id="@android:id/summary" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:textAppearance="?android:attr/textAppearanceSmall" + android:textAlignment="viewStart" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textColor="?android:attr/textColorSecondary"/> + + <TextView + android:id="@+id/appendix" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:textAppearance="?android:attr/textAppearanceSmall" + android:textAlignment="viewEnd" + android:textColor="?android:attr/textColorSecondary" + android:maxLines="1" + android:visibility="gone" + android:ellipsize="end"/> + </LinearLayout> + </LinearLayout> + + <LinearLayout + android:id="@+id/selector_extra_widget_container" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:orientation="horizontal" + android:gravity="center_vertical"> + <View + android:layout_width=".75dp" + android:layout_height="32dp" + android:layout_marginTop="16dp" + android:layout_marginBottom="16dp" + android:background="?android:attr/dividerVertical" /> + <ImageView + android:id="@+id/selector_extra_widget" + android:layout_width="match_parent" + android:minWidth="@dimen/two_target_min_width" + android:layout_height="fill_parent" + android:src="@drawable/ic_settings_accent" + android:contentDescription="@string/settings_label" + android:paddingStart="24dp" + android:paddingEnd="24dp" + android:layout_gravity="center" + android:background="?android:attr/selectableItemBackground" /> + </LinearLayout> +</LinearLayout> diff --git a/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_selector_with_widget.xml b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_selector_with_widget.xml index 2a550ef4e457..8bb56ff0a07d 100644 --- a/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_selector_with_widget.xml +++ b/packages/SettingsLib/SelectorWithWidgetPreference/res/layout/preference_selector_with_widget.xml @@ -66,7 +66,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem"/> <LinearLayout @@ -81,7 +80,6 @@ android:layout_weight="1" android:textAppearance="?android:attr/textAppearanceSmall" android:textAlignment="viewStart" - android:hyphenationFrequency="normalFast" android:textColor="?android:attr/textColorSecondary"/> <TextView diff --git a/packages/SettingsLib/SettingsTheme/res/layout-v31/settingslib_preference.xml b/packages/SettingsLib/SettingsTheme/res/layout-v31/settingslib_preference.xml index d4d466a99301..23aa993cc8cc 100644 --- a/packages/SettingsLib/SettingsTheme/res/layout-v31/settingslib_preference.xml +++ b/packages/SettingsLib/SettingsTheme/res/layout-v31/settingslib_preference.xml @@ -43,7 +43,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee"/> @@ -58,7 +57,6 @@ android:textAlignment="viewStart" android:textColor="?android:attr/textColorSecondary" android:maxLines="10" - android:hyphenationFrequency="normalFast" style="@style/PreferenceSummaryTextStyle"/> </RelativeLayout> diff --git a/packages/SettingsLib/SettingsTheme/res/layout-v33/settingslib_preference.xml b/packages/SettingsLib/SettingsTheme/res/layout-v33/settingslib_preference.xml new file mode 100644 index 000000000000..70ce3749ea19 --- /dev/null +++ b/packages/SettingsLib/SettingsTheme/res/layout-v33/settingslib_preference.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:gravity="center_vertical" + android:paddingLeft="?android:attr/listPreferredItemPaddingLeft" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingRight="?android:attr/listPreferredItemPaddingRight" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:background="?android:attr/selectableItemBackground" + android:clipToPadding="false" + android:baselineAligned="false"> + + <include layout="@layout/settingslib_icon_frame"/> + + <RelativeLayout + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="16dp" + android:paddingBottom="16dp"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem" + android:ellipsize="marquee"/> + + <TextView + android:id="@android:id/summary" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@android:id/title" + android:layout_alignLeft="@android:id/title" + android:layout_alignStart="@android:id/title" + android:layout_gravity="start" + android:textAlignment="viewStart" + android:textColor="?android:attr/textColorSecondary" + android:maxLines="10" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + style="@style/PreferenceSummaryTextStyle"/> + + </RelativeLayout> + + <!-- Preference should place its actual preference widget here. --> + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:gravity="end|center_vertical" + android:paddingLeft="16dp" + android:paddingStart="16dp" + android:paddingRight="0dp" + android:paddingEnd="0dp" + android:orientation="vertical"/> + +</LinearLayout>
\ No newline at end of file diff --git a/packages/SettingsLib/TopIntroPreference/res/layout-v33/top_intro_preference.xml b/packages/SettingsLib/TopIntroPreference/res/layout-v33/top_intro_preference.xml new file mode 100644 index 000000000000..6046d911879e --- /dev/null +++ b/packages/SettingsLib/TopIntroPreference/res/layout-v33/top_intro_preference.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:paddingBottom="16dp" + android:paddingTop="8dp" + android:background="?android:attr/selectableItemBackground" + android:clipToPadding="false"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:clickable="false" + android:longClickable="false" + android:maxLines="10" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="@style/TextAppearance.TopIntroText"/> +</LinearLayout>
\ No newline at end of file diff --git a/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml b/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml index b2a9037e3b79..4d6e1b7f0ac8 100644 --- a/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml +++ b/packages/SettingsLib/TopIntroPreference/res/layout/top_intro_preference.xml @@ -33,6 +33,5 @@ android:clickable="false" android:longClickable="false" android:maxLines="10" - android:hyphenationFrequency="normalFast" android:textAppearance="@style/TextAppearance.TopIntroText"/> </LinearLayout>
\ 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 ac5807dc08de..2c35772de2ca 100644 --- a/packages/SettingsLib/TwoTargetPreference/res/layout-v31/preference_two_target.xml +++ b/packages/SettingsLib/TwoTargetPreference/res/layout-v31/preference_two_target.xml @@ -41,7 +41,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee"/> @@ -53,7 +52,6 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" - android:hyphenationFrequency="normalFast" android:maxLines="10"/> </RelativeLayout> diff --git a/packages/SettingsLib/TwoTargetPreference/res/layout-v33/preference_two_target.xml b/packages/SettingsLib/TwoTargetPreference/res/layout-v33/preference_two_target.xml new file mode 100644 index 000000000000..0bca9abfc6e2 --- /dev/null +++ b/packages/SettingsLib/TwoTargetPreference/res/layout-v33/preference_two_target.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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. + --> + +<!-- Based off preference_material_settings.xml except that ripple on only on the left side. --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:gravity="center_vertical" + android:background="?android:attr/selectableItemBackground" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:clipToPadding="false"> + + <include layout="@layout/settingslib_icon_frame"/> + + <RelativeLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="16dp" + android:paddingBottom="16dp"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem" + android:ellipsize="marquee"/> + + <TextView + android:id="@android:id/summary" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@android:id/title" + android:layout_alignStart="@android:id/title" + android:textAppearance="?android:attr/textAppearanceListItemSecondary" + android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:maxLines="10"/> + + </RelativeLayout> + + <include layout="@layout/preference_two_target_divider" /> + + <!-- Preference should place its actual preference widget here. --> + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:minWidth="@dimen/two_target_min_width" + android:gravity="center" + android:orientation="vertical" /> + +</LinearLayout> diff --git a/packages/SettingsLib/res/layout-v33/preference_access_point.xml b/packages/SettingsLib/res/layout-v33/preference_access_point.xml new file mode 100644 index 000000000000..81bfeffdded9 --- /dev/null +++ b/packages/SettingsLib/res/layout-v33/preference_access_point.xml @@ -0,0 +1,110 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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. + --> + +<!-- Based off preference_two_target.xml with Material ripple moved to parent for full ripple. --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:settings="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:gravity="center_vertical" + android:background="?android:attr/selectableItemBackground" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:clipToPadding="false"> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:gravity="start|center_vertical" + android:clipToPadding="false"> + + <LinearLayout + android:id="@+id/icon_frame" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="start|center_vertical" + android:minWidth="48dp" + android:orientation="horizontal" + android:clipToPadding="false" + android:paddingTop="4dp" + android:paddingBottom="4dp"> + <androidx.preference.internal.PreferenceImageView + android:id="@android:id/icon" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + settings:maxWidth="48dp" + settings:maxHeight="48dp" /> + </LinearLayout> + + <RelativeLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="16dp" + android:paddingBottom="16dp"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem" + android:ellipsize="marquee" /> + + <TextView + android:id="@android:id/summary" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@android:id/title" + android:layout_alignStart="@android:id/title" + android:textAppearance="?android:attr/textAppearanceListItemSecondary" + android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:maxLines="10" /> + + </RelativeLayout> + + </LinearLayout> + + <include layout="@layout/preference_two_target_divider" /> + + <!-- Preference should place its actual preference widget here. --> + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:minWidth="@dimen/two_target_min_width" + android:gravity="center" + android:orientation="vertical" /> + + <ImageButton + android:id="@+id/icon_button" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:minWidth="@dimen/two_target_min_width" + android:minHeight="@dimen/min_tap_target_size" + android:layout_gravity="center" + android:background="?android:attr/selectableItemBackground" + android:visibility="gone"> + </ImageButton> +</LinearLayout> diff --git a/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml b/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml new file mode 100644 index 000000000000..7ad018cfbcf4 --- /dev/null +++ b/packages/SettingsLib/res/layout-v33/preference_checkable_two_target.xml @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2022 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. + --> + +<!-- Based off preference_material_settings.xml except that ripple on only on the left side. --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:settings="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:gravity="center_vertical" + android:background="@android:color/transparent" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:clipToPadding="false"> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" + android:background="?android:attr/selectableItemBackground" + android:gravity="start|center_vertical" + android:clipToPadding="false"> + + <LinearLayout + android:id="@+id/checkbox_container" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:gravity="start|center_vertical" + android:minWidth="48dp" + android:minHeight="48dp" + android:orientation="horizontal" + android:clipToPadding="false" + android:paddingTop="4dp" + android:paddingBottom="4dp"> + <include layout="@layout/preference_widget_checkbox" /> + </LinearLayout> + + <RelativeLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="16dp" + android:paddingBottom="16dp"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem" + android:ellipsize="marquee" /> + + <TextView + android:id="@android:id/summary" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@android:id/title" + android:layout_alignStart="@android:id/title" + android:textAppearance="?android:attr/textAppearanceListItemSecondary" + android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:maxLines="10" /> + + </RelativeLayout> + + </LinearLayout> + + <include layout="@layout/preference_two_target_divider" /> + + <!-- Preference should place its actual preference widget here. --> + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:minWidth="@dimen/two_target_min_width" + android:gravity="center" + android:orientation="vertical" /> + +</LinearLayout>
\ No newline at end of file diff --git a/packages/SettingsLib/res/layout-v33/restricted_switch_preference.xml b/packages/SettingsLib/res/layout-v33/restricted_switch_preference.xml new file mode 100644 index 000000000000..31e9696813af --- /dev/null +++ b/packages/SettingsLib/res/layout-v33/restricted_switch_preference.xml @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2022 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" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:gravity="center_vertical" + android:paddingStart="?android:attr/listPreferredItemPaddingStart" + android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" + android:background="?android:attr/selectableItemBackground" + android:clipToPadding="false"> + + <LinearLayout + android:id="@+id/icon_frame" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:minWidth="56dp" + android:gravity="start|center_vertical" + android:orientation="horizontal" + android:paddingEnd="12dp" + android:paddingTop="4dp" + android:paddingBottom="4dp"> + <com.android.internal.widget.PreferenceImageView + android:id="@android:id/icon" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxWidth="48dp" + android:maxHeight="48dp" /> + </LinearLayout> + + <RelativeLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1" + android:paddingTop="16dp" + android:paddingBottom="16dp"> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:maxLines="2" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:textAppearance="?android:attr/textAppearanceListItem" + android:ellipsize="marquee" /> + + <TextView + android:id="@android:id/summary" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@android:id/title" + android:layout_alignStart="@android:id/title" + android:textAppearance="?android:attr/textAppearanceListItemSecondary" + android:textColor="?android:attr/textColorSecondary" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:maxLines="10" /> + + <TextView + android:id="@+id/additional_summary" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@android:id/summary" + android:layout_alignStart="@android:id/summary" + android:textAppearance="?android:attr/textAppearanceListItemSecondary" + android:textColor="?android:attr/textColorSecondary" + android:maxLines="10" + android:hyphenationFrequency="normalFast" + android:lineBreakWordStyle="phrase" + android:visibility="gone" /> + </RelativeLayout> + + <!-- Preference should place its actual preference widget here. --> + <LinearLayout + android:id="@android:id/widget_frame" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:gravity="end|center_vertical" + android:paddingStart="16dp" + android:orientation="vertical" /> + +</LinearLayout> diff --git a/packages/SettingsLib/res/layout/preference_access_point.xml b/packages/SettingsLib/res/layout/preference_access_point.xml index 4ad9d8040aaa..802d604a44f9 100644 --- a/packages/SettingsLib/res/layout/preference_access_point.xml +++ b/packages/SettingsLib/res/layout/preference_access_point.xml @@ -65,7 +65,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee" /> @@ -77,7 +76,6 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" - android:hyphenationFrequency="normalFast" android:maxLines="10" /> </RelativeLayout> diff --git a/packages/SettingsLib/res/layout/preference_checkable_two_target.xml b/packages/SettingsLib/res/layout/preference_checkable_two_target.xml index cbe49cd5dba7..f512f9b27131 100644 --- a/packages/SettingsLib/res/layout/preference_checkable_two_target.xml +++ b/packages/SettingsLib/res/layout/preference_checkable_two_target.xml @@ -62,7 +62,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee" /> @@ -74,7 +73,6 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" - android:hyphenationFrequency="normalFast" android:maxLines="10" /> </RelativeLayout> diff --git a/packages/SettingsLib/res/layout/restricted_switch_preference.xml b/packages/SettingsLib/res/layout/restricted_switch_preference.xml index edea1444e83a..169ae97c1a6d 100644 --- a/packages/SettingsLib/res/layout/restricted_switch_preference.xml +++ b/packages/SettingsLib/res/layout/restricted_switch_preference.xml @@ -52,7 +52,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="2" - android:hyphenationFrequency="normalFast" android:textAppearance="?android:attr/textAppearanceListItem" android:ellipsize="marquee" /> @@ -63,7 +62,6 @@ android:layout_alignStart="@android:id/title" android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" - android:hyphenationFrequency="normalFast" android:maxLines="10" /> <TextView android:id="@+id/additional_summary" @@ -74,7 +72,6 @@ android:textAppearance="?android:attr/textAppearanceListItemSecondary" android:textColor="?android:attr/textColorSecondary" android:maxLines="10" - android:hyphenationFrequency="normalFast" android:visibility="gone" /> </RelativeLayout> |