
Completely refactor the blacklist dialog to not only use the Storage Access Framework, but also to completely eliminate the material dialogs dependency.
231 lines
No EOL
12 KiB
XML
231 lines
No EOL
12 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<resources>
|
|
<!-- Master parent theme based off of Theme.AppCompat.DayNight.NoActionBar -->
|
|
<style name="Theme.Master" parent="Theme.AppCompat.DayNight.NoActionBar" />
|
|
<!-- Template theme that handles edge-to-edge on other styles variants -->
|
|
<style name="Theme.Template" parent="Theme.Master" />
|
|
|
|
<!-- Base theme -->
|
|
<style name="Theme.Base" parent="Theme.Template">
|
|
<item name="android:windowBackground">@color/background</item>
|
|
<item name="android:fontFamily">@font/inter</item>
|
|
<item name="android:textCursorDrawable">@drawable/ui_cursor</item>
|
|
<item name="android:scrollbars">none</item>
|
|
<item name="android:windowIsFloating">false</item>
|
|
|
|
<item name="popupMenuStyle">@style/Widget.CustomPopup</item>
|
|
<item name="colorControlNormal">@color/control_color</item>
|
|
<item name="alertDialogTheme">@style/Theme.CustomDialog</item>
|
|
<item name="colorControlHighlight">@color/selection_color</item>
|
|
<item name="colorControlActivated">?attr/colorPrimary</item>
|
|
<item name="cornerRadius">0dp</item>
|
|
<item name="colorSurface">@color/background</item>
|
|
</style>
|
|
|
|
<!-- Toolbar theme -->
|
|
<style name="Toolbar.Style" parent="ThemeOverlay.MaterialComponents.ActionBar">
|
|
<item name="android:layout_width">match_parent</item>
|
|
<item name="android:layout_height">?android:attr/actionBarSize</item>
|
|
<item name="popupTheme">@style/AppThemeOverlay.ToolbarPopup</item>
|
|
|
|
<item name="titleTextAppearance">@style/TextAppearance.Toolbar.Header</item>
|
|
<item name="titleTextColor">?attr/colorPrimary</item>
|
|
</style>
|
|
|
|
<!-- Toolbar sub-style with a nav icon -->
|
|
<style name="Toolbar.Style.Icon" parent="Toolbar.Style">
|
|
<item name="navigationIcon">@drawable/ic_back</item>
|
|
<item name="contentInsetStartWithNavigation">0dp</item>
|
|
</style>
|
|
|
|
<!-- Toolbar popup menu -->
|
|
<style name="AppThemeOverlay.ToolbarPopup" parent="ThemeOverlay.AppCompat.DayNight">
|
|
<item name="android:colorBackground">@color/background</item>
|
|
<item name="colorControlHighlight">@color/selection_color</item>
|
|
</style>
|
|
|
|
<!-- Toolbar Title EntryNames -->
|
|
<style name="TextAppearance.Toolbar.Header" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
|
|
<item name="android:fontFamily">@font/inter_exbold</item>
|
|
<item name="android:textSize">@dimen/text_size_toolbar_header</item>
|
|
</style>
|
|
|
|
<!-- Title theme for Detail Fragments -->
|
|
<style name="DetailTitleText">
|
|
<item name="android:textAppearance">?android:attr/textAppearanceLarge</item>
|
|
<item name="android:textColor">?attr/colorPrimary</item>
|
|
<item name="android:fontFamily">@font/inter_exbold</item>
|
|
<item name="android:textSize">@dimen/text_size_detail_header_max</item>
|
|
<item name="android:maxLines">1</item>
|
|
<item name="android:ellipsize">end</item>
|
|
<item name="android:textAlignment">viewStart</item>
|
|
|
|
<item name="autoSizeMaxTextSize">@dimen/text_size_detail_header_max</item>
|
|
<item name="autoSizeMinTextSize">@dimen/text_size_min</item>
|
|
<item name="autoSizeStepGranularity">@dimen/text_size_increment</item>
|
|
<item name="autoSizeTextType">uniform</item>
|
|
</style>
|
|
|
|
<!-- Smaller Title theme that is used for headers -->
|
|
<style name="TextAppearance.SmallHeader" parent="TextAppearance.MaterialComponents.Body2">
|
|
<item name="android:fontFamily">@font/inter_semibold</item>
|
|
</style>
|
|
|
|
<!-- Custom popup menu theme -->
|
|
<style name="Widget.CustomPopup" parent="Widget.AppCompat.PopupMenu">
|
|
<item name="android:popupBackground">@color/background</item>
|
|
<item name="colorControlHighlight">@color/selection_color</item>
|
|
<item name="cornerRadius">0dp</item>
|
|
</style>
|
|
|
|
<!-- Custom Dialog EntryNames -->
|
|
<style name="Theme.CustomDialog" parent="Theme.MaterialComponents.DayNight.Dialog">
|
|
<item name="colorBackgroundFloating">@color/background</item>
|
|
<item name="android:windowTitleStyle">@style/TextAppearance.Dialog.Title</item>
|
|
<item name="colorPrimary">@color/control_color</item>
|
|
<item name="colorSecondary">@color/control_color</item>
|
|
<item name="dialogCornerRadius">0dp</item>
|
|
<item name="colorControlHighlight">@color/selection_color</item>
|
|
</style>
|
|
|
|
<!-- Custom dialog title theme -->
|
|
<style name="TextAppearance.Dialog.Title" parent="@android:style/TextAppearance.Material.Title">
|
|
<item name="android:fontFamily">@font/inter_exbold</item>
|
|
</style>
|
|
|
|
<!-- Style for the general item background -->
|
|
<style name="ItemSurroundings">
|
|
<item name="android:layout_width">match_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:background">@drawable/ui_ripple</item>
|
|
<item name="android:padding">@dimen/padding_medium</item>
|
|
<item name="android:clickable">true</item>
|
|
<item name="android:focusable">true</item>
|
|
</style>
|
|
|
|
<!-- Base style for any item text -->
|
|
<style name="ItemText">
|
|
<item name="android:textAlignment">viewStart</item>
|
|
<item name="android:layout_width">0dp</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:ellipsize">end</item>
|
|
<item name="android:maxLines">1</item>
|
|
<item name="android:layout_marginStart">@dimen/margin_medium</item>
|
|
</style>
|
|
|
|
<!-- Style for primary item text -->
|
|
<style name="ItemText.Primary" parent="ItemText">
|
|
<item name="android:textAppearance">?android:attr/textAppearanceListItem</item>
|
|
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
|
</style>
|
|
|
|
<!-- Style for secondary item text -->
|
|
<style name="ItemText.Secondary" parent="ItemText">
|
|
<item name="android:textAppearance">?android:attr/textAppearanceListItemSecondary</item>
|
|
<item name="android:textColor">?android:attr/textColorSecondary</item>
|
|
</style>
|
|
|
|
<!-- Style for header text -->
|
|
<style name="HeaderText">
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_width">match_parent</item>
|
|
<item name="android:paddingStart">@dimen/margin_medium</item>
|
|
<item name="android:paddingTop">@dimen/padding_small</item>
|
|
<item name="android:paddingBottom">@dimen/padding_small</item>
|
|
<item name="android:paddingEnd">@dimen/padding_medium</item>
|
|
<item name="android:textSize">@dimen/text_size_header</item>
|
|
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
|
<item name="android:fontFamily">@font/inter_semibold</item>
|
|
<item name="android:background">@drawable/ui_header_dividers</item>
|
|
<item name="android:textAlignment">viewStart</item>
|
|
</style>
|
|
|
|
<!-- Style for an action header -->
|
|
<style name="HeaderAction">
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_width">0dp</item>
|
|
<item name="android:paddingStart">@dimen/margin_medium</item>
|
|
<item name="android:paddingTop">@dimen/padding_small</item>
|
|
<item name="android:paddingBottom">@dimen/padding_small</item>
|
|
<item name="android:paddingEnd">@dimen/padding_medium</item>
|
|
<item name="android:background">@drawable/ui_small_unbounded_ripple</item>
|
|
</style>
|
|
|
|
<!-- Bottomsheet style -->
|
|
<style name="Theme.BottomSheetFix" parent="@style/Theme.Design.BottomSheetDialog">
|
|
<item name="android:windowIsFloating">false</item>
|
|
<item name="android:statusBarColor">@android:color/transparent</item>
|
|
<item name="bottomSheetStyle">@style/Theme.BottomSheetHeightFix</item>
|
|
</style>
|
|
|
|
<!-- Fix to make the bottomsheet go to full height instantly. -->
|
|
<style name="Theme.BottomSheetHeightFix" parent="Widget.Design.BottomSheet.Modal">
|
|
<item name="behavior_peekHeight">500dp</item>
|
|
</style>
|
|
|
|
<!-- Base style for the material buttons -->
|
|
<style name="Widget.MaterialComponents.Button.Base" parent="@style/Widget.MaterialComponents.Button.TextButton">
|
|
<item name="android:layout_width">0dp</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:clickable">true</item>
|
|
<item name="android:focusable">true</item>
|
|
<item name="android:theme">@style/Theme.MaterialComponents</item>
|
|
<item name="rippleColor">@color/selection_color</item>
|
|
<item name="fontFamily">@font/inter_semibold</item>
|
|
<item name="textAllCaps">false</item>
|
|
<item name="cornerRadius">0dp</item>
|
|
</style>
|
|
|
|
<!-- An "Unimportant" material button, used for the "Play" button -->
|
|
<style name="Widget.MaterialComponents.Button.Unimportant" parent="@style/Widget.MaterialComponents.Button.Base">
|
|
<item name="android:layout_marginTop">@dimen/margin_small</item>
|
|
<item name="android:layout_marginStart">@dimen/margin_medium</item>
|
|
<item name="android:layout_marginEnd">@dimen/margin_small</item>
|
|
<item name="strokeColor">@color/divider_color</item>
|
|
<item name="strokeWidth">@dimen/width_play_stroke</item>
|
|
</style>
|
|
|
|
<!-- An highlighted material button, used for the "Shuffle" button -->
|
|
<style name="Widget.MaterialComponents.Button.Highlighted" parent="@style/Widget.MaterialComponents.Button.Base">
|
|
<item name="android:layout_marginStart">@dimen/margin_small</item>
|
|
<item name="android:layout_marginEnd">@dimen/margin_medium</item>
|
|
<item name="rippleColor">@color/selection_color</item>
|
|
<item name="fontFamily">@font/inter_semibold</item>
|
|
<item name="textAllCaps">false</item>
|
|
<item name="android:textColor">@color/background</item>
|
|
</style>
|
|
|
|
<!-- Style for an unbounded button -->
|
|
<style name="Widget.Button.Unbounded" parent="Widget.AppCompat.Button.Borderless">
|
|
<item name="android:layout_width">@dimen/size_play_pause_compact</item>
|
|
<item name="android:layout_height">@dimen/size_play_pause_compact</item>
|
|
<item name="android:background">@drawable/ui_unbounded_ripple</item>
|
|
<item name="android:scaleType">fitCenter</item>
|
|
<item name="android:padding">@dimen/padding_microscopic</item>
|
|
</style>
|
|
|
|
<!-- Style for the play/pause circle button -->
|
|
<style name="PlayPause">
|
|
<item name="android:layout_height">@dimen/size_play_pause</item>
|
|
<item name="android:layout_width">@dimen/size_play_pause</item>
|
|
<item name="android:background">@drawable/ui_circle_ripple</item>
|
|
<item name="android:backgroundTint">?attr/colorPrimary</item>
|
|
<item name="android:tint">?android:attr/windowBackground</item>
|
|
<item name="android:layout_marginStart">@dimen/margin_large</item>
|
|
<item name="android:layout_marginTop">@dimen/margin_medium</item>
|
|
<item name="android:layout_marginEnd">@dimen/margin_large</item>
|
|
<item name="android:scaleType">fitCenter</item>
|
|
<item name="android:padding">@dimen/padding_medium</item>
|
|
</style>
|
|
|
|
<!-- Style for dialog buttons -->
|
|
<style name="Widget.Button.Dialog" parent="Widget.AppCompat.Button">
|
|
<item name="android:layout_height">@dimen/height_dialog_button</item>
|
|
<item name="android:layout_width">wrap_content</item>
|
|
<item name="android:paddingStart">@dimen/padding_mid_small</item>
|
|
<item name="android:paddingEnd">@dimen/padding_mid_small</item>
|
|
<item name="android:minWidth">@dimen/width_dialog_button_min</item>
|
|
<item name="android:background">@drawable/ui_ripple</item>
|
|
<item name="android:fontFamily">@font/inter_semibold</item>
|
|
</style>
|
|
</resources> |