[Theme] Added the Expressive themes.

PiperOrigin-RevId: 724438050
This commit is contained in:
pekingme 2025-02-07 12:39:41 -08:00 committed by drchen
parent 755981ad91
commit 2d3471fe88
14 changed files with 388 additions and 105 deletions

View File

@ -16,7 +16,7 @@
-->
<resources xmlns:tools="http://schemas.android.com/tools">
<style name="Theme.Catalog" parent="Theme.Material3.DayNight.NoActionBar">
<style name="Theme.Catalog" parent="Theme.Material3Expressive.DayNight.NoActionBar">
<item name="preferenceTheme">@style/CatalogPreferenceThemeOverlay</item>
<item name="catalogToolbarStyle">@style/Widget.Catalog.Toolbar</item>
<item name="catalogToolbarWithCloseButtonStyle">@style/Widget.Catalog.Toolbar.WithCloseButton</item>

View File

@ -15,6 +15,91 @@
~ limitations under the License.
-->
<resources>
<!-- Themes for M3 Expressive Dialogs. -->
<!--
Themes in the "Theme.Material3Expressive" family will contain a default full color scheme.
These theme declarations contain any version-independent specification. Items
that need to vary based on platform version should be defined in the corresponding
"Base.Theme" theme.
-->
<style name="Theme.Material3Expressive.Light.Dialog" parent="Base.Theme.Material3Expressive.Light.Dialog"/>
<style name="Theme.Material3Expressive.Dark.Dialog" parent="Base.Theme.Material3Expressive.Dark.Dialog"/>
<!--
Material 3 Expressive theme for alert dialog windows, which is used by the AlertDialog class.
This is basically a dialog but sets the background to empty so it can do
two-tone backgrounds. For applications targeting Honeycomb or newer, this is the default
AlertDialog theme.
-->
<style name="Theme.Material3Expressive.Light.Dialog.Alert" parent="Base.Theme.Material3Expressive.Light.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<style name="Theme.Material3Expressive.Dark.Dialog.Alert" parent="Base.Theme.Material3Expressive.Dark.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<!--
Variant of Theme.Material3Expressive.Dialog that has a nice minimum width for a regular dialog.
-->
<style name="Theme.Material3Expressive.Light.Dialog.MinWidth" parent="Base.Theme.Material3Expressive.Light.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<style name="Theme.Material3Expressive.Dark.Dialog.MinWidth" parent="Base.Theme.Material3Expressive.Dark.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<!-- Themes for M3 Dialogs. -->
<!--
Themes in the "Theme.Material3" family will contain a default full color scheme.
These theme declarations contain any version-independent specification. Items
that need to vary based on platform version should be defined in the corresponding
"Base.Theme" theme.
-->
<style name="Theme.Material3.Light.Dialog" parent="Base.Theme.Material3.Light.Dialog"/>
<style name="Theme.Material3.Dark.Dialog" parent="Base.Theme.Material3.Dark.Dialog"/>
<!--
Material 3 theme for alert dialog windows, which is used by the AlertDialog class.
This is basically a dialog but sets the background to empty so it can do
two-tone backgrounds. For applications targeting Honeycomb or newer, this is the default
AlertDialog theme.
-->
<style name="Theme.Material3.Light.Dialog.Alert" parent="Base.Theme.Material3.Light.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<style name="Theme.Material3.Dark.Dialog.Alert" parent="Base.Theme.Material3.Dark.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<!--
Variant of Theme.Material3.Dialog that has a nice minimum width for a regular dialog.
-->
<style name="Theme.Material3.Light.Dialog.MinWidth" parent="Base.Theme.Material3.Light.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<style name="Theme.Material3.Dark.Dialog.MinWidth" parent="Base.Theme.Material3.Dark.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<!-- Themes for MaterialComponents Dialogs. -->
<!--
@ -53,46 +138,4 @@
<style name="Theme.MaterialComponents.Light.Dialog.FixedSize" parent="Base.Theme.MaterialComponents.Light.Dialog.FixedSize"/>
<!-- Themes for M3 Dialogs. -->
<!--
Themes in the "Theme.Material3" family will contain a default full color scheme.
These theme declarations contain any version-independent specification. Items
that need to vary based on platform version should be defined in the corresponding
"Base.Theme" theme.
-->
<style name="Theme.Material3.Light.Dialog" parent="Base.Theme.Material3.Light.Dialog"/>
<style name="Theme.Material3.Dark.Dialog" parent="Base.Theme.Material3.Dark.Dialog"/>
<!--
Material theme for alert dialog windows, which is used by the AlertDialog class.
This is basically a dialog but sets the background to empty so it can do
two-tone backgrounds. For applications targeting Honeycomb or newer, this is the default
AlertDialog theme.
-->
<style name="Theme.Material3.Light.Dialog.Alert" parent="Base.Theme.Material3.Light.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<style name="Theme.Material3.Dark.Dialog.Alert" parent="Base.Theme.Material3.Dark.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<!--
Variant of Theme.Material3.Dialog that has a nice minimum width for a regular dialog.
-->
<style name="Theme.Material3.Light.Dialog.MinWidth" parent="Base.Theme.Material3.Light.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
<style name="Theme.Material3.Dark.Dialog.MinWidth" parent="Base.Theme.Material3.Dark.Dialog">
<item name="windowMinWidthMajor">@dimen/abc_dialog_min_width_major</item>
<item name="windowMinWidthMinor">@dimen/abc_dialog_min_width_minor</item>
</style>
</resources>

