mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-04 09:56:49 +00:00
Merge "Update DisplayControllerSpy for overview on CD" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
5e67f9d7cd
@@ -109,7 +109,18 @@ constructor(
|
||||
) : DisplayController(context, wmProxy, prefs, lifecycle) {
|
||||
|
||||
var infoModifier: ((Info) -> Info)? = null
|
||||
var infoModifierForDisplay: ((Info?) -> Info?)? = null
|
||||
|
||||
// When overview on CD is enabled, DisplayController queries getInfoForDisplay instead of
|
||||
// getInfo for the primary (virtual) display used in tests. So, override it to get info from the
|
||||
// default display.
|
||||
private val defaultInfoModifierForDisplay: ((Info?) -> Info?)? =
|
||||
if (Flags.enableOverviewOnConnectedDisplays()) {
|
||||
{ _ -> info }
|
||||
} else {
|
||||
null
|
||||
}
|
||||
|
||||
var infoModifierForDisplay: ((Info?) -> Info?)? = defaultInfoModifierForDisplay
|
||||
|
||||
private var prefListener: LauncherPrefChangeListener? = null
|
||||
|
||||
@@ -143,8 +154,10 @@ constructor(
|
||||
.also { prefs.addListener(it, TASKBAR_PINNING) }
|
||||
}
|
||||
|
||||
fun removeTaskbarPinningPrefListener() {
|
||||
fun cleanup() {
|
||||
prefListener?.let { prefs.removeListener(it, TASKBAR_PINNING) }
|
||||
infoModifier = null
|
||||
infoModifierForDisplay = defaultInfoModifierForDisplay
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -166,7 +166,7 @@ class TaskbarUnitTestRule(
|
||||
base.evaluate()
|
||||
} finally {
|
||||
instrumentation.runOnMainSync { taskbarManager.destroy() }
|
||||
context.displayControllerSpy?.removeTaskbarPinningPrefListener()
|
||||
context.displayControllerSpy?.cleanup()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user