Merge "SF: Update RefreshRateOverlay before SF applies transactions" into sc-dev am: a95ed97670
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/15161679
Change-Id: Ia51b54212f3f8e00d39d485f5fe702b23dfa0af3
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 00bd787..194e698 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -1190,6 +1190,10 @@
updatePhaseConfiguration(refreshRate);
ATRACE_INT("ActiveConfigFPS", refreshRate.getValue());
+ if (mRefreshRateOverlay) {
+ mRefreshRateOverlay->changeRefreshRate(upcomingMode->getFps());
+ }
+
if (mUpcomingActiveMode.event != Scheduler::ModeEvent::None) {
const nsecs_t vsyncPeriod = refreshRate.getPeriodNsecs();
const auto physicalId = display->getPhysicalId();
@@ -1272,9 +1276,6 @@
}
mScheduler->onNewVsyncPeriodChangeTimeline(outTimeline);
- if (mRefreshRateOverlay) {
- mRefreshRateOverlay->changeRefreshRate(desiredMode->getFps());
- }
// Scheduler will submit an empty frame to HWC if needed.
mSetActiveModePending = true;