Add popupMenuBackground theme attribute and combine light and dark Menu styles

into one style that references the new attribute

PiperOrigin-RevId: 277340044
(cherry picked from commit aa7d83333e58de31ab37f0c11733cebf55d8e28e)
This commit is contained in:
dniz 2019-10-29 15:29:56 -04:00 committed by Leticia Santos
parent d10a01474b
commit a23557bbb7
10 changed files with 69 additions and 37 deletions

View File

@ -35,11 +35,11 @@
<!-- Widget styles -->
<item name="android:contextPopupMenuStyle" tools:targetApi="n">
@style/Widget.MaterialComponents.PopupMenu.ContextMenu.Dark
@style/Widget.MaterialComponents.PopupMenu.ContextMenu
</item>
<item name="actionBarStyle">@style/Widget.MaterialComponents.ActionBar.Surface</item>
<item name="actionBarTheme">@style/ThemeOverlay.MaterialComponents.ActionBar.Surface</item>
<item name="actionOverflowMenuStyle">@style/Widget.MaterialComponents.PopupMenu.Overflow.Dark</item>
<item name="actionOverflowMenuStyle">@style/Widget.MaterialComponents.PopupMenu.Overflow</item>
<item name="appBarLayoutStyle">@style/Widget.MaterialComponents.AppBarLayout.Surface</item>
<item name="badgeStyle">@style/Widget.MaterialComponents.Badge</item>
<item name="borderlessButtonStyle">@style/Widget.MaterialComponents.Button.TextButton</item>
@ -52,13 +52,13 @@
<item name="chipStandaloneStyle">@style/Widget.MaterialComponents.Chip.Entry</item>
<item name="extendedFloatingActionButtonStyle">@style/Widget.MaterialComponents.ExtendedFloatingActionButton.Icon</item>
<item name="floatingActionButtonStyle">@style/Widget.MaterialComponents.FloatingActionButton</item>
<item name="listPopupWindowStyle">@style/Widget.MaterialComponents.PopupMenu.ListPopupWindow.Dark</item>
<item name="listPopupWindowStyle">@style/Widget.MaterialComponents.PopupMenu.ListPopupWindow</item>
<item name="materialButtonStyle">@style/Widget.MaterialComponents.Button</item>
<item name="materialButtonOutlinedStyle">@style/Widget.MaterialComponents.Button.OutlinedButton</item>
<item name="materialButtonToggleGroupStyle">@style/Widget.MaterialComponents.MaterialButtonToggleGroup</item>
<item name="materialCardViewStyle">@style/Widget.MaterialComponents.CardView</item>
<item name="navigationViewStyle">@style/Widget.MaterialComponents.NavigationView</item>
<item name="popupMenuStyle">@style/Widget.MaterialComponents.PopupMenu.Dark</item>
<item name="popupMenuStyle">@style/Widget.MaterialComponents.PopupMenu</item>
<item name="radioButtonStyle">@style/Widget.MaterialComponents.CompoundButton.RadioButton</item>
<item name="snackbarStyle">@style/Widget.MaterialComponents.Snackbar</item>
<item name="snackbarButtonStyle">@style/Widget.MaterialComponents.Button.TextButton.Snackbar</item>

View File

@ -46,6 +46,7 @@
<item name="colorOnPrimarySurface">?attr/colorOnSurface</item>
<item name="scrimBackground">@color/mtrl_scrim_color</item>
<item name="popupMenuBackground">@drawable/mtrl_popupmenu_background_dark</item>
<!-- Type styles -->
<item name="textAppearanceHeadline1">@style/TextAppearance.MaterialComponents.Headline1</item>
@ -94,6 +95,7 @@
<item name="colorOnPrimarySurface">?attr/colorOnPrimary</item>
<item name="scrimBackground">@color/mtrl_scrim_color</item>
<item name="popupMenuBackground">@drawable/mtrl_popupmenu_background</item>
<!-- Type styles -->
<item name="textAppearanceHeadline1">@style/TextAppearance.MaterialComponents.Headline1</item>

