Fixed Splash screen when theme settings are changed
This commit is contained in:
parent
ad04c4e2ed
commit
7186071772
10 changed files with 14 additions and 50 deletions
|
@ -14,7 +14,7 @@ android {
|
||||||
vectorDrawables.useSupportLibrary = true
|
vectorDrawables.useSupportLibrary = true
|
||||||
|
|
||||||
applicationId "code.name.monkey.retromusic"
|
applicationId "code.name.monkey.retromusic"
|
||||||
versionCode 10585
|
versionCode 10587
|
||||||
versionName '5.9.0'
|
versionName '5.9.0'
|
||||||
|
|
||||||
buildConfigField("String", "GOOGLE_PLAY_LICENSING_KEY", "\"${getProperty(getProperties('../public.properties'), 'GOOGLE_PLAY_LICENSE_KEY')}\"")
|
buildConfigField("String", "GOOGLE_PLAY_LICENSING_KEY", "\"${getProperty(getProperties('../public.properties'), 'GOOGLE_PLAY_LICENSE_KEY')}\"")
|
||||||
|
@ -92,7 +92,7 @@ dependencies {
|
||||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
||||||
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
||||||
implementation "androidx.preference:preference-ktx:$preference_version"
|
implementation "androidx.preference:preference-ktx:$preference_version"
|
||||||
implementation 'androidx.core:core-ktx:1.7.0'
|
implementation 'androidx.core:core-ktx:1.8.0'
|
||||||
implementation 'androidx.palette:palette-ktx:1.0.0'
|
implementation 'androidx.palette:palette-ktx:1.0.0'
|
||||||
|
|
||||||
//Cast Dependencies
|
//Cast Dependencies
|
||||||
|
|
|
@ -39,13 +39,12 @@
|
||||||
android:supportsRtl="true"
|
android:supportsRtl="true"
|
||||||
android:theme="@style/Theme.RetroMusic.FollowSystem"
|
android:theme="@style/Theme.RetroMusic.FollowSystem"
|
||||||
android:usesCleartextTraffic="true"
|
android:usesCleartextTraffic="true"
|
||||||
tools:ignore="AllowBackup,GoogleAppIndexingWarning"
|
|
||||||
tools:targetApi="m">
|
tools:targetApi="m">
|
||||||
<activity
|
<activity
|
||||||
android:name=".activities.MainActivity"
|
android:name=".activities.MainActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:theme="@style/SplashTheme">
|
android:theme="@style/Theme.RetroMusic.SplashScreen">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN" />
|
||||||
<action android:name="android.intent.action.MUSIC_PLAYER" />
|
<action android:name="android.intent.action.MUSIC_PLAYER" />
|
||||||
|
|
|
@ -24,7 +24,6 @@ import androidx.navigation.ui.setupWithNavController
|
||||||
import code.name.monkey.retromusic.R
|
import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.activities.base.AbsCastActivity
|
import code.name.monkey.retromusic.activities.base.AbsCastActivity
|
||||||
import code.name.monkey.retromusic.extensions.*
|
import code.name.monkey.retromusic.extensions.*
|
||||||
import code.name.monkey.retromusic.fragments.settings.OnThemeChangedListener
|
|
||||||
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||||
import code.name.monkey.retromusic.helper.SearchQueryHelper.getSongs
|
import code.name.monkey.retromusic.helper.SearchQueryHelper.getSongs
|
||||||
import code.name.monkey.retromusic.interfaces.IScrollHelper
|
import code.name.monkey.retromusic.interfaces.IScrollHelper
|
||||||
|
@ -39,14 +38,14 @@ import kotlinx.coroutines.Dispatchers.IO
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import org.koin.android.ext.android.get
|
import org.koin.android.ext.android.get
|
||||||
|
|
||||||
class MainActivity : AbsCastActivity(), OnThemeChangedListener {
|
class MainActivity : AbsCastActivity() {
|
||||||
companion object {
|
companion object {
|
||||||
const val TAG = "MainActivity"
|
const val TAG = "MainActivity"
|
||||||
const val EXPAND_PANEL = "expand_panel"
|
const val EXPAND_PANEL = "expand_panel"
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(extra<Bundle>(TAG).value ?: savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setTaskDescriptionColorAuto()
|
setTaskDescriptionColorAuto()
|
||||||
hideStatusBar()
|
hideStatusBar()
|
||||||
updateTabs()
|
updateTabs()
|
||||||
|
@ -132,19 +131,6 @@ class MainActivity : AbsCastActivity(), OnThemeChangedListener {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onThemeValuesChanged() {
|
|
||||||
restart()
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun restart() {
|
|
||||||
val savedInstanceState = Bundle()
|
|
||||||
onSaveInstanceState(savedInstanceState)
|
|
||||||
finish()
|
|
||||||
val intent = Intent(this, this::class.java).putExtra(TAG, savedInstanceState)
|
|
||||||
startActivity(intent)
|
|
||||||
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onServiceConnected() {
|
override fun onServiceConnected() {
|
||||||
super.onServiceConnected()
|
super.onServiceConnected()
|
||||||
intent ?: return
|
intent ?: return
|
||||||
|
|
|
@ -265,6 +265,7 @@ class PlayerAlbumCoverFragment : AbsMusicServiceFragment(R.layout.fragment_playe
|
||||||
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {}
|
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {}
|
||||||
|
|
||||||
override fun onPageSelected(position: Int) {
|
override fun onPageSelected(position: Int) {
|
||||||
|
logD("Page Selected $position")
|
||||||
currentPosition = position
|
currentPosition = position
|
||||||
if (binding.viewPager.adapter != null) {
|
if (binding.viewPager.adapter != null) {
|
||||||
(binding.viewPager.adapter as AlbumCoverPagerAdapter).receiveColor(
|
(binding.viewPager.adapter as AlbumCoverPagerAdapter).receiveColor(
|
||||||
|
|
|
@ -108,10 +108,6 @@ abstract class AbsSettingsFragment : ATEPreferenceFragmentCompat() {
|
||||||
}
|
}
|
||||||
|
|
||||||
fun restartActivity() {
|
fun restartActivity() {
|
||||||
if (activity is OnThemeChangedListener && !VersionUtils.hasS()) {
|
activity?.recreate()
|
||||||
(activity as OnThemeChangedListener).onThemeValuesChanged()
|
|
||||||
} else {
|
|
||||||
activity?.recreate()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,6 @@ import code.name.monkey.retromusic.R
|
||||||
import code.name.monkey.retromusic.appshortcuts.DynamicShortcutManager
|
import code.name.monkey.retromusic.appshortcuts.DynamicShortcutManager
|
||||||
import code.name.monkey.retromusic.databinding.FragmentSettingsBinding
|
import code.name.monkey.retromusic.databinding.FragmentSettingsBinding
|
||||||
import code.name.monkey.retromusic.extensions.applyToolbar
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||||||
import code.name.monkey.retromusic.extensions.extra
|
|
||||||
import code.name.monkey.retromusic.extensions.findNavController
|
import code.name.monkey.retromusic.extensions.findNavController
|
||||||
import com.afollestad.materialdialogs.MaterialDialog
|
import com.afollestad.materialdialogs.MaterialDialog
|
||||||
import com.afollestad.materialdialogs.color.ColorCallback
|
import com.afollestad.materialdialogs.color.ColorCallback
|
||||||
|
@ -34,11 +33,6 @@ class SettingsFragment : Fragment(R.layout.fragment_settings), ColorCallback {
|
||||||
private var _binding: FragmentSettingsBinding? = null
|
private var _binding: FragmentSettingsBinding? = null
|
||||||
private val binding get() = _binding!!
|
private val binding get() = _binding!!
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
|
||||||
val mSavedInstanceState = extra<Bundle>(TAG).value ?: savedInstanceState
|
|
||||||
super.onCreate(mSavedInstanceState)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
_binding = FragmentSettingsBinding.bind(view)
|
_binding = FragmentSettingsBinding.bind(view)
|
||||||
setupToolbar()
|
setupToolbar()
|
||||||
|
@ -77,15 +71,7 @@ class SettingsFragment : Fragment(R.layout.fragment_settings), ColorCallback {
|
||||||
ThemeStore.editTheme(requireContext()).accentColor(color).commit()
|
ThemeStore.editTheme(requireContext()).accentColor(color).commit()
|
||||||
if (VersionUtils.hasNougatMR())
|
if (VersionUtils.hasNougatMR())
|
||||||
DynamicShortcutManager(requireContext()).updateDynamicShortcuts()
|
DynamicShortcutManager(requireContext()).updateDynamicShortcuts()
|
||||||
restartActivity()
|
activity?.recreate()
|
||||||
}
|
|
||||||
|
|
||||||
fun restartActivity() {
|
|
||||||
if (activity is OnThemeChangedListener && !VersionUtils.hasS()) {
|
|
||||||
(activity as OnThemeChangedListener).onThemeValuesChanged()
|
|
||||||
} else {
|
|
||||||
activity?.recreate()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroyView() {
|
override fun onDestroyView() {
|
||||||
|
@ -97,7 +83,3 @@ class SettingsFragment : Fragment(R.layout.fragment_settings), ColorCallback {
|
||||||
val TAG: String = SettingsFragment::class.java.simpleName
|
val TAG: String = SettingsFragment::class.java.simpleName
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
interface OnThemeChangedListener {
|
|
||||||
fun onThemeValuesChanged()
|
|
||||||
}
|
|
||||||
|
|
|
@ -72,7 +72,7 @@
|
||||||
android:paddingHorizontal="16dp"
|
android:paddingHorizontal="16dp"
|
||||||
android:scrollHorizontally="true"
|
android:scrollHorizontally="true"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:textAppearance="@style/TextViewHeadline6"
|
android:textAppearance="@style/TextViewHeadline5"
|
||||||
android:textColor="?android:attr/textColorPrimary"
|
android:textColor="?android:attr/textColorPrimary"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
tools:text="@tools:sample/lorem/random" />
|
tools:text="@tools:sample/lorem/random" />
|
||||||
|
@ -91,7 +91,7 @@
|
||||||
android:paddingHorizontal="16dp"
|
android:paddingHorizontal="16dp"
|
||||||
android:scrollHorizontally="true"
|
android:scrollHorizontally="true"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:textAppearance="@style/TextViewBody1"
|
android:textAppearance="@style/TextViewSubtitle2"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
android:textColor="?android:attr/textColorSecondary"
|
||||||
app:layout_constrainedWidth="true"
|
app:layout_constrainedWidth="true"
|
||||||
tools:text="@tools:sample/full_names" />
|
tools:text="@tools:sample/full_names" />
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
<item name="colorSurface">@android:color/system_accent1_50</item>
|
<item name="colorSurface">@android:color/system_accent1_50</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="SplashTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
|
<style name="Theme.RetroMusic.SplashScreen" parent="Theme.SplashScreen">
|
||||||
<item name="android:windowSplashScreenAnimatedIcon">@drawable/ic_splash_anim</item>
|
<item name="android:windowSplashScreenAnimatedIcon">@drawable/avd_splash</item>
|
||||||
<item name="android:windowSplashScreenAnimationDuration">1000</item>
|
<item name="android:windowSplashScreenAnimationDuration">1000</item>
|
||||||
<item name="android:statusBarColor">@android:color/transparent</item>
|
<item name="postSplashScreenTheme">@style/Theme.RetroMusic.FollowSystem</item>
|
||||||
</style>
|
</style>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -6,7 +6,7 @@ buildscript {
|
||||||
navigation_version = '2.5.0-rc01'
|
navigation_version = '2.5.0-rc01'
|
||||||
mdc_version = '1.7.0-alpha02'
|
mdc_version = '1.7.0-alpha02'
|
||||||
preference_version = '1.2.0'
|
preference_version = '1.2.0'
|
||||||
appcompat_version = '1.4.1'
|
appcompat_version = '1.4.2'
|
||||||
}
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue