Skip to content

Commit

Permalink
fix processing plugin preferences menu
Browse files Browse the repository at this point in the history
  • Loading branch information
MilosKozak committed Mar 3, 2024
1 parent 94952e9 commit c4cd90d
Showing 1 changed file with 10 additions and 29 deletions.
39 changes: 10 additions & 29 deletions app/src/main/kotlin/app/aaps/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -134,15 +134,6 @@ class MainActivity : DaggerAppCompatActivityWithResult() {

// initialize screen wake lock
processPreferenceChange(EventPreferenceChange(BooleanKey.OverviewKeepScreenOn.key, rh))
binding.mainPager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
override fun onPageScrollStateChanged(state: Int) {}
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {}
override fun onPageSelected(position: Int) {
setPluginPreferenceMenuName()
checkPluginPreferences(binding.mainPager)
setDisabledMenuItemColorPluginPreferences()
}
})

disposable += rxBus
.toObservable(EventRebuildTabs::class.java)
Expand Down Expand Up @@ -312,10 +303,6 @@ class MainActivity : DaggerAppCompatActivityWithResult() {
rxBus.send(EventNewNotification(Notification(Notification.MASTER_PASSWORD_NOT_SET, rh.gs(R.string.master_password_not_set), Notification.NORMAL)))
}

private fun checkPluginPreferences(viewPager: ViewPager2) {
if (viewPager.currentItem >= 0) pluginPreferencesMenuItem?.isEnabled = (viewPager.adapter as TabPageAdapter).getPluginAt(viewPager.currentItem).preferencesId != PluginDescription.PREFERENCE_NONE
}

private fun startWizard(): Boolean =
!preferences.get(BooleanKey.GeneralSetupWizardProcessed)

Expand Down Expand Up @@ -385,7 +372,6 @@ class MainActivity : DaggerAppCompatActivityWithResult() {
}
binding.mainPager.adapter = pageAdapter
binding.mainPager.offscreenPageLimit = 8 // This may cause more memory consumption
checkPluginPreferences(binding.mainPager)

// Tabs
if (preferences.get(BooleanKey.OverviewShortTabTitles)) {
Expand Down Expand Up @@ -427,28 +413,23 @@ class MainActivity : DaggerAppCompatActivityWithResult() {
return super.dispatchTouchEvent(event)
}

private fun setDisabledMenuItemColorPluginPreferences() {
if (pluginPreferencesMenuItem?.isEnabled == false) {
val spanString = SpannableString(this.menu?.findItem(R.id.nav_plugin_preferences)?.title.toString())
spanString.setSpan(ForegroundColorSpan(rh.gac(app.aaps.core.ui.R.attr.disabledTextColor)), 0, spanString.length, 0)
this.menu?.findItem(R.id.nav_plugin_preferences)?.title = spanString
}
}

private fun setPluginPreferenceMenuName() {
if (binding.mainPager.currentItem >= 0) {
val plugin = (binding.mainPager.adapter as TabPageAdapter).getPluginAt(binding.mainPager.currentItem)
this.menu?.findItem(R.id.nav_plugin_preferences)?.title = rh.gs(R.string.nav_preferences_plugin, plugin.name)
}
}

override fun onMenuOpened(featureId: Int, menu: Menu): Boolean {
menuOpen = true
if (binding.mainDrawerLayout.isDrawerOpen(GravityCompat.START)) {
binding.mainDrawerLayout.closeDrawers()
}
val result = super.onMenuOpened(featureId, menu)
menu.findItem(R.id.nav_treatments)?.isEnabled = profileFunction.getProfile() != null
if (binding.mainPager.currentItem >= 0) {
val plugin = (binding.mainPager.adapter as TabPageAdapter).getPluginAt(binding.mainPager.currentItem)
this.menu?.findItem(R.id.nav_plugin_preferences)?.title = rh.gs(R.string.nav_preferences_plugin, plugin.name)
pluginPreferencesMenuItem?.isEnabled = (binding.mainPager.adapter as TabPageAdapter).getPluginAt(binding.mainPager.currentItem).preferencesId != PluginDescription.PREFERENCE_NONE
}
if (pluginPreferencesMenuItem?.isEnabled == false) {
val spanString = SpannableString(this.menu?.findItem(R.id.nav_plugin_preferences)?.title.toString())
spanString.setSpan(ForegroundColorSpan(rh.gac(app.aaps.core.ui.R.attr.disabledTextColor)), 0, spanString.length, 0)
this.menu?.findItem(R.id.nav_plugin_preferences)?.title = spanString
}
return result
}

Expand Down

0 comments on commit c4cd90d

Please sign in to comment.