View File

@ -19,6 +19,41 @@
<!-- All new attributes should be set in the follow four Base.V14 themes. -->
<eat-comment/>
<!-- Base themes of Theme.Material3Expressive themes for dialogs. -->
<style name="Base.Theme.Material3Expressive.Light.Dialog" parent="Theme.Material3.Light.Dialog">
<!-- Color palettes. -->
<item name="colorOnPrimaryContainer">@color/m3_ref_palette_primary30</item>
<item name="colorOnSecondaryContainer">@color/m3_ref_palette_secondary30</item>
<item name="colorOnTertiaryContainer">@color/m3_ref_palette_tertiary30</item>
<item name="colorOnErrorContainer">@color/m3_ref_palette_error30</item>
<!-- Widget styles. -->
</style>
<style name="Base.Theme.Material3Expressive.Dark.Dialog" parent="Theme.Material3.Dark.Dialog">
<!-- Widget styles. -->
</style>
<style name="Base.Theme.Material3Expressive.Light.Dialog.FixedSize">
<item name="windowFixedWidthMajor">@dimen/abc_dialog_fixed_width_major</item>
<item name="windowFixedWidthMinor">@dimen/abc_dialog_fixed_width_minor</item>
<item name="windowFixedHeightMajor">@dimen/abc_dialog_fixed_height_major</item>
<item name="windowFixedHeightMinor">@dimen/abc_dialog_fixed_height_minor</item>
</style>
<style name="Base.Theme.Material3Expressive.Dark.Dialog.FixedSize">
<item name="windowFixedWidthMajor">@dimen/abc_dialog_fixed_width_major</item>
<item name="windowFixedWidthMinor">@dimen/abc_dialog_fixed_width_minor</item>
<item name="windowFixedHeightMajor">@dimen/abc_dialog_fixed_height_major</item>
<item name="windowFixedHeightMinor">@dimen/abc_dialog_fixed_height_minor</item>
</style>
<!-- Base themes of Theme.Material3 themes for dialogs. -->
<style name="Base.V14.Theme.Material3.Light.Dialog" parent="Theme.MaterialComponents.Light.Dialog">
<item name="isMaterial3Theme">true</item>

View File

