Merge "Update DisplayControllerSpy for overview on CD" into main

This commit is contained in:
Treehugger Robot
2025-05-30 16:19:33 -07:00
committed by Android (Google) Code Review
2 changed files with 16 additions and 3 deletions

View File

@@ -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
}
}

View File

@@ -166,7 +166,7 @@ class TaskbarUnitTestRule(
base.evaluate()
} finally {
instrumentation.runOnMainSync { taskbarManager.destroy() }
context.displayControllerSpy?.removeTaskbarPinningPrefListener()
context.displayControllerSpy?.cleanup()
}
}
}