Metro/app/src/main/java/code/name/monkey/retromusic/App.kt
Muntashir Al-Islam 2845945763 Reinstate package name
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
2023-03-15 00:26:47 +06:00

66 lines
2.1 KiB
Kotlin

/*
* Copyright (c) 2020 Hemanth Savarla.
*
* 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
import android.app.Application
import cat.ereza.customactivityoncrash.config.CaocConfig
import code.name.monkey.appthemehelper.ThemeStore
import code.name.monkey.appthemehelper.util.VersionUtils
import code.name.monkey.retromusic.activities.ErrorActivity
import code.name.monkey.retromusic.appshortcuts.DynamicShortcutManager
import code.name.monkey.retromusic.helper.WallpaperAccentManager
import org.koin.android.ext.koin.androidContext
import org.koin.core.context.startKoin
class App : Application() {
private val wallpaperAccentManager = WallpaperAccentManager(this)
override fun onCreate() {
super.onCreate()
instance = this
startKoin {
androidContext(this@App)
modules(appModules)
}
// default theme
if (!ThemeStore.isConfigured(this, 3)) {
ThemeStore.editTheme(this)
.accentColorRes(R.color.md_deep_purple_A200)
.coloredNavigationBar(true)
.commit()
}
wallpaperAccentManager.init()
if (VersionUtils.hasNougatMR())
DynamicShortcutManager(this).initDynamicShortcuts()
// setting Error activity
CaocConfig.Builder.create().errorActivity(ErrorActivity::class.java).apply()
}
override fun onTerminate() {
super.onTerminate()
wallpaperAccentManager.release()
}
companion object {
private var instance: App? = null
fun getContext(): App {
return instance!!
}
}
}