Skip to content

Commit fd0b8ba

Browse files
pekingmeimhappi
authored andcommitted
[FAB] Added Expressive styles.
PiperOrigin-RevId: 748329944
1 parent 90d7319 commit fd0b8ba

File tree

4 files changed

+145
-0
lines changed

4 files changed

+145
-0
lines changed

lib/java/com/google/android/material/dialog/res/values/themes_base.xml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,22 @@
3333
<item name="collapsingToolbarLayoutMediumStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Medium</item>
3434
<item name="collapsingToolbarLayoutLargeStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Large</item>
3535

36+
<!--
37+
Default as primary container FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
38+
Please use the corresponding themeoverlay for other color variants via materialThemeOverlay.
39+
-->
40+
<item name="floatingActionButtonStyle">@style/Widget.Material3Expressive.FloatingActionButton</item>
41+
<item name="floatingActionButtonMediumStyle">@style/Widget.Material3Expressive.FloatingActionButton.Medium</item>
42+
<item name="floatingActionButtonLargeStyle">@style/Widget.Material3Expressive.FloatingActionButton.Large</item>
43+
44+
<!--
45+
Default as primary container extended FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
46+
Please use the corresponding themeoverlay for other color varaints via materialThemeOverlay.
47+
-->
48+
<item name="extendedFloatingActionButtonSmallStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Small</item>
49+
<item name="extendedFloatingActionButtonMediumStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Medium</item>
50+
<item name="extendedFloatingActionButtonLargeStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Large</item>
51+
3652
<item name="toolbarStyle">@style/Widget.Material3Expressive.Toolbar</item>
3753
<item name="toolbarSurfaceStyle">@style/Widget.Material3Expressive.Toolbar.Surface</item>
3854

@@ -50,6 +66,22 @@
5066
<item name="collapsingToolbarLayoutMediumStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Medium</item>
5167
<item name="collapsingToolbarLayoutLargeStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Large</item>
5268

69+
<!--
70+
Default as primary container FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
71+
Please use the corresponding themeoverlay for other color variants via materialThemeOverlay.
72+
-->
73+
<item name="floatingActionButtonStyle">@style/Widget.Material3Expressive.FloatingActionButton</item>
74+
<item name="floatingActionButtonMediumStyle">@style/Widget.Material3Expressive.FloatingActionButton.Medium</item>
75+
<item name="floatingActionButtonLargeStyle">@style/Widget.Material3Expressive.FloatingActionButton.Large</item>
76+
77+
<!--
78+
Default as primary container extended FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
79+
Please use the corresponding themeoverlay for other color varaints via materialThemeOverlay.
80+
-->
81+
<item name="extendedFloatingActionButtonSmallStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Small</item>
82+
<item name="extendedFloatingActionButtonMediumStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Medium</item>
83+
<item name="extendedFloatingActionButtonLargeStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Large</item>
84+
5385
<item name="toolbarStyle">@style/Widget.Material3Expressive.Toolbar</item>
5486
<item name="toolbarSurfaceStyle">@style/Widget.Material3Expressive.Toolbar.Surface</item>
5587

lib/java/com/google/android/material/floatingactionbutton/res/values/fab_tokens.xml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,21 @@
6565
<macro name="m3_comp_fab_tertiary_container_container_color">?attr/colorTertiaryContainer</macro>
6666
<macro name="m3_comp_fab_tertiary_container_icon_color">?attr/colorOnTertiaryContainer</macro>
6767