View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2019 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.
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="?attr/colorSurface"/>
<corners
android:bottomLeftRadius="4dp"
android:bottomRightRadius="4dp"
android:topLeftRadius="4dp"
android:topRightRadius="4dp"/>
<padding
android:bottom="8dp"
android:top="8dp"/>
</shape>

View File

@ -18,17 +18,17 @@
<resources>
<style name="Widget.MaterialComponents.PopupMenu.Overflow" parent="Base.Widget.MaterialComponents.PopupMenu.Overflow">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background</item>
<item name="android:popupBackground">?attr/popupMenuBackground</item>
<item name="android:popupElevation">8dp</item>
</style>
<style name="Widget.MaterialComponents.PopupMenu" parent="Base.Widget.MaterialComponents.PopupMenu">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background</item>
<item name="android:popupBackground">?attr/popupMenuBackground</item>
<item name="android:popupElevation">8dp</item>
</style>
<style name="Base.Widget.MaterialComponents.PopupMenu.ListPopupWindow" parent="Widget.AppCompat.ListPopupWindow">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background</item>
<item name="android:popupBackground">?attr/popupMenuBackground</item>
<item name="android:popupElevation">8dp</item>
<item name="android:dropDownVerticalOffset">1dp</item>
</style>

View File

@ -17,30 +17,14 @@
<resources>
<style name="Widget.MaterialComponents.PopupMenu.Overflow.Dark">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background_dark</item>
</style>
<style name="Widget.MaterialComponents.PopupMenu.Dark">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background_dark</item>
</style>
<style name="Widget.MaterialComponents.PopupMenu.ListPopupWindow" parent="Base.Widget.MaterialComponents.PopupMenu.ListPopupWindow">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background</item>
<item name="android:popupBackground">?attr/popupMenuBackground</item>
<item name="android:popupElevation">8dp</item>
</style>
<style name="Widget.MaterialComponents.PopupMenu.ListPopupWindow.Dark">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background_dark</item>
</style>
<style name="Widget.MaterialComponents.PopupMenu.ContextMenu" parent="Base.Widget.MaterialComponents.PopupMenu.ContextMenu">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background</item>
<item name="android:popupBackground">?attr/popupMenuBackground</item>
<item name="android:popupElevation">8dp</item>
</style>
<style name="Widget.MaterialComponents.PopupMenu.ContextMenu.Dark">
<item name="android:popupBackground">@drawable/mtrl_popupmenu_background_dark</item>
</style>
</resources>

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2019 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.
-->
<resources>
<!-- Background for PopupMenus. -->
<attr name="popupMenuBackground" format="reference" />
</resources>

View File

@ -31,22 +31,14 @@
<style name="Widget.MaterialComponents.PopupMenu" parent="Base.Widget.MaterialComponents.PopupMenu"/>
<style name="Widget.MaterialComponents.PopupMenu.Dark"/>
<style name="Widget.MaterialComponents.PopupMenu.Overflow.Dark"/>
<!-- List Popup Window Menus -->
<style name="Base.Widget.MaterialComponents.PopupMenu.ListPopupWindow" parent="Widget.AppCompat.ListPopupWindow"/>
<style name="Widget.MaterialComponents.PopupMenu.ListPopupWindow" parent="Base.Widget.MaterialComponents.PopupMenu.ListPopupWindow"/>
<style name="Widget.MaterialComponents.PopupMenu.ListPopupWindow.Dark"/>
<!-- Context Menus -->
<style name="Base.Widget.MaterialComponents.PopupMenu.ContextMenu" parent="Widget.AppCompat.PopupMenu"/>
<style name="Widget.MaterialComponents.PopupMenu.ContextMenu" parent="Base.Widget.MaterialComponents.PopupMenu.ContextMenu"/>
<style name="Widget.MaterialComponents.PopupMenu.ContextMenu.Dark"/>
</resources>

View File

