From 897cb19e983d52febbb71041990d492eddea522b Mon Sep 17 00:00:00 2001 From: Xiaowen Lei Date: Tue, 29 Nov 2022 16:59:05 +0000 Subject: Guard regionSampler registering/deregistering code behind the flag. When the flag is off, regionSampler was being created and registered, but it actually does nothing. So guard this code behind the flag to avoid confusion. Note: I noticed this while debugging b/254095511. But this current CL isn't required for the fix for the bug (ag/20597942). Bug: 202758428 Bug: 254095511 Test: no-op. Passes existing tests. Change-Id: I391b788debbb0e3063e72745c09b1e94b027ac83 --- .../lockscreen/LockscreenSmartspaceController.kt | 33 +++++++++++++--------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt b/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt index c6911b1ce410..a96edf525ebb 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceController.kt @@ -102,22 +102,27 @@ class LockscreenSmartspaceController @Inject constructor( private var showSensitiveContentForManagedUser = false private var managedUserHandle: UserHandle? = null + // TODO(b/202758428): refactor so that we can test color updates via region samping, similar to + // how we test color updates when theme changes (See testThemeChangeUpdatesTextColor). private val updateFun: UpdateColorCallback = { updateTextColorFromRegionSampler() } var stateChangeListener = object : View.OnAttachStateChangeListener { override fun onViewAttachedToWindow(v: View) { smartspaceViews.add(v as SmartspaceView) - var regionSampler = RegionSampler( - v, - uiExecutor, - bgExecutor, - regionSamplingEnabled, - updateFun - ) - initializeTextColors(regionSampler) - regionSampler.startRegionSampler() - regionSamplers.put(v, regionSampler) + if (regionSamplingEnabled) { + var regionSampler = RegionSampler( + v, + uiExecutor, + bgExecutor, + regionSamplingEnabled, + updateFun + ) + initializeTextColors(regionSampler) + regionSampler.startRegionSampler() + regionSamplers.put(v, regionSampler) + } + connectSession() updateTextColorFromWallpaper() @@ -127,9 +132,11 @@ class LockscreenSmartspaceController @Inject constructor( override fun onViewDetachedFromWindow(v: View) { smartspaceViews.remove(v as SmartspaceView) - var regionSampler = regionSamplers.getValue(v) - regionSampler.stopRegionSampler() - regionSamplers.remove(v) + if (regionSamplingEnabled) { + var regionSampler = regionSamplers.getValue(v) + regionSampler.stopRegionSampler() + regionSamplers.remove(v) + } if (smartspaceViews.isEmpty()) { disconnect() -- cgit v1.2.3-59-g8ed1b