SF: Fix synthetic VSYNC after first powering on

After onActiveDisplayChangedLocked, isActiveDisplay was stale, so the
first powering on of a newly active display did not enable and resync
to hardware VSYNC, i.e. EventThread stayed in SyntheticVsync.

Also, merge EventThread APIs to enable/disable synthetic VSYNC.

Fixes: 264700488
Bug: 255635821
Test: dumpsys SurfaceFlinger --events
Change-Id: Ibd4099bb856adc11d887f3b7b9432fbc4cb2e33d
diff --git a/services/surfaceflinger/tests/unittests/TestableScheduler.h b/services/surfaceflinger/tests/unittests/TestableScheduler.h
index bd3f3ca..48c5d48 100644
--- a/services/surfaceflinger/tests/unittests/TestableScheduler.h
+++ b/services/surfaceflinger/tests/unittests/TestableScheduler.h
@@ -91,6 +91,7 @@
         Scheduler::setLeaderDisplay(displayId);
     }
 
+    auto& mutableAppConnectionHandle() { return mAppConnectionHandle; }
     auto& mutableVsyncModulator() { return *mVsyncModulator; }
     auto& mutableLayerHistory() { return mLayerHistory; }