@ -35,11 +35,11 @@
<!-- Widget styles -->
<item name="android:contextPopupMenuStyle" tools:targetApi="n">
@style/Widget.MaterialComponents.PopupMenu.ContextMenu.Dark
@style/Widget.MaterialComponents.PopupMenu.ContextMenu
</item>
<item name="actionBarStyle">@style/Widget.MaterialComponents.ActionBar.Surface</item>
<item name="actionBarTheme">@style/ThemeOverlay.MaterialComponents.ActionBar.Surface</item>
<item name="actionOverflowMenuStyle">@style/Widget.MaterialComponents.PopupMenu.Overflow.Dark</item>
<item name="actionOverflowMenuStyle">@style/Widget.MaterialComponents.PopupMenu.Overflow</item>
<item name="appBarLayoutStyle">@style/Widget.MaterialComponents.AppBarLayout.Surface</item>
<item name="badgeStyle">@style/Widget.MaterialComponents.Badge</item>
<item name="borderlessButtonStyle">@style/Widget.MaterialComponents.Button.TextButton</item>
@ -51,13 +51,13 @@
<item name="chipStandaloneStyle">@style/Widget.MaterialComponents.Chip.Entry</item>
<item name="extendedFloatingActionButtonStyle">@style/Widget.MaterialComponents.ExtendedFloatingActionButton.Icon</item>
<item name="floatingActionButtonStyle">@style/Widget.MaterialComponents.FloatingActionButton</item>
<item name="listPopupWindowStyle">@style/Widget.MaterialComponents.PopupMenu.ListPopupWindow.Dark</item>
<item name="listPopupWindowStyle">@style/Widget.MaterialComponents.PopupMenu.ListPopupWindow</item>
<item name="materialButtonStyle">@style/Widget.MaterialComponents.Button</item>
<item name="materialButtonOutlinedStyle">@style/Widget.MaterialComponents.Button.OutlinedButton</item>
<item name="materialButtonToggleGroupStyle">@style/Widget.MaterialComponents.MaterialButtonToggleGroup</item>
<item name="materialCardViewStyle">@style/Widget.MaterialComponents.CardView</item>
<item name="navigationViewStyle">@style/Widget.MaterialComponents.NavigationView</item>
<item name="popupMenuStyle">@style/Widget.MaterialComponents.PopupMenu.Dark</item>
<item name="popupMenuStyle">@style/Widget.MaterialComponents.PopupMenu</item>
<item name="radioButtonStyle">@style/Widget.MaterialComponents.CompoundButton.RadioButton</item>
<item name="snackbarStyle">@style/Widget.MaterialComponents.Snackbar</item>
<item name="snackbarButtonStyle">@style/Widget.MaterialComponents.Button.TextButton.Snackbar</item>

View File

@ -46,6 +46,7 @@
<item name="colorOnPrimarySurface">?attr/colorOnSurface</item>
<item name="scrimBackground">@color/mtrl_scrim_color</item>
<item name="popupMenuBackground">@drawable/mtrl_popupmenu_background_dark</item>
<!-- Type styles -->
<item name="textAppearanceHeadline1">@style/TextAppearance.MaterialComponents.Headline1</item>
@ -94,6 +95,7 @@
<item name="colorOnPrimarySurface">?attr/colorOnPrimary</item>
<item name="scrimBackground">@color/mtrl_scrim_color</item>
<item name="popupMenuBackground">@drawable/mtrl_popupmenu_background</item>
<!-- Type styles -->
<item name="textAppearanceHeadline1">@style/TextAppearance.MaterialComponents.Headline1</item>
@ -142,6 +144,7 @@
<item name="colorOnPrimarySurface">?attr/colorOnPrimary</item>
<item name="scrimBackground">@color/mtrl_scrim_color</item>
<item name="popupMenuBackground">@drawable/mtrl_popupmenu_background</item>
<!-- Type styles -->
<item name="textAppearanceHeadline1">@style/TextAppearance.MaterialComponents.Headline1</item>