2020-07-17 16:35:39 +02:00
|
|
|
package sushi.hardcore.droidfs
|
|
|
|
|
|
|
|
import android.content.SharedPreferences
|
|
|
|
import android.os.Bundle
|
|
|
|
import android.view.WindowManager
|
2021-11-09 11:12:09 +01:00
|
|
|
import androidx.appcompat.app.AppCompatActivity
|
2020-07-17 16:35:39 +02:00
|
|
|
import androidx.preference.PreferenceManager
|
|
|
|
|
2021-11-09 11:12:09 +01:00
|
|
|
open class BaseActivity: AppCompatActivity() {
|
2020-07-17 16:35:39 +02:00
|
|
|
protected lateinit var sharedPrefs: SharedPreferences
|
2022-09-23 12:09:22 +02:00
|
|
|
protected var applyCustomTheme: Boolean = true
|
2022-03-05 12:51:02 +01:00
|
|
|
lateinit var themeValue: String
|
|
|
|
private var shouldCheckTheme = true
|
2021-11-09 11:12:09 +01:00
|
|
|
|
2020-07-17 16:35:39 +02:00
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
2021-11-09 11:12:09 +01:00
|
|
|
sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this)
|
2023-02-06 10:52:51 +01:00
|
|
|
themeValue = sharedPrefs.getString(Constants.THEME_VALUE_KEY, Constants.DEFAULT_THEME_VALUE)!!
|
2022-09-23 12:09:22 +02:00
|
|
|
if (shouldCheckTheme && applyCustomTheme) {
|
2021-11-09 11:12:09 +01:00
|
|
|
when (themeValue) {
|
|
|
|
"black_green" -> setTheme(R.style.BlackGreen)
|
|
|
|
"dark_red" -> setTheme(R.style.DarkRed)
|
|
|
|
"black_red" -> setTheme(R.style.BlackRed)
|
|
|
|
"dark_blue" -> setTheme(R.style.DarkBlue)
|
|
|
|
"black_blue" -> setTheme(R.style.BlackBlue)
|
|
|
|
"dark_yellow" -> setTheme(R.style.DarkYellow)
|
|
|
|
"black_yellow" -> setTheme(R.style.BlackYellow)
|
|
|
|
"dark_orange" -> setTheme(R.style.DarkOrange)
|
|
|
|
"black_orange" -> setTheme(R.style.BlackOrange)
|
|
|
|
"dark_purple" -> setTheme(R.style.DarkPurple)
|
|
|
|
"black_purple" -> setTheme(R.style.BlackPurple)
|
2022-10-04 12:57:23 +02:00
|
|
|
"dark_pink" -> setTheme(R.style.DarkPink)
|
|
|
|
"black_pink" -> setTheme(R.style.BlackPink)
|
2021-11-09 11:12:09 +01:00
|
|
|
}
|
2021-06-07 14:55:01 +02:00
|
|
|
}
|
2020-07-17 16:35:39 +02:00
|
|
|
super.onCreate(savedInstanceState)
|
2020-07-21 15:05:05 +02:00
|
|
|
if (!sharedPrefs.getBoolean("usf_screenshot", false)){
|
|
|
|
window.setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE)
|
|
|
|
}
|
2020-07-17 16:35:39 +02:00
|
|
|
}
|
2021-11-09 11:12:09 +01:00
|
|
|
|
2022-09-23 12:09:22 +02:00
|
|
|
// must not be called if applyCustomTheme is false
|
2021-11-09 11:12:09 +01:00
|
|
|
fun onThemeChanged(newThemeValue: String) {
|
|
|
|
if (newThemeValue != themeValue) {
|
|
|
|
themeValue = newThemeValue
|
|
|
|
shouldCheckTheme = false
|
|
|
|
recreate()
|
|
|
|
}
|
2020-08-07 22:40:13 +02:00
|
|
|
}
|
2020-07-17 16:35:39 +02:00
|
|
|
}
|