Skip to content

Commit 7f88784

Browse files
imhappileticiarossi
authored andcommitted
[FloatingToolbar] Removed floating toolbar-specific icon button styles from theme overlay
PiperOrigin-RevId: 712607176
1 parent 5dfed19 commit 7f88784

File tree

4 files changed

+49
-13
lines changed

4 files changed

+49
-13
lines changed

catalog/java/io/material/catalog/floatingtoolbar/FloatingToolbarMainDemoFragment.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ public View onCreateDemoView(
6363
// Initialize group of bold buttons.
6464
List<MaterialButton> boldButtons =
6565
initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_button_bold);
66+
boldButtons.addAll(initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_vibrant_button_bold));
6667
for (MaterialButton boldButton : boldButtons) {
6768
boldButton.addOnCheckedChangeListener(
6869
(button, isChecked) -> {
@@ -83,6 +84,7 @@ public View onCreateDemoView(
8384
// Initialize group of italics format buttons.
8485
List<MaterialButton> italicButtons =
8586
initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_button_italic);
87+
italicButtons.addAll(initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_vibrant_button_italic));
8688
for (MaterialButton italicButton : italicButtons) {
8789
italicButton.addOnCheckedChangeListener(
8890
(button, isChecked) -> {
@@ -102,6 +104,7 @@ public View onCreateDemoView(
102104
// Initialize group of underline format buttons.
103105
List<MaterialButton> underlineButtons =
104106
initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_button_underlined);
107+
underlineButtons.addAll(initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_vibrant_button_underlined));
105108
for (MaterialButton underlineButton : underlineButtons) {
106109
underlineButton.addOnCheckedChangeListener(
107110
(button, isChecked) -> {
@@ -118,13 +121,15 @@ public View onCreateDemoView(
118121
// Initialize color text format buttons.
119122
List<MaterialButton> colorTextButtons =
120123
initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_button_color_text);
124+
colorTextButtons.addAll(initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_vibrant_button_color_text));
121125
for (MaterialButton colorTextButton : colorTextButtons) {
122126
colorTextButton.setOnClickListener(v -> bodyText.setTextColor(getRandomColor()));
123127
}
124128

125129
// Initialize color fill format buttons.
126130
List<MaterialButton> colorFillButtons =
127131
initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_button_color_fill);
132+
colorFillButtons.addAll(initializeFormatButtons(floatingToolbars, R.id.floating_toolbar_vibrant_button_color_fill));
128133
for (MaterialButton colorFillButton : colorFillButtons) {
129134
colorFillButton.setOnClickListener(v -> view.setBackgroundColor(getRandomColor()));
130135
}
@@ -169,7 +174,9 @@ private List<MaterialButton> initializeFormatButtons(
169174
@NonNull List<FloatingToolbarLayout> floatingToolbars, @IdRes int formatButtonId) {
170175
List<MaterialButton> formatButtons = new ArrayList<>();
171176
for (FloatingToolbarLayout floatingToolbar : floatingToolbars) {
172-
formatButtons.add(floatingToolbar.findViewById(formatButtonId));
177+
if (floatingToolbar.findViewById(formatButtonId) != null) {
178+
formatButtons.add(floatingToolbar.findViewById(formatButtonId));
179+
}
173180
}
174181
return formatButtons;
175182
}

catalog/java/io/material/catalog/floatingtoolbar/res/layout/cat_floating_toolbar_content.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
<merge xmlns:android="http://schemas.android.com/apk/res/android"
1717
xmlns:app="http://schemas.android.com/apk/res-auto">
1818
<Button
19-
style="?attr/materialIconButtonStyle"
2019
android:id="@+id/floating_toolbar_button_bold"
20+
style="?attr/materialIconButtonStyle"
2121
android:layout_width="wrap_content"
2222
android:layout_height="wrap_content"
2323
android:checkable="true"

catalog/java/io/material/catalog/floatingtoolbar/res/layout/cat_floating_toolbar_fragment.xml

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,10 @@
129129

130130
<com.google.android.material.floatingtoolbar.FloatingToolbarLayout
131131
android:id="@+id/floating_toolbar_bottom"
132-
style="?attr/floatingToolbarVibrantStyle"
133132
android:layout_width="wrap_content"
134133
android:layout_height="wrap_content"
135134
android:layout_gravity="bottom|center"
135+
style="?attr/floatingToolbarVibrantStyle"
136136
android:layout_margin="16dp">
137137

138138
<LinearLayout
@@ -142,7 +142,44 @@
142142
android:layout_gravity="center"
143143
android:orientation="horizontal">
144144

145-
<include layout="@layout/cat_floating_toolbar_content" />
145+
<Button
146+
android:id="@+id/floating_toolbar_vibrant_button_bold"
147+
style="@style/Widget.Material3.FloatingToolbar.IconButton.Vibrant"
148+
android:layout_width="wrap_content"
149+
android:layout_height="wrap_content"
150+
android:checkable="true"
151+
android:contentDescription="@string/cat_floating_toolbar_button_bold_content_description"
152+
app:icon="@drawable/ic_format_bold_24px" />
153+
<Button
154+
style="@style/Widget.Material3.FloatingToolbar.IconButton.Vibrant"
155+
android:id="@+id/floating_toolbar_vibrant_button_italic"
156+
android:layout_width="wrap_content"
157+
android:layout_height="wrap_content"
158+
android:checkable="true"
159+
android:contentDescription="@string/cat_floating_toolbar_button_italic_content_description"
160+
app:icon="@drawable/ic_format_italic_24px" />
161+
<Button
162+
style="@style/Widget.Material3.FloatingToolbar.IconButton.Vibrant"
163+
android:id="@+id/floating_toolbar_vibrant_button_underlined"
164+
android:layout_width="wrap_content"
165+
android:layout_height="wrap_content"
166+
android:checkable="true"
167+
android:contentDescription="@string/cat_floating_toolbar_button_underlined_content_description"
168+
app:icon="@drawable/ic_format_underlined_24px" />
169+
<Button
170+
style="@style/Widget.Material3.FloatingToolbar.IconButton.Vibrant"
171+
android:id="@+id/floating_toolbar_vibrant_button_color_text"
172+
android:layout_width="wrap_content"
173+
android:layout_height="wrap_content"
174+
android:contentDescription="@string/cat_floating_toolbar_button_color_text_content_description"
175+
app:icon="@drawable/ic_format_color_text_24px" />
176+
<Button
177+
style="@style/Widget.Material3.FloatingToolbar.IconButton.Vibrant"
178+
android:id="@+id/floating_toolbar_vibrant_button_color_fill"
179+
android:layout_width="wrap_content"
180+
android:layout_height="wrap_content"
181+
android:contentDescription="@string/cat_floating_toolbar_button_color_fill_content_description"
182+
app:icon="@drawable/ic_format_color_fill_24px" />
146183
</LinearLayout>
147184
</com.google.android.material.floatingtoolbar.FloatingToolbarLayout>
148185
</androidx.coordinatorlayout.widget.CoordinatorLayout>

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

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,10 @@
3434

3535
<!-- Style for Vibrant color variation of the Floating Toolbar. -->
3636
<style name="Widget.Material3.FloatingToolbar.Vibrant">
37-
<item name="materialThemeOverlay">@style/ThemeOverlay.Material3.FloatingToolbar.Vibrant</item>
3837
<item name="backgroundTint">@macro/m3_comp_toolbar_floating_vibrant_container_color</item>
3938
</style>
4039

41-
<!-- Style for icon buttons within Floating Toolbars. This style is
42-
automatically set on all buttons which use ?attr/materialIconButtonStyle
43-
for their button style and are children of a Floating Toolbar. -->
44-
<style name="Widget.Material3.FloatingToolbar.IconButton" parent="Widget.Material3.Button.IconButton"/>
45-
46-
<!-- Style for icon buttons within Vibrant Floating Toolbars. This style is
47-
automatically set on all buttons which use ?attr/materialIconButtonStyle
48-
for their button style and are children of a Vibrant Floating Toolbar. -->
40+
<!-- Style for icon buttons within Vibrant Floating Toolbars. -->
4941
<style name="Widget.Material3.FloatingToolbar.IconButton.Vibrant" parent="Widget.Material3.Button.IconButton.Filled.Tonal">
5042
<item name="android:textColor">@color/m3_floating_toolbar_vibrant_icon_button_text_color_selector</item>
5143
<item name="backgroundTint">@color/m3_floating_toolbar_vibrant_icon_button_container_color_selector</item>

0 commit comments

Comments
 (0)