style: Use colorSurface everywhere

Instead of using @color/background directly, use ?attr/colorSurface
so that changes can be made to the theming easier. This also
resolves some more minor issues regarding certain widget's
backgrounds.
This commit is contained in:
OxygenCobalt 2021-05-24 19:26:54 -06:00
parent 9974bd32eb
commit 804c38d7ce
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
17 changed files with 36 additions and 26 deletions

View file

@ -25,16 +25,16 @@ class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val binding = DataBindingUtil.setContentView<ActivityMainBinding>(
this, R.layout.activity_main
)
val settingsManager = SettingsManager.getInstance()
val newAccent = Accent.set(settingsManager.accent)
AppCompatDelegate.setDefaultNightMode(settingsManager.theme)
setTheme(newAccent.theme)
val binding = DataBindingUtil.setContentView<ActivityMainBinding>(
this, R.layout.activity_main
)
if (isEdgeOn()) {
setupEdgeToEdge(binding)
}

View file

@ -21,6 +21,7 @@ import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.ui.Accent
import org.oxycblt.auxio.ui.isLandscape
import org.oxycblt.auxio.ui.isTablet
import org.oxycblt.auxio.ui.resolveAttr
import org.oxycblt.auxio.ui.toColor
/**
@ -76,6 +77,10 @@ class MainFragment : Fragment() {
navigateWithItem(controller, item)
}
}
// BottomNavigationView is a special little snowflake and doesn't like it when
// we set the background in XML
setBackgroundColor(R.attr.colorSurface.resolveAttr(requireContext()))
}
// --- VIEWMODEL SETUP ---

View file

@ -2,7 +2,7 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="@color/background"
android:tint="?attr/colorSurface"
android:viewportWidth="24"
android:viewportHeight="24">
<path

View file

@ -2,7 +2,7 @@
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<solid android:color="@color/background" />
<solid android:color="?attr/colorSurface" />
</shape>
</item>
<item>

View file

@ -28,7 +28,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true"
android:background="?android:attr/windowBackground"
android:background="?android:attr/colorBackground"
android:baselineAligned="false"
android:elevation="@dimen/elevation_normal"
android:orientation="horizontal"
@ -39,7 +39,7 @@
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.5"
android:background="@color/background"
android:background="?android:attr/colorBackground"
android:elevation="0dp"
app:elevation="0dp"
app:menu="@menu/menu_nav" />

View file

@ -24,7 +24,7 @@
android:id="@+id/playback_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:background="?attr/colorSurface"
android:fitsSystemWindows="true">
<androidx.appcompat.widget.Toolbar

View file

@ -24,7 +24,7 @@
android:id="@+id/playback_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:background="?attr/colorSurface"
android:fitsSystemWindows="true">
<androidx.appcompat.widget.Toolbar

View file

@ -24,7 +24,7 @@
android:id="@+id/playback_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:background="?attr/colorSurface"
android:fitsSystemWindows="true">
<androidx.appcompat.widget.Toolbar

View file

@ -12,7 +12,7 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:background="?attr/colorSurface"
android:theme="@style/Theme.Neutral">
<ImageView

View file

@ -7,7 +7,7 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/background"
android:background="?attr/colorSurface"
android:orientation="vertical"
android:paddingTop="@dimen/spacing_medium"
android:theme="@style/Theme.Neutral">

View file

@ -12,12 +12,13 @@
android:id="@+id/detail_appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorSurface"
app:liftOnScroll="true">
<com.google.android.material.appbar.MaterialToolbar
<androidx.appcompat.widget.Toolbar
android:id="@+id/detail_toolbar"
style="@style/Toolbar.Style.Icon"
android:background="?android:attr/windowBackground"
android:background="?attr/colorSurface"
android:elevation="@dimen/elevation_normal" />
</com.google.android.material.appbar.AppBarLayout>

View file

@ -26,7 +26,6 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true"
android:background="?android:attr/windowBackground"
android:elevation="@dimen/elevation_normal"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent">
@ -43,7 +42,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="@color/background"
android:background="?attr/colorSurface"
android:elevation="0dp"
app:elevation="0dp"
app:menu="@menu/menu_nav" />

View file

@ -24,7 +24,7 @@
android:id="@+id/playback_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:background="?attr/colorSurface"
android:fitsSystemWindows="true">
<androidx.appcompat.widget.Toolbar

View file

@ -8,7 +8,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
android:background="@color/background"
android:background="?attr/colorSurface"
android:orientation="vertical">
<androidx.appcompat.widget.Toolbar

View file

@ -11,13 +11,13 @@
android:id="@+id/search_appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/background"
android:background="?attr/colorSurface"
android:elevation="@dimen/elevation_normal">
<androidx.appcompat.widget.Toolbar
android:id="@+id/search_toolbar"
style="@style/Toolbar.Style"
android:elevation="@dimen/elevation_normal"
android:background="?attr/colorSurface"
app:layout_scrollFlags="scroll|enterAlways"
app:menu="@menu/menu_search"
app:title="@string/label_search" />
@ -40,7 +40,7 @@
android:id="@+id/search_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:background="?attr/colorSurface"
android:hint="@string/hint_search_library"
android:imeOptions="actionSearch|flagNoExtractUi"
android:inputType="textFilter"

View file

@ -11,7 +11,7 @@
<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="android:navigationBarColor">@color/background</item>
<item name="android:navigationBarColor">?attr/colorSurface</item>
<item name="android:windowLightStatusBar">false</item>
<item name="bottomSheetStyle">@style/Theme.BottomSheetHeightFix</item>
</style>

View file

@ -7,7 +7,8 @@
<!-- Base theme -->
<style name="Theme.Base" parent="Theme.Template">
<item name="android:windowBackground">@color/background</item>
<item name="android:windowBackground">?attr/colorSurface</item>
<item name="android:colorBackground">?attr/colorSurface</item>
<item name="android:fontFamily">@font/inter</item>
<item name="android:scrollbars">none</item>
<item name="android:windowIsFloating">false</item>
@ -23,14 +24,18 @@
<item name="colorControlActivated">?attr/colorPrimary</item>
<item name="cornerRadius">0dp</item>
<item name="colorSurface">@color/background</item>
<!--
These exact flags, in this exact order, in this exact formatting somehow make
the dialogs use the nicer material style. Please do not touch them.
-->
<item name="viewInflaterClass">com.google.android.material.theme.MaterialComponentsViewInflater</item>
<item name="viewInflaterClass">
com.google.android.material.theme.MaterialComponentsViewInflater
</item>
<item name="alertDialogTheme">@style/ThemeOverlay.MaterialComponents.Dialog.Alert</item>
<item name="materialAlertDialogTheme">@style/Theme.CustomDialog</item>
</style>
</style>
<!-- Toolbar theme -->
<style name="Toolbar.Style" parent="ThemeOverlay.MaterialComponents.ActionBar">