@ -15,6 +15,111 @@
~ limitations under the License.
-->
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Dialog theme overlays for Material3Expressive. -->
<style name="Base.ThemeOverlay.Material3Expressive.Dialog" parent="Base.ThemeOverlay.Material3.Dialog">
<!-- Update materialButtonStyle with Expressive style. -->
</style>
<style name="ThemeOverlay.Material3Expressive.Dialog" parent="Base.ThemeOverlay.Material3Expressive.Dialog"/>
<!--
The default Material3Expressive theme overlay used for AlertDialogs built via the
alertDialogTheme attribute.
-->
<style name="ThemeOverlay.Material3Expressive.Dialog.Alert" parent="ThemeOverlay.Material3.Dialog.Alert">
<!-- Update buttonBarButtonStyle with Expressive style. -->
</style>
<!--
The default theme overlay used by Material3Expressive for framework
(non-AppCompat) alert dialogs, via the android:alertDialogTheme attribute.
It is recommended to use AppCompat alert dialogs, but Preferences does not.
-->
<style name="ThemeOverlay.Material3Expressive.Dialog.Alert.Framework" parent="ThemeOverlay.Material3.Dialog.Alert.Framework">
<!-- Update buttonBarButtonStyle with Expressive style. -->
</style>
<style name="ThemeOverlay.Material3Expressive.Light.Dialog.Alert.Framework" parent="ThemeOverlay.Material3.Light.Dialog.Alert.Framework">
<!-- Update buttonBarButtonStyle with Expressive style. -->
</style>
<!--
The default Material3Expressive theme overlay for AlertDialogs built with the MaterialAlertDialogBuilder, via the
materialAlertDialogTheme attribute.
-->
<style name="ThemeOverlay.Material3Expressive.MaterialAlertDialog" parent="ThemeOverlay.Material3.MaterialAlertDialog">
<!-- Update components styles to Expressive styles. -->
</style>
<!-- A theme overlay for Material3Expressive Alert Dialog panels with a center aligned title text and icon. -->
<style name="ThemeOverlay.Material3Expressive.MaterialAlertDialog.Centered">
<!-- Update components styles to Expressive styles. -->
</style>
<!-- Dialog theme overlays for Material3. -->
<style name="Base.ThemeOverlay.Material3.Dialog" parent="Base.ThemeOverlay.MaterialComponents.Dialog">
<item name="materialButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
<item name="android:windowAnimationStyle">@style/MaterialAlertDialog.Material3.Animation</item>
<item name="android:backgroundDimAmount">@dimen/m3_comp_scrim_container_opacity</item>
</style>
<style name="ThemeOverlay.Material3.Dialog" parent="Base.ThemeOverlay.Material3.Dialog"/>
<!--
The default Material3 theme overlay used for AlertDialogs built via the
alertDialogTheme attribute.
-->
<style name="ThemeOverlay.Material3.Dialog.Alert" parent="ThemeOverlay.MaterialComponents.Dialog.Alert">
<item name="buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
</style>
<!--
The default theme overlay used by Material3 for framework
(non-AppCompat) alert dialogs, via the android:alertDialogTheme attribute.
It is recommended to use AppCompat alert dialogs, but Preferences does not.
-->
<style name="ThemeOverlay.Material3.Dialog.Alert.Framework" parent="ThemeOverlay.MaterialComponents.Dialog.Alert.Framework">
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
<item name="android:buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
</style>
<style name="ThemeOverlay.Material3.Light.Dialog.Alert.Framework" parent="ThemeOverlay.MaterialComponents.Light.Dialog.Alert.Framework">
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
<item name="android:buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
</style>
<!--
The default Material3 theme overlay for AlertDialogs built with the MaterialAlertDialogBuilder, via the
materialAlertDialogTheme attribute.
-->
<style name="ThemeOverlay.Material3.MaterialAlertDialog" parent="ThemeOverlay.MaterialComponents.MaterialAlertDialog">
<item name="alertDialogStyle">@style/MaterialAlertDialog.Material3</item>
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
<item name="android:checkedTextViewStyle">@style/Widget.Material3.CheckedTextView</item>
<item name="buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog</item>
<item name="buttonBarPositiveButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog</item>
<item name="buttonBarNegativeButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog</item>
<item name="buttonBarNeutralButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
<item name="materialAlertDialogTitlePanelStyle">@style/MaterialAlertDialog.Material3.Title.Panel</item>
<item name="materialAlertDialogTitleIconStyle">@style/MaterialAlertDialog.Material3.Title.Icon</item>
<item name="materialAlertDialogTitleTextStyle">@style/MaterialAlertDialog.Material3.Title.Text</item>
<item name="materialAlertDialogBodyTextStyle">@style/MaterialAlertDialog.Material3.Body.Text</item>
<item name="android:windowAnimationStyle">@style/MaterialAlertDialog.Material3.Animation</item>
</style>
<!-- A theme overlay for Material3 Alert Dialog panels with a center aligned title text and icon. -->
<style name="ThemeOverlay.Material3.MaterialAlertDialog.Centered">
<item name="materialAlertDialogTitlePanelStyle">@style/MaterialAlertDialog.Material3.Title.Panel.CenterStacked</item>
<item name="materialAlertDialogTitleIconStyle">@style/MaterialAlertDialog.Material3.Title.Icon.CenterStacked</item>
<item name="materialAlertDialogTitleTextStyle">@style/MaterialAlertDialog.Material3.Title.Text.CenterStacked</item>
</style>
<!-- Dialog theme overlays for MaterialComponents. -->
<style name="Base.V14.ThemeOverlay.MaterialComponents.Dialog" parent="ThemeOverlay.AppCompat.Dialog">
<!-- Widget styles -->
<item name="materialButtonStyle">@style/Widget.MaterialComponents.Button.TextButton.Dialog.Flush</item>
@ -93,62 +198,4 @@
<item name="materialAlertDialogTitleIconStyle">@style/MaterialAlertDialog.MaterialComponents.Title.Icon.CenterStacked</item>
<item name="materialAlertDialogTitleTextStyle">@style/MaterialAlertDialog.MaterialComponents.Title.Text.CenterStacked</item>
</style>
<style name="Base.ThemeOverlay.Material3.Dialog" parent="Base.ThemeOverlay.MaterialComponents.Dialog">
<item name="materialButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
<item name="android:windowAnimationStyle">@style/MaterialAlertDialog.Material3.Animation</item>
<item name="android:backgroundDimAmount">@dimen/m3_comp_scrim_container_opacity</item>
</style>
<style name="ThemeOverlay.Material3.Dialog" parent="Base.ThemeOverlay.Material3.Dialog"/>
<!--
The default Material3 theme overlay used for AlertDialogs built via the
alertDialogTheme attribute.
-->
<style name="ThemeOverlay.Material3.Dialog.Alert" parent="ThemeOverlay.MaterialComponents.Dialog.Alert">
<item name="buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
</style>
<!--
The default theme overlay used by Material3 for framework
(non-AppCompat) alert dialogs, via the android:alertDialogTheme attribute.
It is recommended to use AppCompat alert dialogs, but Preferences does not.
-->
<style name="ThemeOverlay.Material3.Dialog.Alert.Framework" parent="ThemeOverlay.MaterialComponents.Dialog.Alert.Framework">
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
<item name="android:buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
</style>
<style name="ThemeOverlay.Material3.Light.Dialog.Alert.Framework" parent="ThemeOverlay.MaterialComponents.Light.Dialog.Alert.Framework">
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
<item name="android:buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
</style>
<!--
The default Material3 theme overlay for AlertDialogs built with the MaterialAlertDialogBuilder, via the
materialAlertDialogTheme attribute.
-->
<style name="ThemeOverlay.Material3.MaterialAlertDialog" parent="ThemeOverlay.MaterialComponents.MaterialAlertDialog">
<item name="alertDialogStyle">@style/MaterialAlertDialog.Material3</item>
<item name="android:windowElevation">@dimen/m3_alert_dialog_elevation</item>
<item name="android:checkedTextViewStyle">@style/Widget.Material3.CheckedTextView</item>
<item name="buttonBarButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog</item>
<item name="buttonBarPositiveButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog</item>
<item name="buttonBarNegativeButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog</item>
<item name="buttonBarNeutralButtonStyle">@style/Widget.Material3.Button.TextButton.Dialog.Flush</item>
<item name="materialAlertDialogTitlePanelStyle">@style/MaterialAlertDialog.Material3.Title.Panel</item>
<item name="materialAlertDialogTitleIconStyle">@style/MaterialAlertDialog.Material3.Title.Icon</item>
<item name="materialAlertDialogTitleTextStyle">@style/MaterialAlertDialog.Material3.Title.Text</item>
<item name="materialAlertDialogBodyTextStyle">@style/MaterialAlertDialog.Material3.Body.Text</item>
<item name="android:windowAnimationStyle">@style/MaterialAlertDialog.Material3.Animation</item>
</style>
<!-- A theme overlay for Material3 Alert Dialog panels with a center aligned title text and icon. -->
<style name="ThemeOverlay.Material3.MaterialAlertDialog.Centered">
<item name="materialAlertDialogTitlePanelStyle">@style/MaterialAlertDialog.Material3.Title.Panel.CenterStacked</item>
<item name="materialAlertDialogTitleIconStyle">@style/MaterialAlertDialog.Material3.Title.Icon.CenterStacked</item>
<item name="materialAlertDialogTitleTextStyle">@style/MaterialAlertDialog.Material3.Title.Text.CenterStacked</item>
</style>
</resources>

