Move visibility toggle to onResume
This commit is contained in:
parent
9c616d3b7d
commit
30f7059172
3 changed files with 28 additions and 26 deletions
app/src/main
|
@ -122,30 +122,22 @@ class MainActivity : AppCompatActivity(), ActionMode.Callback, AddFragment.Subsc
|
|||
}
|
||||
|
||||
// Battery banner
|
||||
val batteryRemindTimeReached = repository.getBatteryOptimizationsRemindTime() < System.currentTimeMillis()
|
||||
val ignoringBatteryOptimizations = isIgnoringBatteryOptimizations(this)
|
||||
val showBatteryBanner = batteryRemindTimeReached && !ignoringBatteryOptimizations
|
||||
val batteryBanner = findViewById<View>(R.id.main_banner_battery)
|
||||
batteryBanner.visibility = if (showBatteryBanner) View.VISIBLE else View.GONE
|
||||
Log.d(TAG, "Battery: ignoring optimizations = $ignoringBatteryOptimizations (we want this to be true); remind time reached = $batteryRemindTimeReached")
|
||||
if (showBatteryBanner) {
|
||||
val dismissButton = findViewById<Button>(R.id.main_banner_battery_dismiss)
|
||||
val askLaterButton = findViewById<Button>(R.id.main_banner_battery_ask_later)
|
||||
val fixNowButton = findViewById<Button>(R.id.main_banner_battery_fix_now)
|
||||
dismissButton.setOnClickListener {
|
||||
batteryBanner.visibility = View.GONE
|
||||
repository.setBatteryOptimizationsRemindTime(Repository.BATTERY_OPTIMIZATIONS_REMIND_TIME_NEVER)
|
||||
}
|
||||
askLaterButton.setOnClickListener {
|
||||
batteryBanner.visibility = View.GONE
|
||||
repository.setBatteryOptimizationsRemindTime(System.currentTimeMillis() + ONE_DAY_MILLIS)
|
||||
}
|
||||
fixNowButton.setOnClickListener {
|
||||
batteryBanner.visibility = View.GONE
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
val intent = Intent(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS)
|
||||
startActivity(intent)
|
||||
}
|
||||
val batteryBanner = findViewById<View>(R.id.main_banner_battery) // Banner visibility is toggled in onResume()
|
||||
val dontAskAgainButton = findViewById<Button>(R.id.main_banner_battery_dontaskagain)
|
||||
val askLaterButton = findViewById<Button>(R.id.main_banner_battery_ask_later)
|
||||
val fixNowButton = findViewById<Button>(R.id.main_banner_battery_fix_now)
|
||||
dontAskAgainButton.setOnClickListener {
|
||||
batteryBanner.visibility = View.GONE
|
||||
repository.setBatteryOptimizationsRemindTime(Repository.BATTERY_OPTIMIZATIONS_REMIND_TIME_NEVER)
|
||||
}
|
||||
askLaterButton.setOnClickListener {
|
||||
batteryBanner.visibility = View.GONE
|
||||
repository.setBatteryOptimizationsRemindTime(System.currentTimeMillis() + ONE_DAY_MILLIS)
|
||||
}
|
||||
fixNowButton.setOnClickListener {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
val intent = Intent(Settings.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS)
|
||||
startActivity(intent)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -162,8 +154,18 @@ class MainActivity : AppCompatActivity(), ActionMode.Callback, AddFragment.Subsc
|
|||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
|
||||
// Menu and main list
|
||||
showHideNotificationMenuItems()
|
||||
redrawList()
|
||||
|
||||
// Battery banner
|
||||
val batteryRemindTimeReached = repository.getBatteryOptimizationsRemindTime() < System.currentTimeMillis()
|
||||
val ignoringBatteryOptimizations = isIgnoringBatteryOptimizations(this)
|
||||
val showBatteryBanner = batteryRemindTimeReached && !ignoringBatteryOptimizations
|
||||
val batteryBanner = findViewById<View>(R.id.main_banner_battery)
|
||||
batteryBanner.visibility = if (showBatteryBanner) View.VISIBLE else View.GONE
|
||||
Log.d(TAG, "Battery: ignoring optimizations = $ignoringBatteryOptimizations (we want this to be true); remind time reached = $batteryRemindTimeReached")
|
||||
}
|
||||
|
||||
private fun startPeriodicPollWorker() {
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
android:layout_marginBottom="5dp"/>
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/main_banner_battery_dismiss"
|
||||
android:id="@+id/main_banner_battery_dontaskagain"
|
||||
style="@style/Widget.MaterialComponents.Button.TextButton"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
<!-- Main activity: Battery banner -->
|
||||
<string name="main_banner_battery_text">Battery optimization should be disabled to avoid issues with notification delivery.</string>
|
||||
<string name="main_banner_battery_button_ask_later">Ask later</string>
|
||||
<string name="main_banner_battery_button_dismiss">Dismiss</string>
|
||||
<string name="main_banner_battery_button_dismiss">Don\'t ask again</string>
|
||||
<string name="main_banner_battery_button_fix_now">Fix now</string>
|
||||
|
||||
<!-- Add dialog -->
|
||||
|
|
Loading…
Add table
Reference in a new issue