SF: move RefreshRateConfigs to DisplayDevice

Move RefreshRateConfigs to DisplayDevice to be able to maintain
a per-display refresh rate switching policy.

Test: SF unit tests
Test: refresh rate switching is working on device with
more than one display
Bug: 187539899

Change-Id: Ica6a955e8ad0e563a0740f6579b61fc592eb982c
diff --git a/services/surfaceflinger/RefreshRateOverlay.cpp b/services/surfaceflinger/RefreshRateOverlay.cpp
index 9cfc37d..9657a9f 100644
--- a/services/surfaceflinger/RefreshRateOverlay.cpp
+++ b/services/surfaceflinger/RefreshRateOverlay.cpp
@@ -283,7 +283,16 @@
 
 void RefreshRateOverlay::reset() {
     mBufferCache.clear();
-    const auto range = mFlinger.mRefreshRateConfigs->getSupportedRefreshRateRange();
+    // TODO: this is a temp hack that would be removed in the next CL
+    const auto range = [&]() NO_THREAD_SAFETY_ANALYSIS {
+        constexpr auto defaultFps = Fps(60);
+        const auto display = mFlinger.getDefaultDisplayDeviceLocked();
+        if (display) {
+            return display->refreshRateConfigs().getSupportedRefreshRateRange();
+        }
+        ALOGW("%s: default display is null", __func__);
+        return scheduler::RefreshRateConfigs::FpsRange{defaultFps, defaultFps};
+    }();
     mLowFps = range.min.getIntValue();
     mHighFps = range.max.getIntValue();
 }