SF: Simplify Scheduler's hardware VSYNC delegate
As a step toward hiding implementation details of how Scheduler handles changes in a display's power mode (e.g. toggling of hardware/synthetic VSYNC), move and rename SurfaceFlinger::setVsyncEnabled to Scheduler:: onHardwareVsyncRequest. This hides setPendingHardwareVsyncState. (getPendingHardwareVsyncState will be moved to Scheduler later.) Store the per-display hal::PowerMode in Scheduler. On power mode change in SurfaceFlinger::setPowerModeInternal, update the Scheduler for every display, not just the active display. Inject the delegate into VsyncSchedule's constructor, instead of passing the (partly unrelated) ISchedulerCallback to several member functions. Bug: 271431077 Bug: 241286146 Bug: 255635821 Bug: 241285191 Test: FoldableTest Change-Id: I157b0895a77f055763f86dd21602d0dac13622da
Loading
Please register or sign in to comment