2019-04-20 05:29:45 +00:00
|
|
|
package code.name.monkey.retromusic.activities
|
2018-12-05 04:29:55 +00:00
|
|
|
|
|
|
|
import android.content.SharedPreferences
|
|
|
|
import android.os.Bundle
|
|
|
|
import android.view.MenuItem
|
|
|
|
import androidx.annotation.StringRes
|
|
|
|
import androidx.fragment.app.Fragment
|
2019-05-20 19:38:43 +00:00
|
|
|
import androidx.transition.TransitionManager
|
2018-12-05 04:29:55 +00:00
|
|
|
import code.name.monkey.appthemehelper.ThemeStore
|
|
|
|
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
|
2019-07-30 19:07:48 +00:00
|
|
|
import code.name.monkey.retromusic.App.Companion.context
|
2018-12-05 04:29:55 +00:00
|
|
|
import code.name.monkey.retromusic.R
|
2019-04-20 05:29:45 +00:00
|
|
|
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
|
|
|
|
import code.name.monkey.retromusic.fragments.settings.MainSettingsFragment
|
2018-12-05 04:29:55 +00:00
|
|
|
import code.name.monkey.retromusic.util.PreferenceUtil
|
|
|
|
import kotlinx.android.synthetic.main.activity_settings.*
|
|
|
|
|
2018-12-09 06:38:34 +00:00
|
|
|
|
2019-04-20 10:07:01 +00:00
|
|
|
class SettingsActivity : AbsBaseActivity(), SharedPreferences.OnSharedPreferenceChangeListener {
|
2018-12-05 04:29:55 +00:00
|
|
|
|
|
|
|
private val fragmentManager = supportFragmentManager
|
|
|
|
|
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
|
super.onCreate(savedInstanceState)
|
|
|
|
setContentView(R.layout.activity_settings)
|
|
|
|
|
|
|
|
setStatusbarColorAuto()
|
|
|
|
setNavigationbarColorAuto()
|
|
|
|
|
|
|
|
setLightNavigationBar(true)
|
|
|
|
|
|
|
|
setupToolbar()
|
|
|
|
|
|
|
|
if (savedInstanceState == null) {
|
|
|
|
fragmentManager.beginTransaction().replace(R.id.contentFrame, MainSettingsFragment())
|
|
|
|
.commit()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private fun setupToolbar() {
|
|
|
|
setSupportActionBar(toolbar)
|
2019-05-20 19:38:43 +00:00
|
|
|
setTitle(R.string.action_settings)
|
2018-12-25 14:58:47 +00:00
|
|
|
toolbar.apply {
|
2019-07-30 19:07:48 +00:00
|
|
|
setTitleTextColor( ThemeStore.accentColor(context))
|
2018-12-25 14:58:47 +00:00
|
|
|
setBackgroundColor(ThemeStore.primaryColor(context))
|
|
|
|
setNavigationOnClickListener { onBackPressed() }
|
2019-07-30 19:07:48 +00:00
|
|
|
ToolbarContentTintHelper.colorBackButton(toolbar, ThemeStore.accentColor(context))
|
2018-12-25 14:58:47 +00:00
|
|
|
}
|
2018-12-05 04:29:55 +00:00
|
|
|
appBarLayout.setBackgroundColor(ThemeStore.primaryColor(this))
|
2019-05-20 19:38:43 +00:00
|
|
|
|
2018-12-05 04:29:55 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
fun setupFragment(fragment: Fragment, @StringRes titleName: Int) {
|
|
|
|
val fragmentTransaction = fragmentManager
|
|
|
|
.beginTransaction()
|
|
|
|
.setCustomAnimations(R.anim.sliding_in_left, R.anim.sliding_out_right, android.R.anim.slide_in_left, android.R.anim.slide_out_right)
|
|
|
|
|
|
|
|
if (detailContentFrame == null) {
|
|
|
|
fragmentTransaction.replace(R.id.contentFrame, fragment, fragment.tag)
|
|
|
|
fragmentTransaction.addToBackStack(null)
|
|
|
|
fragmentTransaction.commit()
|
|
|
|
} else {
|
|
|
|
fragmentTransaction.replace(R.id.detailContentFrame, fragment, fragment.tag)
|
|
|
|
fragmentTransaction.commit()
|
|
|
|
}
|
2019-05-20 19:38:43 +00:00
|
|
|
|
|
|
|
TransitionManager.beginDelayedTransition(appBarLayout)
|
|
|
|
setTitle(titleName)
|
2018-12-05 04:29:55 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
override fun onBackPressed() {
|
|
|
|
if (fragmentManager.backStackEntryCount == 0) {
|
|
|
|
super.onBackPressed()
|
|
|
|
} else {
|
2019-05-20 19:38:43 +00:00
|
|
|
setTitle(R.string.action_settings)
|
2018-12-05 04:29:55 +00:00
|
|
|
fragmentManager.popBackStack()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
|
|
|
if (item.itemId == android.R.id.home) {
|
|
|
|
onBackPressed()
|
|
|
|
return true
|
|
|
|
}
|
|
|
|
return super.onOptionsItemSelected(item)
|
|
|
|
}
|
|
|
|
|
|
|
|
public override fun onPause() {
|
|
|
|
super.onPause()
|
|
|
|
PreferenceUtil.getInstance().unregisterOnSharedPreferenceChangedListener(this)
|
|
|
|
}
|
|
|
|
|
|
|
|
public override fun onResume() {
|
|
|
|
super.onResume()
|
|
|
|
PreferenceUtil.getInstance().registerOnSharedPreferenceChangedListener(this)
|
|
|
|
}
|
|
|
|
|
|
|
|
override fun onSharedPreferenceChanged(sharedPreferences: SharedPreferences, key: String) {
|
|
|
|
if (key == PreferenceUtil.PROFILE_IMAGE_PATH) {
|
|
|
|
recreate()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-12-09 06:38:34 +00:00
|
|
|
|
2018-12-05 04:29:55 +00:00
|
|
|
companion object {
|
2018-12-25 14:58:47 +00:00
|
|
|
const val TAG: String = "SettingsActivity"
|
2018-12-05 04:29:55 +00:00
|
|
|
}
|
|
|
|
}
|