View File

@ -15,6 +15,29 @@
~ limitations under the License.
-->
<resources>
<public name="Theme.Material3Expressive.Light" type="style"/>
<public name="Theme.Material3Expressive.Light.NoActionBar" type="style"/>
<public name="Theme.Material3Expressive.Dark" type="style"/>
<public name="Theme.Material3Expressive.Dark.NoActionBar" type="style"/>
<public name="Theme.Material3Expressive.DayNight" type="style"/>
<public name="Theme.Material3Expressive.DayNight.NoActionBar" type="style"/>
<public name="Theme.Material3Expressive.DynamicColors.Light" type="style"/>
<public name="Theme.Material3Expressive.DynamicColors.Light.NoActionBar" type="style"/>
<public name="Theme.Material3Expressive.DynamicColors.Dark" type="style"/>
<public name="Theme.Material3Expressive.DynamicColors.Dark.NoActionBar" type="style"/>
<public name="Theme.Material3Expressive.DynamicColors.DayNight" type="style"/>
<public name="Theme.Material3Expressive.DynamicColors.DayNight.NoActionBar" type="style"/>
<public name="Theme.Material3Expressive.Light.DialogWhenLarge" type="style"/>
<public name="Theme.Material3Expressive.Dark.DialogWhenLarge" type="style"/>
<public name="Theme.Material3Expressive.DayNight.DialogWhenLarge" type="style"/>
<public name="ThemeOverlay.Material3Expressive" type="style"/>
<public name="ThemeOverlay.Material3Expressive.Light" type="style"/>
<public name="ThemeOverlay.Material3Expressive.Dark" type="style"/>
<public name="ThemeOverlay.Material3Expressive.DynamicColors.Light" type="style"/>
<public name="ThemeOverlay.Material3Expressive.DynamicColors.Dark" type="style"/>
<public name="ThemeOverlay.Material3Expressive.DynamicColors.DayNight" type="style"/>
<public name="Theme.Material3.Light" type="style"/>
<public name="Theme.Material3.Light.NoActionBar" type="style"/>
<public name="Theme.Material3.Dark" type="style"/>

