Load dark theme settings at startup

This commit is contained in:
Matte23
2019-09-26 17:38:40 +02:00
parent 275c819be5
commit 9666ee308d

View File

@@ -29,11 +29,13 @@ import android.view.Menu
import android.view.MenuItem
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.app.AppCompatDelegate
import androidx.appcompat.widget.SearchView
import androidx.navigation.findNavController
import androidx.navigation.ui.AppBarConfiguration
import androidx.navigation.ui.setupActionBarWithNavController
import androidx.navigation.ui.setupWithNavController
import androidx.preference.PreferenceManager
import com.google.android.material.bottomnavigation.BottomNavigationView
import com.google.android.material.snackbar.Snackbar
import kotlinx.android.synthetic.main.activity_main.*
@@ -52,6 +54,7 @@ class MainActivity : AppCompatActivity(), CircularLetterAdapter.AdapterCallback
override var circularToDownload: Circular? = null
override fun onCreate(savedInstanceState: Bundle?) {
loadDarkTheme()
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val navView: BottomNavigationView = findViewById(R.id.nav_view)
@@ -178,6 +181,16 @@ class MainActivity : AppCompatActivity(), CircularLetterAdapter.AdapterCallback
builder.create().show()
}
private fun loadDarkTheme() {
val sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this)
when (sharedPreferences.getString("dark_theme", "auto")) {
"auto" -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM)
"enabled" -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
"disabled" -> AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
}
}
interface SearchCallback {
fun search(query: String)
}