68+
<!-- Generated from token set (md.comp.fab.primary) in context (platform=android, audience=3p). -->
69+
<!-- Group: Enabled -->
70+
<macro name="m3_comp_fab_primary_container_color">?attr/colorPrimary</macro>
71+
<macro name="m3_comp_fab_primary_icon_color">?attr/colorOnPrimary</macro>
72+
73+
<!-- Generated from token set (md.comp.fab.secondary) in context (platform=android, audience=3p). -->
74+
<!-- Group: Enabled -->
75+
<macro name="m3_comp_fab_secondary_container_color">?attr/colorSecondary</macro>
76+
<macro name="m3_comp_fab_secondary_icon_color">?attr/colorOnSecondary</macro>
77+
78+
<!-- Generated from token set (md.comp.fab.tertiary) in context (platform=android, audience=3p). -->
79+
<!-- Group: Enabled -->
80+
<macro name="m3_comp_fab_tertiary_container_color">?attr/colorTertiary</macro>
81+
<macro name="m3_comp_fab_tertiary_icon_color">?attr/colorOnTertiary</macro>
82+
6883
<!-- Generated from token set (md.comp.fab.surface) in context (platform=android, audience=3p). -->
6984
<!-- Group: Enabled - Container -->
7085
<macro name="m3_comp_fab_surface_container_color">?attr/colorSurfaceContainerHigh</macro>

lib/java/com/google/android/material/floatingactionbutton/res/values/styles.xml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,72 @@
1616
-->
1717
<resources xmlns:tools="http://schemas.android.com/tools">
1818

19+
<!-- Styles for M3 Expressive FABs. -->
20+
21+
<!-- M3 Expressive Regular FABs -->
22+
<style name="Widget.Material3Expressive.FloatingActionButton" parent="Base.Widget.Material3.FloatingActionButton">
23+
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer</item>
24+
</style>
25+
26+
<!-- M3 Expressive Medium FABs -->
27+
<style name="Widget.Material3Expressive.FloatingActionButton.Medium" parent="Base.Widget.Material3.FloatingActionButton.Medium">
28+
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer</item>
29+
</style>
30+
31+
<!-- M3 Expressive Large FABs -->
32+
<style name="Widget.Material3Expressive.FloatingActionButton.Large" parent="Base.Widget.Material3.FloatingActionButton.Large">
33+
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer</item>
34+
</style>
35+
36+
<!-- Styles for M3 Expressive Extended FABs. -->
37+
38+
<!-- M3 Expressive Extended Small FABs -->
39+
<style name="Widget.Material3Expressive.ExtendedFloatingActionButton.Small" parent="Base.Widget.Material3.ExtendedFloatingActionButton.Small">
40+
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer</item>
41+
</style>
42+
43+
<!-- M3 Expressive Extended Medium FABs -->
44+
<style name="Widget.Material3Expressive.ExtendedFloatingActionButton.Medium" parent="Base.Widget.Material3.ExtendedFloatingActionButton.Medium">
45+
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer</item>
46+
</style>
47+
48+
<!-- M3 Expressive Extended Large FABs -->
49+
<style name="Widget.Material3Expressive.ExtendedFloatingActionButton.Large" parent="Base.Widget.Material3.ExtendedFloatingActionButton.Large">
50+
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer</item>
51+
</style>
52+
53+
<!-- M3 Expressive FAB (and extended FAB) Theme Overlays for different color variants. -->
54+
55+
<style name="ThemeOverlay.Material3Expressive.FloatingActionButton.Primary" parent="">
56+
<item name="colorContainer">@macro/m3_comp_fab_primary_container_color</item>
57+
<item name="colorOnContainer">@macro/m3_comp_fab_primary_icon_color</item>
58+
</style>
59+
60+
<style name="ThemeOverlay.Material3Expressive.FloatingActionButton.Secondary" parent="">
61+
<item name="colorContainer">@macro/m3_comp_fab_secondary_container_color</item>
62+
<item name="colorOnContainer">@macro/m3_comp_fab_secondary_icon_color</item>
63+
</style>
64+
65+
<style name="ThemeOverlay.Material3Expressive.FloatingActionButton.Tertiary" parent="">
66+
<item name="colorContainer">@macro/m3_comp_fab_tertiary_container_color</item>
67+
<item name="colorOnContainer">@macro/m3_comp_fab_tertiary_icon_color</item>
68+
</style>
69+
70+
<style name="ThemeOverlay.Material3Expressive.FloatingActionButton.PrimaryContainer" parent="">
71+
<item name="colorContainer">@macro/m3_comp_fab_primary_container_container_color</item>
72+
<item name="colorOnContainer">@macro/m3_comp_fab_primary_container_icon_color</item>
73+
</style>
74+
75+
<style name="ThemeOverlay.Material3Expressive.FloatingActionButton.SecondaryContainer" parent="">
76+
<item name="colorContainer">@macro/m3_comp_fab_secondary_container_container_color</item>
77+
<item name="colorOnContainer">@macro/m3_comp_fab_secondary_container_icon_color</item>
78+
</style>
79+
80+
<style name="ThemeOverlay.Material3Expressive.FloatingActionButton.TertiaryContainer" parent="">
81+
<item name="colorContainer">@macro/m3_comp_fab_tertiary_container_container_color</item>
82+
<item name="colorOnContainer">@macro/m3_comp_fab_tertiary_container_icon_color</item>
83+
</style>
84+
1985
<!-- Styles for M3 FABs. -->
2086

