diff options
| -rw-r--r-- | core/res/res/layout/alert_dialog_button_bar_leanback.xml | 59 | ||||
| -rw-r--r-- | core/res/res/layout/alert_dialog_leanback.xml | 128 | ||||
| -rw-r--r-- | core/res/res/values/dimens.xml | 4 | ||||
| -rw-r--r-- | core/res/res/values/styles_leanback.xml | 5 | ||||
| -rw-r--r-- | core/res/res/values/themes_leanback.xml | 12 |
5 files changed, 115 insertions, 93 deletions
diff --git a/core/res/res/layout/alert_dialog_button_bar_leanback.xml b/core/res/res/layout/alert_dialog_button_bar_leanback.xml new file mode 100644 index 000000000000..ea94af662dcf --- /dev/null +++ b/core/res/res/layout/alert_dialog_button_bar_leanback.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + Copyright (C) 2021 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. +--> + +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/buttonPanel" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:scrollbarAlwaysDrawVerticalTrack="true" + android:scrollIndicators="top|bottom" + android:fillViewport="true" + style="?attr/buttonBarStyle"> + <com.android.internal.widget.ButtonBarLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layoutDirection="locale" + android:orientation="horizontal" + android:gravity="start"> + + <Button + android:id="@+id/button1" + style="?attr/buttonBarPositiveButtonStyle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" /> + + <Button + android:id="@+id/button2" + style="?attr/buttonBarNegativeButtonStyle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" /> + + <Space + android:id="@+id/spacer" + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <Button + android:id="@+id/button3" + style="?attr/buttonBarNeutralButtonStyle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" /> + + </com.android.internal.widget.ButtonBarLayout> +</ScrollView> diff --git a/core/res/res/layout/alert_dialog_leanback.xml b/core/res/res/layout/alert_dialog_leanback.xml index 848015c28f4a..091613fd9b56 100644 --- a/core/res/res/layout/alert_dialog_leanback.xml +++ b/core/res/res/layout/alert_dialog_leanback.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <!-- - Copyright (C) 2014 The Android Open Source Project + Copyright (C) 2021 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. @@ -15,108 +15,70 @@ limitations under the License. --> -<LinearLayout +<com.android.internal.widget.AlertDialogLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/parentPanel" android:layout_width="match_parent" android:layout_height="wrap_content" - android:orientation="vertical" - android:background="@drawable/dialog_background_material" - android:translationZ="@dimen/floating_window_z" - android:layout_marginLeft="@dimen/leanback_alert_dialog_horizontal_margin" - android:layout_marginTop="@dimen/leanback_alert_dialog_vertical_margin" - android:layout_marginRight="@dimen/leanback_alert_dialog_horizontal_margin" - android:layout_marginBottom="@dimen/leanback_alert_dialog_vertical_margin"> + android:gravity="start|top" + android:orientation="vertical"> - <LinearLayout android:id="@+id/topPanel" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical"> - <LinearLayout android:id="@+id/title_template" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="horizontal" - android:gravity="center_vertical|start" - android:paddingStart="16dip" - android:paddingEnd="16dip" - android:paddingTop="16dip"> - <ImageView android:id="@+id/icon" - android:layout_width="32dip" - android:layout_height="32dip" - android:layout_marginEnd="8dip" - android:scaleType="fitCenter" - android:src="@null" /> - <TextView android:id="@+id/alertTitle" - style="?attr/windowTitleStyle" - android:singleLine="true" - android:ellipsize="end" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:textAlignment="viewStart" /> - </LinearLayout> - <!-- If the client uses a customTitle, it will be added here. --> - </LinearLayout> + <include layout="@layout/alert_dialog_title_material" /> - <LinearLayout android:id="@+id/contentPanel" + <FrameLayout + android:id="@+id/contentPanel" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_weight="1" - android:orientation="vertical" - android:minHeight="64dp"> - <ScrollView android:id="@+id/scrollView" + android:minHeight="48dp"> + + <ScrollView + android:id="@+id/scrollView" android:layout_width="match_parent" android:layout_height="wrap_content" android:clipToPadding="false"> - <TextView android:id="@+id/message" - style="?attr/textAppearanceMedium" + + <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" - android:paddingStart="16dip" - android:paddingEnd="16dip" - android:paddingTop="16dip" /> + android:orientation="vertical"> + + <Space + android:id="@+id/textSpacerNoTitle" + android:visibility="gone" + android:layout_width="match_parent" + android:layout_height="@dimen/dialog_padding_top_material" /> + + <TextView + android:id="@+id/message" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:paddingEnd="?attr/dialogPreferredPadding" + android:paddingStart="?attr/dialogPreferredPadding" + style="@style/TextAppearance.Material.Subhead" /> + + <Space + android:id="@+id/textSpacerNoButtons" + android:visibility="gone" + android:layout_width="match_parent" + android:layout_height="@dimen/dialog_padding_top_material" /> + </LinearLayout> </ScrollView> - </LinearLayout> + </FrameLayout> - <FrameLayout android:id="@+id/customPanel" + <FrameLayout + android:id="@+id/customPanel" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_weight="1" - android:minHeight="64dp"> - <FrameLayout android:id="@+android:id/custom" + android:minHeight="48dp"> + + <FrameLayout + android:id="@+id/custom" android:layout_width="match_parent" android:layout_height="wrap_content" /> </FrameLayout> - <LinearLayout android:id="@+id/buttonPanel" + <include android:layout_width="match_parent" android:layout_height="wrap_content" - android:minHeight="@dimen/alert_dialog_button_bar_height" - android:orientation="vertical" - android:gravity="end" - android:padding="16dip"> - <LinearLayout - style="?attr/buttonBarStyle" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layoutDirection="locale"> - <Button android:id="@+id/button3" - style="?attr/buttonBarButtonStyle" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:maxLines="2" - android:minHeight="@dimen/alert_dialog_button_bar_height" /> - <Button android:id="@+id/button2" - style="?attr/buttonBarButtonStyle" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:maxLines="2" - android:minHeight="@dimen/alert_dialog_button_bar_height" /> - <Button android:id="@+id/button1" - style="?attr/buttonBarButtonStyle" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:maxLines="2" - android:minHeight="@dimen/alert_dialog_button_bar_height" /> - </LinearLayout> - </LinearLayout> -</LinearLayout> + layout="@layout/alert_dialog_button_bar_leanback" /> +</com.android.internal.widget.AlertDialogLayout> diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml index 3b6e41ffa92b..debdab0b37ba 100644 --- a/core/res/res/values/dimens.xml +++ b/core/res/res/values/dimens.xml @@ -394,10 +394,6 @@ <dimen name="alert_dialog_button_bar_width">64dp</dimen> <!-- Dialog button bar height --> <dimen name="alert_dialog_button_bar_height">48dip</dimen> - <!-- Leanback dialog vertical margin --> - <dimen name="leanback_alert_dialog_vertical_margin">27dip</dimen> - <!-- Leanback dialog horizontal margin --> - <dimen name="leanback_alert_dialog_horizontal_margin">54dip</dimen> <!-- Default height of an action bar. --> <dimen name="action_bar_default_height">48dip</dimen> diff --git a/core/res/res/values/styles_leanback.xml b/core/res/res/values/styles_leanback.xml index 1ea70a95ec5b..7eaf36d5366a 100644 --- a/core/res/res/values/styles_leanback.xml +++ b/core/res/res/values/styles_leanback.xml @@ -16,6 +16,7 @@ <resources> <style name="AlertDialog.Leanback" parent="AlertDialog.Material"> <item name="buttonPanelSideLayout">@android:layout/alert_dialog_leanback_button_panel_side</item> + <item name="layout">@android:layout/alert_dialog_leanback</item> </style> <style name="AlertDialog.Leanback.Light"> @@ -35,6 +36,10 @@ <item name="android:layout_marginStart">10dp</item> </style> + <style name="Widget.Leanback.Button.ButtonBarGravityStart" parent="Widget.Leanback.Button"> + <item name="android:layout_marginEnd">10dp</item> + </style> + <style name="Widget.Leanback.ButtonBar" parent="Widget.Material.ButtonBar"> <item name="android:padding">?android:attr/dialogPreferredPadding</item> </style> diff --git a/core/res/res/values/themes_leanback.xml b/core/res/res/values/themes_leanback.xml index b01e5485fba0..efe582612982 100644 --- a/core/res/res/values/themes_leanback.xml +++ b/core/res/res/values/themes_leanback.xml @@ -22,7 +22,7 @@ <item name="timePickerStyle">@style/Widget.Leanback.TimePicker</item> <item name="datePickerStyle">@style/Widget.Leanback.DatePicker</item> <item name="numberPickerStyle">@style/Widget.Leanback.NumberPicker</item> - <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBar</item> + <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBarGravityStart</item> <item name="buttonBarStyle">@style/Widget.Leanback.ButtonBar</item> </style> @@ -34,7 +34,7 @@ <item name="timePickerStyle">@style/Widget.Leanback.TimePicker</item> <item name="datePickerStyle">@style/Widget.Leanback.DatePicker</item> <item name="numberPickerStyle">@style/Widget.Leanback.NumberPicker</item> - <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBar</item> + <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBarGravityStart</item> <item name="buttonBarStyle">@style/Widget.Leanback.ButtonBar</item> </style> @@ -46,7 +46,7 @@ <item name="timePickerStyle">@style/Widget.Leanback.TimePicker</item> <item name="datePickerStyle">@style/Widget.Leanback.DatePicker</item> <item name="numberPickerStyle">@style/Widget.Leanback.NumberPicker</item> - <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBar</item> + <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBarGravityStart</item> <item name="buttonBarStyle">@style/Widget.Leanback.ButtonBar</item> </style> @@ -58,7 +58,7 @@ <item name="timePickerStyle">@style/Widget.Leanback.TimePicker</item> <item name="datePickerStyle">@style/Widget.Leanback.DatePicker</item> <item name="numberPickerStyle">@style/Widget.Leanback.NumberPicker</item> - <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBar</item> + <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBarGravityStart</item> <item name="buttonBarStyle">@style/Widget.Leanback.ButtonBar</item> </style> @@ -70,7 +70,7 @@ <item name="timePickerStyle">@style/Widget.Leanback.TimePicker</item> <item name="datePickerStyle">@style/Widget.Leanback.DatePicker</item> <item name="numberPickerStyle">@style/Widget.Leanback.NumberPicker</item> - <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBar</item> + <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBarGravityStart</item> <item name="buttonBarStyle">@style/Widget.Leanback.ButtonBar</item> </style> @@ -82,7 +82,7 @@ <item name="timePickerStyle">@style/Widget.Leanback.TimePicker</item> <item name="datePickerStyle">@style/Widget.Leanback.DatePicker</item> <item name="numberPickerStyle">@style/Widget.Leanback.NumberPicker</item> - <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBar</item> + <item name="buttonBarButtonStyle">@style/Widget.Leanback.Button.ButtonBarGravityStart</item> <item name="buttonBarStyle">@style/Widget.Leanback.ButtonBar</item> </style> |