View File

@ -16,11 +16,17 @@
-->
<resources>
<style name="Base.Theme.Material3Expressive.Light.DialogWhenLarge"
parent="Base.Theme.Material3Expressive.Light.Dialog.FixedSize"/>
<style name="Base.Theme.Material3Expressive.Dark.DialogWhenLarge"
parent="Base.Theme.Material3Expressive.Dark.Dialog.FixedSize"/>
<style name="Base.Theme.Material3.Light.DialogWhenLarge"
parent="Base.Theme.Material3.Light.Dialog.FixedSize"/>
parent="Base.Theme.Material3.Light.Dialog.FixedSize"/>
<style name="Base.Theme.Material3.Dark.DialogWhenLarge"
parent="Base.Theme.Material3.Dark.Dialog.FixedSize"/>
parent="Base.Theme.Material3.Dark.Dialog.FixedSize"/>
<style name="Base.Theme.MaterialComponents.DialogWhenLarge"
parent="Base.Theme.MaterialComponents.Dialog.FixedSize"/>

View File

@ -15,6 +15,13 @@
~ limitations under the License.
-->
<resources>
<!-- Material 3 Expressive themes (day/night versions) for activities. -->
<style name="Theme.Material3Expressive.DayNight" parent="Theme.Material3Expressive.Dark"/>
<style name="Theme.Material3Expressive.DayNight.NoActionBar" parent="Theme.Material3Expressive.Dark.NoActionBar"/>
<style name="Theme.Material3Expressive.DynamicColors.DayNight" parent="Theme.Material3Expressive.DynamicColors.Dark"/>
<style name="Theme.Material3Expressive.DynamicColors.DayNight.NoActionBar" parent="Theme.Material3Expressive.DynamicColors.Dark.NoActionBar"/>
<style name="Theme.Material3Expressive.DayNight.DialogWhenLarge" parent="Theme.Material3Expressive.Dark.DialogWhenLarge"/>
<!-- Material 3 themes (day/night versions) for activities. -->
<style name="Theme.Material3.DayNight" parent="Theme.Material3.Dark"/>
<style name="Theme.Material3.DayNight.NoActionBar" parent="Theme.Material3.Dark.NoActionBar"/>

