diff --git a/app/src/fdroid/java/code/name/monkey/retromusic/billing/BillingManager.kt b/app/src/fdroid/java/code/name/monkey/retromusic/billing/BillingManager.kt index fa2402ef0..51c350adc 100644 --- a/app/src/fdroid/java/code/name/monkey/retromusic/billing/BillingManager.kt +++ b/app/src/fdroid/java/code/name/monkey/retromusic/billing/BillingManager.kt @@ -1,6 +1,9 @@ package code.name.monkey.retromusic.billing -class BillingManager { +import android.content.Context + +@Suppress("UNUSED_PARAMETER") +class BillingManager(context: Context) { fun release() {} diff --git a/app/src/main/java/code/name/monkey/retromusic/extensions/ViewExtensions.kt b/app/src/main/java/code/name/monkey/retromusic/extensions/ViewExtensions.kt index d9ce08d9c..02764b1a0 100644 --- a/app/src/main/java/code/name/monkey/retromusic/extensions/ViewExtensions.kt +++ b/app/src/main/java/code/name/monkey/retromusic/extensions/ViewExtensions.kt @@ -14,9 +14,11 @@ */ package code.name.monkey.retromusic.extensions +import android.R import android.animation.Animator import android.animation.ObjectAnimator import android.animation.ValueAnimator +import android.content.res.ColorStateList import android.graphics.drawable.BitmapDrawable import android.view.LayoutInflater import android.view.View @@ -25,6 +27,7 @@ import android.view.ViewTreeObserver import android.view.animation.AnimationUtils import android.view.inputmethod.InputMethodManager import android.widget.EditText +import androidx.annotation.ColorInt import androidx.annotation.LayoutRes import androidx.annotation.Px import androidx.core.animation.doOnEnd @@ -67,6 +70,15 @@ fun EditText.appHandleColor(): EditText { return this } +fun NavigationBarView.setItemColors(@ColorInt normalColor: Int, @ColorInt selectedColor: Int) { + val csl = ColorStateList( + arrayOf(intArrayOf(-R.attr.state_checked), intArrayOf(R.attr.state_checked)), + intArrayOf(normalColor, selectedColor) + ) + itemIconTintList = csl + itemTextColor = csl +} + /** * Potentially animate showing a [BottomNavigationView]. * diff --git a/app/src/main/java/code/name/monkey/retromusic/util/PreferenceUtil.kt b/app/src/main/java/code/name/monkey/retromusic/util/PreferenceUtil.kt index c2fe85c2b..3881e8833 100644 --- a/app/src/main/java/code/name/monkey/retromusic/util/PreferenceUtil.kt +++ b/app/src/main/java/code/name/monkey/retromusic/util/PreferenceUtil.kt @@ -472,10 +472,10 @@ object PreferenceUtil { val tabTitleMode: Int get() { return when (sharedPreferences.getStringOrDefault( - TAB_TEXT_MODE, "1" + TAB_TEXT_MODE, "0" ).toInt()) { - 1 -> BottomNavigationView.LABEL_VISIBILITY_LABELED 0 -> BottomNavigationView.LABEL_VISIBILITY_AUTO + 1 -> BottomNavigationView.LABEL_VISIBILITY_LABELED 2 -> BottomNavigationView.LABEL_VISIBILITY_SELECTED 3 -> BottomNavigationView.LABEL_VISIBILITY_UNLABELED else -> BottomNavigationView.LABEL_VISIBILITY_LABELED diff --git a/app/src/main/java/code/name/monkey/retromusic/views/BottomNavigationBarTinted.kt b/app/src/main/java/code/name/monkey/retromusic/views/TintedBottomNavigationView.kt similarity index 81% rename from app/src/main/java/code/name/monkey/retromusic/views/BottomNavigationBarTinted.kt rename to app/src/main/java/code/name/monkey/retromusic/views/TintedBottomNavigationView.kt index 0e5ddb455..116f3d0a3 100644 --- a/app/src/main/java/code/name/monkey/retromusic/views/BottomNavigationBarTinted.kt +++ b/app/src/main/java/code/name/monkey/retromusic/views/TintedBottomNavigationView.kt @@ -19,14 +19,13 @@ import android.content.res.ColorStateList import android.util.AttributeSet import code.name.monkey.appthemehelper.ThemeStore import code.name.monkey.appthemehelper.util.ATHUtil -import code.name.monkey.appthemehelper.util.ColorUtil -import code.name.monkey.appthemehelper.util.NavigationViewUtil import code.name.monkey.retromusic.extensions.addAlpha +import code.name.monkey.retromusic.extensions.setItemColors import code.name.monkey.retromusic.util.PreferenceUtil import com.google.android.material.bottomnavigation.BottomNavigationView import dev.chrisbanes.insetter.applyInsetter -class BottomNavigationBarTinted @JvmOverloads constructor( +class TintedBottomNavigationView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0, @@ -55,16 +54,7 @@ class BottomNavigationBarTinted @JvmOverloads constructor( if (!PreferenceUtil.materialYou) { val iconColor = ATHUtil.resolveColor(context, android.R.attr.colorControlNormal) val accentColor = ThemeStore.accentColor(context) - NavigationViewUtil.setItemIconColors( - this, - ColorUtil.withAlpha(iconColor, 0.5f), - accentColor - ) - NavigationViewUtil.setItemTextColors( - this, - ColorUtil.withAlpha(iconColor, 0.5f), - accentColor - ) + setItemColors(iconColor, accentColor) itemRippleColor = ColorStateList.valueOf(accentColor.addAlpha(0.08F)) itemActiveIndicatorColor = ColorStateList.valueOf(accentColor.addAlpha(0.12F)) } diff --git a/app/src/main/java/code/name/monkey/retromusic/views/TintedNavigationRailView.kt b/app/src/main/java/code/name/monkey/retromusic/views/TintedNavigationRailView.kt new file mode 100644 index 000000000..828e6fc2b --- /dev/null +++ b/app/src/main/java/code/name/monkey/retromusic/views/TintedNavigationRailView.kt @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2019 Hemanth Savarala. + * + * Licensed under the GNU General Public License v3 + * + * This is free software: you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by + * the Free Software Foundation either version 3 of the License, or (at your option) any later version. + * + * This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. + */ + +package code.name.monkey.retromusic.views + +import android.content.Context +import android.content.res.ColorStateList +import android.util.AttributeSet +import code.name.monkey.appthemehelper.util.ATHUtil +import code.name.monkey.retromusic.extensions.accentColor +import code.name.monkey.retromusic.extensions.addAlpha +import code.name.monkey.retromusic.extensions.setItemColors +import code.name.monkey.retromusic.util.PreferenceUtil +import com.google.android.material.navigationrail.NavigationRailView + +class TintedNavigationRailView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0, +) : NavigationRailView(context, attrs, defStyleAttr) { + + init { + if (!isInEditMode) { + labelVisibilityMode = PreferenceUtil.tabTitleMode + + if (!PreferenceUtil.materialYou) { + val iconColor = ATHUtil.resolveColor(context, android.R.attr.colorControlNormal) + val accentColor = context.accentColor() + setItemColors(iconColor, accentColor) + itemRippleColor = ColorStateList.valueOf(accentColor.addAlpha(0.08F)) + itemActiveIndicatorColor = ColorStateList.valueOf(accentColor.addAlpha(0.12F)) + } + } + } +} \ No newline at end of file diff --git a/app/src/main/res/layout-land/sliding_music_panel_layout.xml b/app/src/main/res/layout-land/sliding_music_panel_layout.xml index c314081d8..4d6074066 100644 --- a/app/src/main/res/layout-land/sliding_music_panel_layout.xml +++ b/app/src/main/res/layout-land/sliding_music_panel_layout.xml @@ -10,7 +10,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - -