1
0
Fork 0

For #8535 #8498: Allow for multiple browsingModeListeners dispatch

master
Simon Chae 2020-02-20 13:52:00 -05:00 committed by Jeff Boek
parent a84b250894
commit da0148b8bd
2 changed files with 6 additions and 6 deletions

View File

@ -178,7 +178,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity() {
final override fun onStop() {
super.onStop()
browsingModeManager.unregisterBrowsingModeListener()
browsingModeManager.unregisterBrowsingModeListener(browsingModeListener)
}
final override fun onPause() {

View File

@ -42,21 +42,21 @@ class DefaultBrowsingModeManager(
private var _mode: BrowsingMode = BrowsingMode.Normal
) : BrowsingModeManager {
private var _browsingModeListener: BrowsingModeListener? = null
private val browsingModeListeners = mutableSetOf<BrowsingModeListener>()
fun registerBrowsingModeListener(browsingModeListener: BrowsingModeListener) {
_browsingModeListener = browsingModeListener
browsingModeListeners.add(browsingModeListener)
}
fun unregisterBrowsingModeListener() {
_browsingModeListener = null
fun unregisterBrowsingModeListener(browsingModeListener: BrowsingModeListener) {
browsingModeListeners.remove(browsingModeListener)
}
override var mode: BrowsingMode
get() = _mode
set(value) {
_mode = value
_browsingModeListener?.onBrowsingModeChange(value)
browsingModeListeners.forEach { it.onBrowsingModeChange(value) }
Settings.instance?.lastKnownMode = value
}
}