View File

@ -15,6 +15,6 @@
~ limitations under the License.
-->
<resources>
<style name="ThemeOverlay.Material3Expressive.DynamicColors.DayNight" parent="ThemeOverlay.Material3Expressive.DynamicColors.Dark" />
<style name="ThemeOverlay.Material3.DynamicColors.DayNight" parent="ThemeOverlay.Material3.DynamicColors.Dark" />
</resources>

View File

@ -15,6 +15,10 @@
~ limitations under the License.
-->
<resources>
<style name="Theme.Material3Expressive.DynamicColors.Light" parent="Theme.Material3.DynamicColors.Light"/>
<style name="Theme.Material3Expressive.DynamicColors.Dark" parent="Theme.Material3.DynamicColors.Dark"/>
<style name="Theme.Material3.DynamicColors.Light" parent="Theme.Material3.Light">
<item name="isMaterial3DynamicColorApplied">true</item>

View File

@ -15,6 +15,10 @@
~ limitations under the License.
-->
<resources>
<style name="ThemeOverlay.Material3Expressive.DynamicColors.Light" parent="ThemeOverlay.Material3.DynamicColors.Light"/>
<style name="ThemeOverlay.Material3Expressive.DynamicColors.Dark" parent="ThemeOverlay.Material3.DynamicColors.Dark"/>
<style name="ThemeOverlay.Material3.DynamicColors.Light" parent="">
<item name="isMaterial3DynamicColorApplied">true</item>

View File

@ -16,6 +16,48 @@
-->
<resources>
<!--
Themes in the "Theme.Material3Expressive" family will contain a default full color scheme.
These theme declarations contain any version-independent specification. Items
that need to vary based on platform version should be defined in the corresponding
"Base.Theme" theme.
-->
<!-- Platform-independent theme providing a full color scheme in a light-themed activity. -->
<style name="Theme.Material3Expressive.Light" parent="Base.Theme.Material3Expressive.Light"/>
<!-- Platform-independent theme providing a full color scheme in a dark-themed activity. -->
<style name="Theme.Material3Expressive.Dark" parent="Base.Theme.Material3Expressive.Dark"/>
<style name="Theme.Material3Expressive.Light.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="Theme.Material3Expressive.Dark.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="Theme.Material3Expressive.DynamicColors.Light" parent="Theme.Material3Expressive.Light"/>
<style name="Theme.Material3Expressive.DynamicColors.Dark" parent="Theme.Material3Expressive.Dark"/>
<style name="Theme.Material3Expressive.DynamicColors.Light.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="Theme.Material3Expressive.DynamicColors.Dark.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="Theme.Material3Expressive.Light.DialogWhenLarge" parent="Base.Theme.Material3Expressive.Light.DialogWhenLarge"/>
<style name="Theme.Material3Expressive.Dark.DialogWhenLarge" parent="Base.Theme.Material3Expressive.Dark.DialogWhenLarge"/>
<!--
Themes in the "Theme.Material3" family will contain a default full color scheme.

View File

