61 lines
2.2 KiB
Kotlin
61 lines
2.2 KiB
Kotlin
|
package code.name.monkey.retromusic.activities
|
||
|
|
||
|
import android.os.Bundle
|
||
|
import android.view.MenuItem
|
||
|
import androidx.navigation.NavController
|
||
|
import code.name.monkey.appthemehelper.ThemeStore
|
||
|
import code.name.monkey.appthemehelper.util.VersionUtils
|
||
|
import code.name.monkey.retromusic.R
|
||
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
||
|
import code.name.monkey.retromusic.appshortcuts.DynamicShortcutManager
|
||
|
import code.name.monkey.retromusic.extensions.applyToolbar
|
||
|
import code.name.monkey.retromusic.extensions.findNavController
|
||
|
import com.afollestad.materialdialogs.color.ColorChooserDialog
|
||
|
import kotlinx.android.synthetic.main.activity_settings.*
|
||
|
|
||
|
class SettingsActivity : AbsBaseActivity(), ColorChooserDialog.ColorCallback {
|
||
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||
|
setDrawUnderStatusBar()
|
||
|
super.onCreate(savedInstanceState)
|
||
|
setContentView(R.layout.activity_settings)
|
||
|
setStatusbarColorAuto()
|
||
|
setNavigationbarColorAuto()
|
||
|
setLightNavigationBar(true)
|
||
|
setupToolbar()
|
||
|
}
|
||
|
|
||
|
private fun setupToolbar() {
|
||
|
setTitle(R.string.action_settings)
|
||
|
applyToolbar(toolbar)
|
||
|
val navController: NavController = findNavController(R.id.contentFrame)
|
||
|
navController.addOnDestinationChangedListener { _, _, _ ->
|
||
|
toolbar.title = navController.currentDestination?.label
|
||
|
}
|
||
|
}
|
||
|
|
||
|
override fun onSupportNavigateUp(): Boolean {
|
||
|
return findNavController(R.id.contentFrame).navigateUp() || super.onSupportNavigateUp()
|
||
|
}
|
||
|
|
||
|
override fun onColorSelection(dialog: ColorChooserDialog, selectedColor: Int) {
|
||
|
when (dialog.title) {
|
||
|
R.string.accent_color -> {
|
||
|
ThemeStore.editTheme(this).accentColor(selectedColor).commit()
|
||
|
if (VersionUtils.hasNougatMR())
|
||
|
DynamicShortcutManager(this).updateDynamicShortcuts()
|
||
|
}
|
||
|
}
|
||
|
recreate()
|
||
|
}
|
||
|
|
||
|
override fun onColorChooserDismissed(dialog: ColorChooserDialog) {
|
||
|
|
||
|
}
|
||
|
|
||
|
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||
|
if (item.itemId == android.R.id.home) {
|
||
|
onBackPressed()
|
||
|
}
|
||
|
return super.onOptionsItemSelected(item)
|
||
|
}
|
||
|
}
|