SF: Fix pacesetter promotion for folded mirroring
The pacesetter display is demoted/promoted in response to a hotplug. On foldables, the promoted display was hard-coded to the inner display, so a hotplug while folded would incorrectly use that powered-off display as the pacesetter, causing system-wide jank until the next fold/unfold. Fixes: 347248313 Flag: EXEMPT bugfix Test: Connect and disconnect external display while folded. Test: Fold and unfold while external display is connected. Test: Pacesetter is still correct on folded/unfolded boot. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:3ff44c7e852f5614514a15dcec78ba7857e5d010) Merged-In: Id5cb29c3cbaa8ed455a15d8be3a32e79a470cce5 Change-Id: Id5cb29c3cbaa8ed455a15d8be3a32e79a470cce5
Showing
- services/surfaceflinger/Scheduler/Scheduler.cpp 11 additions, 6 deletionsservices/surfaceflinger/Scheduler/Scheduler.cpp
- services/surfaceflinger/Scheduler/Scheduler.h 12 additions, 4 deletionsservices/surfaceflinger/Scheduler/Scheduler.h
- services/surfaceflinger/SurfaceFlinger.cpp 5 additions, 3 deletionsservices/surfaceflinger/SurfaceFlinger.cpp
- services/surfaceflinger/tests/unittests/SchedulerTest.cpp 16 additions, 9 deletionsservices/surfaceflinger/tests/unittests/SchedulerTest.cpp
- services/surfaceflinger/tests/unittests/TestableScheduler.h 7 additions, 9 deletionsservices/surfaceflinger/tests/unittests/TestableScheduler.h
- services/surfaceflinger/tests/unittests/TestableSurfaceFlinger.h 2 additions, 2 deletions...s/surfaceflinger/tests/unittests/TestableSurfaceFlinger.h
Loading
Please register or sign in to comment