@ -16,9 +16,45 @@
-->
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- All new attributes should be set in the following four Base.V14 themes. -->
<!-- All new attributes should be set in the following Base.V14 and Base.V21 themes. -->
<eat-comment/>
<!-- Base themes of Theme.Material3Expressive themes. -->
<style name="Base.Theme.Material3Expressive.Light" parent="Base.Theme.Material3.Light">
<!-- Color palettes. -->
<item name="colorOnPrimaryContainer">@color/m3_ref_palette_primary30</item>
<item name="colorOnSecondaryContainer">@color/m3_ref_palette_secondary30</item>
<item name="colorOnTertiaryContainer">@color/m3_ref_palette_tertiary30</item>
<item name="colorOnErrorContainer">@color/m3_ref_palette_error30</item>
<!-- Dialog themes. -->
<item name="alertDialogTheme">@style/ThemeOverlay.Material3Expressive.Dialog.Alert</item>
<item name="materialAlertDialogTheme">@style/ThemeOverlay.Material3Expressive.MaterialAlertDialog</item>
<!-- Widget styles. -->
<!-- Theme overlays. -->
<item name="dynamicColorThemeOverlay">@style/ThemeOverlay.Material3Expressive.DynamicColors.Light</item>
</style>
<style name="Base.Theme.Material3Expressive.Dark" parent="Base.Theme.Material3.Light">
<!-- Dialog themes. -->
<item name="alertDialogTheme">@style/ThemeOverlay.Material3Expressive.Dialog.Alert</item>
<item name="materialAlertDialogTheme">@style/ThemeOverlay.Material3Expressive.MaterialAlertDialog</item>
<!-- Widget styles. -->
<!-- Theme overlays. -->
<item name="dynamicColorThemeOverlay">@style/ThemeOverlay.Material3Expressive.DynamicColors.Dark</item>
</style>
<!-- We're not large, so redirect to Base.Theme.Material3Expressive themes. -->
<style name="Base.Theme.Material3Expressive.Light.DialogWhenLarge" parent="Base.Theme.Material3Expressive.Light"/>
<style name="Base.Theme.Material3Expressive.Dark.DialogWhenLarge" parent="Base.Theme.Material3Expressive.Dark"/>
<!-- Base themes of Theme.Material3 themes. -->
<style name="Base.V14.Theme.Material3.Light" parent="Theme.MaterialComponents.Light">
<item name="isMaterial3Theme">true</item>

View File

@ -15,6 +15,13 @@
~ limitations under the License.
-->
<resources>
<!-- Material 3 Expressive themes (day/night versions) for activities. -->
<style name="Theme.Material3Expressive.DayNight" parent="Theme.Material3Expressive.Light"/>
<style name="Theme.Material3Expressive.DayNight.NoActionBar" parent="Theme.Material3Expressive.Light.NoActionBar"/>
<style name="Theme.Material3Expressive.DynamicColors.DayNight" parent="Theme.Material3Expressive.DynamicColors.Light"/>
<style name="Theme.Material3Expressive.DynamicColors.DayNight.NoActionBar" parent="Theme.Material3Expressive.DynamicColors.Light.NoActionBar"/>
<style name="Theme.Material3Expressive.DayNight.DialogWhenLarge" parent="Theme.Material3Expressive.Light.DialogWhenLarge"/>
<!-- Material 3 themes (day/night versions) for activities. -->
<style name="Theme.Material3.DayNight" parent="Theme.Material3.Light"/>
<style name="Theme.Material3.DayNight.NoActionBar" parent="Theme.Material3.Light.NoActionBar"/>

View File

@ -15,6 +15,35 @@
~ limitations under the License.
-->
<resources xmlns:tools="http://schemas.android.com/tools">
<!--
Material 3 Expressive theme overlay.
-->
<style name="ThemeOverlay.Material3Expressive" parent="ThemeOverlay.Material3"/>
<!--
Theme overlay that replaces colors with their light versions.
-->
<style name="ThemeOverlay.Material3Expressive.Light" parent="ThemeOverlay.Material3.Light">
<!-- Color palettes -->
<item name="colorOnPrimaryContainer">@color/m3_ref_palette_primary30</item>
<item name="colorOnSecondaryContainer">@color/m3_ref_palette_secondary30</item>
<item name="colorOnTertiaryContainer">@color/m3_ref_palette_tertiary30</item>
<item name="colorOnErrorContainer">@color/m3_ref_palette_error30</item>
</style>
<!--
Theme overlay that replaces colors with their dark versions.
-->
<style name="ThemeOverlay.Material3Expressive.Dark" parent="ThemeOverlay.Material3.Dark"/>
<!--
Theme overlay to support dynamic colors.
-->
<style name="ThemeOverlay.Material3Expressive.DynamicColors.Light" parent="ThemeOverlay.Material3Expressive.Light"/>
<style name="ThemeOverlay.Material3Expressive.DynamicColors.Dark" parent="ThemeOverlay.Material3Expressive.Dark"/>
<style name="ThemeOverlay.Material3Expressive.DynamicColors.DayNight" parent="ThemeOverlay.Material3.DynamicColors.Light" />
<!--
Material 3 theme overlay.
-->