2187
<!-- M3 Regular FABs -->

lib/java/com/google/android/material/theme/res/values/themes_base.xml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,22 @@
3737
<item name="collapsingToolbarLayoutMediumStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Medium</item>
3838
<item name="collapsingToolbarLayoutLargeStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Large</item>
3939

40+
<!--
41+
Default as primary container FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
42+
Please use the corresponding themeoverlay for other color variants via materialThemeOverlay.
43+
-->
44+
<item name="floatingActionButtonStyle">@style/Widget.Material3Expressive.FloatingActionButton</item>
45+
<item name="floatingActionButtonMediumStyle">@style/Widget.Material3Expressive.FloatingActionButton.Medium</item>
46+
<item name="floatingActionButtonLargeStyle">@style/Widget.Material3Expressive.FloatingActionButton.Large</item>
47+
48+
<!--
49+
Default as primary container extended FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
50+
Please use the corresponding themeoverlay for other color variants via materialThemeOverlay.
51+
-->
52+
<item name="extendedFloatingActionButtonSmallStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Small</item>
53+
<item name="extendedFloatingActionButtonMediumStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Medium</item>
54+
<item name="extendedFloatingActionButtonLargeStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Large</item>
55+
4056
<item name="materialButtonStyle">@style/Widget.Material3Expressive.Button</item>
4157
<item name="materialButtonTonalStyle">@style/Widget.Material3Expressive.Button.TonalButton</item>
4258
<item name="materialButtonOutlinedStyle">@style/Widget.Material3Expressive.Button.OutlinedButton</item>
@@ -73,6 +89,22 @@
7389
<item name="collapsingToolbarLayoutMediumStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Medium</item>
7490
<item name="collapsingToolbarLayoutLargeStyle">@style/Widget.Material3Expressive.CollapsingToolbar.Large</item>
7591

92+
<!--
93+
Default as primary container FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
94+
Please use the corresponding themeoverlay for other color varaints via materialThemeOverlay.
95+
-->
96+
<item name="floatingActionButtonStyle">@style/Widget.Material3Expressive.FloatingActionButton</item>
97+
<item name="floatingActionButtonMediumStyle">@style/Widget.Material3Expressive.FloatingActionButton.Medium</item>
98+
<item name="floatingActionButtonLargeStyle">@style/Widget.Material3Expressive.FloatingActionButton.Large</item>
99+
100+
<!--
101+
Default as primary container extended FABs. Unlisted FAB style attributes are not updated in Material3Expressive.
102+
Please use the corresponding themeoverlay for other color varaints via materialThemeOverlay.
103+
-->
104+
<item name="extendedFloatingActionButtonSmallStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Small</item>
105+
<item name="extendedFloatingActionButtonMediumStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Medium</item>
106+
<item name="extendedFloatingActionButtonLargeStyle">@style/Widget.Material3Expressive.ExtendedFloatingActionButton.Large</item>
107+
76108
<item name="materialButtonStyle">@style/Widget.Material3Expressive.Button</item>
77109
<item name="materialButtonTonalStyle">@style/Widget.Material3Expressive.Button.TonalButton</item>
78110
<item name="materialButtonOutlinedStyle">@style/Widget.Material3Expressive.Button.OutlinedButton</item>

0 commit comments

Comments
 (0)