Revert "Making mirror slider appear when brightness slider is used in split shade"
This reverts commit 263e907c1b.
Reason for revert: Breaking CTS tests
Fixes: 195071058
Fixes: 195069589
Fixes: 195070141
Fixes: 195070290
Fixes: 195070779
Change-Id: I454180839e081ac08a076f870dba5e3ad8cb7c5a
This commit is contained in:
@@ -50,7 +50,6 @@ import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
|
||||
import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
||||
import com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainer;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
import com.android.systemui.statusbar.policy.RemoteInputQuickSettingsDisabler;
|
||||
import com.android.systemui.util.InjectionInflationController;
|
||||
import com.android.systemui.util.LifecycleFragment;
|
||||
@@ -404,10 +403,8 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
|
||||
}
|
||||
}
|
||||
|
||||
public void setBrightnessMirrorController(
|
||||
BrightnessMirrorController brightnessMirrorController) {
|
||||
mQSPanelController.setBrightnessMirror(brightnessMirrorController);
|
||||
mQuickQSPanelController.setBrightnessMirror(brightnessMirrorController);
|
||||
public QSPanelController getQSPanelController() {
|
||||
return mQSPanelController;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -40,7 +40,6 @@ import com.android.systemui.qs.customize.QSCustomizerController;
|
||||
import com.android.systemui.qs.dagger.QSScope;
|
||||
import com.android.systemui.qs.logging.QSLogger;
|
||||
import com.android.systemui.settings.brightness.BrightnessController;
|
||||
import com.android.systemui.settings.brightness.BrightnessMirrorHandler;
|
||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
@@ -61,9 +60,10 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
private final QSTileRevealController.Factory mQsTileRevealControllerFactory;
|
||||
private final FalsingManager mFalsingManager;
|
||||
private final BrightnessController mBrightnessController;
|
||||
private final BrightnessSlider.Factory mBrightnessSliderFactory;
|
||||
private final BrightnessSlider mBrightnessSlider;
|
||||
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
||||
|
||||
private BrightnessMirrorController mBrightnessMirrorController;
|
||||
private boolean mGridContentVisible = true;
|
||||
|
||||
private final QSPanel.OnConfigurationChangedListener mOnConfigurationChangedListener =
|
||||
@@ -75,10 +75,14 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
if (mView.isListening()) {
|
||||
refreshAllTiles();
|
||||
}
|
||||
updateBrightnessMirror();
|
||||
mView.switchSecurityFooter(mShouldUseSplitNotificationShade);
|
||||
}
|
||||
};
|
||||
|
||||
private final BrightnessMirrorController.BrightnessMirrorListener mBrightnessMirrorListener =
|
||||
mirror -> updateBrightnessMirror();
|
||||
|
||||
private View.OnTouchListener mTileLayoutTouchListener = new View.OnTouchListener() {
|
||||
@Override
|
||||
public boolean onTouch(View v, MotionEvent event) {
|
||||
@@ -106,12 +110,12 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
mQsTileRevealControllerFactory = qsTileRevealControllerFactory;
|
||||
mFalsingManager = falsingManager;
|
||||
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
||||
mBrightnessSliderFactory = brightnessSliderFactory;
|
||||
|
||||
mBrightnessSlider = brightnessSliderFactory.create(getContext(), mView);
|
||||
mBrightnessSlider = mBrightnessSliderFactory.create(getContext(), mView);
|
||||
mView.setBrightnessView(mBrightnessSlider.getRootView());
|
||||
|
||||
mBrightnessController = brightnessControllerFactory.create(mBrightnessSlider);
|
||||
mBrightnessMirrorHandler = new BrightnessMirrorHandler(mBrightnessController);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -138,7 +142,9 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
mView.addOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||
mView.setSecurityFooter(mQsSecurityFooter.getView(), mShouldUseSplitNotificationShade);
|
||||
switchTileLayout(true);
|
||||
mBrightnessMirrorHandler.onQsPanelAttached();
|
||||
if (mBrightnessMirrorController != null) {
|
||||
mBrightnessMirrorController.addCallback(mBrightnessMirrorListener);
|
||||
}
|
||||
|
||||
((PagedTileLayout) mView.getOrCreateTileLayout())
|
||||
.setOnTouchListener(mTileLayoutTouchListener);
|
||||
@@ -154,7 +160,9 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
protected void onViewDetached() {
|
||||
mTunerService.removeTunable(mView);
|
||||
mView.removeOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||
mBrightnessMirrorHandler.onQsPanelDettached();
|
||||
if (mBrightnessMirrorController != null) {
|
||||
mBrightnessMirrorController.removeCallback(mBrightnessMirrorListener);
|
||||
}
|
||||
super.onViewDetached();
|
||||
}
|
||||
|
||||
@@ -188,8 +196,23 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
||||
}
|
||||
}
|
||||
|
||||
/** */
|
||||
public void setBrightnessMirror(BrightnessMirrorController brightnessMirrorController) {
|
||||
mBrightnessMirrorHandler.setController(brightnessMirrorController);
|
||||
mBrightnessMirrorController = brightnessMirrorController;
|
||||
if (mBrightnessMirrorController != null) {
|
||||
mBrightnessMirrorController.removeCallback(mBrightnessMirrorListener);
|
||||
}
|
||||
mBrightnessMirrorController = brightnessMirrorController;
|
||||
if (mBrightnessMirrorController != null) {
|
||||
mBrightnessMirrorController.addCallback(mBrightnessMirrorListener);
|
||||
}
|
||||
updateBrightnessMirror();
|
||||
}
|
||||
|
||||
private void updateBrightnessMirror() {
|
||||
if (mBrightnessMirrorController != null) {
|
||||
mBrightnessSlider.setMirrorControllerAndMirror(mBrightnessMirrorController);
|
||||
}
|
||||
}
|
||||
|
||||
/** Get the QSTileHost this panel uses. */
|
||||
|
||||
@@ -19,8 +19,6 @@ package com.android.systemui.qs
|
||||
import androidx.annotation.VisibleForTesting
|
||||
import com.android.systemui.settings.brightness.BrightnessController
|
||||
import com.android.systemui.settings.brightness.BrightnessSlider
|
||||
import com.android.systemui.settings.brightness.MirroredBrightnessController
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
||||
import javax.inject.Inject
|
||||
|
||||
/**
|
||||
@@ -29,7 +27,7 @@ import javax.inject.Inject
|
||||
*/
|
||||
class QuickQSBrightnessController @VisibleForTesting constructor(
|
||||
private val brightnessControllerFactory: () -> BrightnessController
|
||||
) : MirroredBrightnessController {
|
||||
) {
|
||||
|
||||
@Inject constructor(
|
||||
brightnessControllerFactory: BrightnessController.Factory,
|
||||
@@ -44,7 +42,6 @@ class QuickQSBrightnessController @VisibleForTesting constructor(
|
||||
|
||||
private var isListening = false
|
||||
private var brightnessController: BrightnessController? = null
|
||||
private var mirrorController: BrightnessMirrorController? = null
|
||||
|
||||
fun init(shouldUseSplitNotificationShade: Boolean) {
|
||||
refreshVisibility(shouldUseSplitNotificationShade)
|
||||
@@ -80,11 +77,6 @@ class QuickQSBrightnessController @VisibleForTesting constructor(
|
||||
}
|
||||
}
|
||||
|
||||
override fun setMirror(controller: BrightnessMirrorController) {
|
||||
mirrorController = controller
|
||||
mirrorController?.let { brightnessController?.setMirror(it) }
|
||||
}
|
||||
|
||||
private fun hideBrightnessSlider() {
|
||||
brightnessController?.hideSlider()
|
||||
}
|
||||
@@ -92,10 +84,11 @@ class QuickQSBrightnessController @VisibleForTesting constructor(
|
||||
private fun showBrightnessSlider() {
|
||||
if (brightnessController == null) {
|
||||
brightnessController = brightnessControllerFactory()
|
||||
mirrorController?.also { brightnessController?.setMirror(it) }
|
||||
}
|
||||
brightnessController?.showSlider()
|
||||
if (!isListening) {
|
||||
brightnessController?.registerCallbacks()
|
||||
isListening = true
|
||||
}
|
||||
brightnessController?.showSlider()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,8 +29,6 @@ import com.android.systemui.plugins.qs.QSTile;
|
||||
import com.android.systemui.qs.customize.QSCustomizerController;
|
||||
import com.android.systemui.qs.dagger.QSScope;
|
||||
import com.android.systemui.qs.logging.QSLogger;
|
||||
import com.android.systemui.settings.brightness.BrightnessMirrorHandler;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -52,7 +50,6 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
||||
|
||||
// brightness is visible only in split shade
|
||||
private final QuickQSBrightnessController mBrightnessController;
|
||||
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
||||
|
||||
@Inject
|
||||
QuickQSPanelController(QuickQSPanel view, QSTileHost qsTileHost,
|
||||
@@ -66,7 +63,6 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
||||
super(view, qsTileHost, qsCustomizerController, usingMediaPlayer, mediaHost, metricsLogger,
|
||||
uiEventLogger, qsLogger, dumpManager);
|
||||
mBrightnessController = quickQSBrightnessController;
|
||||
mBrightnessMirrorHandler = new BrightnessMirrorHandler(mBrightnessController);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -82,14 +78,12 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
||||
protected void onViewAttached() {
|
||||
super.onViewAttached();
|
||||
mView.addOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||
mBrightnessMirrorHandler.onQsPanelAttached();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onViewDetached() {
|
||||
super.onViewDetached();
|
||||
mView.removeOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||
mBrightnessMirrorHandler.onQsPanelDettached();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -138,8 +132,4 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
||||
public int getNumQuickTiles() {
|
||||
return mView.getNumQuickTiles();
|
||||
}
|
||||
|
||||
public void setBrightnessMirror(BrightnessMirrorController brightnessMirrorController) {
|
||||
mBrightnessMirrorHandler.setController(brightnessMirrorController);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,13 +50,12 @@ import com.android.settingslib.RestrictedLockUtilsInternal;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||
import com.android.systemui.settings.CurrentUserTracker;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
public class BrightnessController implements ToggleSlider.Listener, MirroredBrightnessController {
|
||||
public class BrightnessController implements ToggleSlider.Listener {
|
||||
private static final String TAG = "StatusBar.BrightnessController";
|
||||
private static final int SLIDER_ANIMATION_DURATION = 3000;
|
||||
|
||||
@@ -110,11 +109,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
||||
|
||||
private ValueAnimator mSliderAnimator;
|
||||
|
||||
@Override
|
||||
public void setMirror(BrightnessMirrorController controller) {
|
||||
mControl.setMirrorControllerAndMirror(controller);
|
||||
}
|
||||
|
||||
public interface BrightnessStateChangeCallback {
|
||||
/** Indicates that some of the brightness settings have changed */
|
||||
void onBrightnessLevelChanged();
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2021 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License
|
||||
*/
|
||||
|
||||
package com.android.systemui.settings.brightness
|
||||
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController.BrightnessMirrorListener
|
||||
|
||||
class BrightnessMirrorHandler(private val brightnessController: MirroredBrightnessController) {
|
||||
|
||||
private var mirrorController: BrightnessMirrorController? = null
|
||||
|
||||
private val brightnessMirrorListener = BrightnessMirrorListener { updateBrightnessMirror() }
|
||||
|
||||
fun onQsPanelAttached() {
|
||||
mirrorController?.addCallback(brightnessMirrorListener)
|
||||
}
|
||||
|
||||
fun onQsPanelDettached() {
|
||||
mirrorController?.removeCallback(brightnessMirrorListener)
|
||||
}
|
||||
|
||||
fun setController(controller: BrightnessMirrorController) {
|
||||
mirrorController?.removeCallback(brightnessMirrorListener)
|
||||
mirrorController = controller
|
||||
mirrorController?.addCallback(brightnessMirrorListener)
|
||||
updateBrightnessMirror()
|
||||
}
|
||||
|
||||
private fun updateBrightnessMirror() {
|
||||
mirrorController?.let { brightnessController.setMirror(it) }
|
||||
}
|
||||
}
|
||||
@@ -23,7 +23,6 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.SeekBar;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
@@ -139,9 +138,15 @@ public class BrightnessSlider extends ViewController<BrightnessSliderView> imple
|
||||
* @param c
|
||||
*/
|
||||
@Override
|
||||
public void setMirrorControllerAndMirror(@NonNull BrightnessMirrorController c) {
|
||||
public void setMirrorControllerAndMirror(BrightnessMirrorController c) {
|
||||
mMirrorController = c;
|
||||
setMirror(c.getToggleSlider());
|
||||
if (c != null) {
|
||||
setMirror(c.getToggleSlider());
|
||||
} else {
|
||||
// If there's no mirror, we may be the ones dispatching, events but we should not mirror
|
||||
// them
|
||||
mView.setOnDispatchTouchEventListener(null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2021 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License
|
||||
*/
|
||||
|
||||
package com.android.systemui.settings.brightness
|
||||
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
||||
|
||||
/**
|
||||
* Indicates controller that has brightness slider and uses [BrightnessMirrorController]
|
||||
*/
|
||||
interface MirroredBrightnessController {
|
||||
fun setMirror(controller: BrightnessMirrorController)
|
||||
}
|
||||
@@ -18,8 +18,6 @@ package com.android.systemui.settings.brightness;
|
||||
|
||||
import android.view.MotionEvent;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
|
||||
@@ -29,7 +27,7 @@ public interface ToggleSlider {
|
||||
}
|
||||
|
||||
void setEnforcedAdmin(RestrictedLockUtils.EnforcedAdmin admin);
|
||||
void setMirrorControllerAndMirror(@NonNull BrightnessMirrorController c);
|
||||
void setMirrorControllerAndMirror(BrightnessMirrorController c);
|
||||
boolean mirrorTouchEvent(MotionEvent ev);
|
||||
|
||||
void setOnChangedListener(Listener l);
|
||||
|
||||
@@ -1309,7 +1309,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
fragmentHostManager.addTagListener(QS.TAG, (tag, f) -> {
|
||||
QS qs = (QS) f;
|
||||
if (qs instanceof QSFragment) {
|
||||
((QSFragment) qs).setBrightnessMirrorController(mBrightnessMirrorController);
|
||||
mQSPanelController = ((QSFragment) qs).getQSPanelController();
|
||||
mQSPanelController.setBrightnessMirror(mBrightnessMirrorController);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -19,15 +19,13 @@ package com.android.systemui.qs
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.settings.brightness.BrightnessController
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
||||
import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mockito.Mock
|
||||
import org.mockito.Mockito.times
|
||||
import org.mockito.Mockito.verify
|
||||
import org.mockito.Mockito.times
|
||||
import org.mockito.Mockito.never
|
||||
import org.mockito.Mockito.mock
|
||||
import org.mockito.junit.MockitoJUnit
|
||||
|
||||
@SmallTest
|
||||
@@ -106,13 +104,4 @@ class QuickQSBrightnessControllerTest : SysuiTestCase() {
|
||||
|
||||
verify(brightnessController, never()).registerCallbacks()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testMirrorIsSetWhenSliderIsShown() {
|
||||
val mirrorController = mock(BrightnessMirrorController::class.java)
|
||||
quickQSBrightnessController.setMirror(mirrorController)
|
||||
quickQSBrightnessController.refreshVisibility(shouldUseSplitNotificationShade = true)
|
||||
|
||||
verify(brightnessController).setMirror(mirrorController)
|
||||
}
|
||||
}
|
||||
@@ -107,6 +107,15 @@ class BrightnessSliderTest : SysuiTestCase() {
|
||||
verify(brightnessSliderView).setEnforcedAdmin(enforcedAdmin)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testNullMirrorControllerNotTrackingTouch() {
|
||||
mController.setMirrorControllerAndMirror(null)
|
||||
|
||||
verify(brightnessSliderView, never()).max
|
||||
verify(brightnessSliderView, never()).value
|
||||
verify(brightnessSliderView).setOnDispatchTouchEventListener(isNull())
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testNullMirrorNotTrackingTouch() {
|
||||
whenever(mirrorController.toggleSlider).thenReturn(null)
|
||||
|
||||
Reference in New Issue
Block a user