Merge "Revert "Making mirror slider appear when brightness slider is used in split shade"" into sc-v2-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
694d40e8ae
@@ -52,7 +52,6 @@ import com.android.systemui.statusbar.StatusBarState;
|
|||||||
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
|
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
|
||||||
import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
||||||
import com.android.systemui.statusbar.phone.NotificationsQuickSettingsContainer;
|
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.statusbar.policy.RemoteInputQuickSettingsDisabler;
|
||||||
import com.android.systemui.util.InjectionInflationController;
|
import com.android.systemui.util.InjectionInflationController;
|
||||||
import com.android.systemui.util.LifecycleFragment;
|
import com.android.systemui.util.LifecycleFragment;
|
||||||
@@ -411,10 +410,8 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setBrightnessMirrorController(
|
public QSPanelController getQSPanelController() {
|
||||||
BrightnessMirrorController brightnessMirrorController) {
|
return mQSPanelController;
|
||||||
mQSPanelController.setBrightnessMirror(brightnessMirrorController);
|
|
||||||
mQuickQSPanelController.setBrightnessMirror(brightnessMirrorController);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -40,7 +40,6 @@ import com.android.systemui.qs.customize.QSCustomizerController;
|
|||||||
import com.android.systemui.qs.dagger.QSScope;
|
import com.android.systemui.qs.dagger.QSScope;
|
||||||
import com.android.systemui.qs.logging.QSLogger;
|
import com.android.systemui.qs.logging.QSLogger;
|
||||||
import com.android.systemui.settings.brightness.BrightnessController;
|
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.settings.brightness.BrightnessSlider;
|
||||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||||
import com.android.systemui.tuner.TunerService;
|
import com.android.systemui.tuner.TunerService;
|
||||||
@@ -61,9 +60,10 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
private final QSTileRevealController.Factory mQsTileRevealControllerFactory;
|
private final QSTileRevealController.Factory mQsTileRevealControllerFactory;
|
||||||
private final FalsingManager mFalsingManager;
|
private final FalsingManager mFalsingManager;
|
||||||
private final BrightnessController mBrightnessController;
|
private final BrightnessController mBrightnessController;
|
||||||
|
private final BrightnessSlider.Factory mBrightnessSliderFactory;
|
||||||
private final BrightnessSlider mBrightnessSlider;
|
private final BrightnessSlider mBrightnessSlider;
|
||||||
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
|
||||||
|
|
||||||
|
private BrightnessMirrorController mBrightnessMirrorController;
|
||||||
private boolean mGridContentVisible = true;
|
private boolean mGridContentVisible = true;
|
||||||
|
|
||||||
private final QSPanel.OnConfigurationChangedListener mOnConfigurationChangedListener =
|
private final QSPanel.OnConfigurationChangedListener mOnConfigurationChangedListener =
|
||||||
@@ -75,10 +75,14 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
if (mView.isListening()) {
|
if (mView.isListening()) {
|
||||||
refreshAllTiles();
|
refreshAllTiles();
|
||||||
}
|
}
|
||||||
|
updateBrightnessMirror();
|
||||||
mView.switchSecurityFooter(mShouldUseSplitNotificationShade);
|
mView.switchSecurityFooter(mShouldUseSplitNotificationShade);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
private final BrightnessMirrorController.BrightnessMirrorListener mBrightnessMirrorListener =
|
||||||
|
mirror -> updateBrightnessMirror();
|
||||||
|
|
||||||
private View.OnTouchListener mTileLayoutTouchListener = new View.OnTouchListener() {
|
private View.OnTouchListener mTileLayoutTouchListener = new View.OnTouchListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onTouch(View v, MotionEvent event) {
|
public boolean onTouch(View v, MotionEvent event) {
|
||||||
@@ -106,12 +110,12 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
mQsTileRevealControllerFactory = qsTileRevealControllerFactory;
|
mQsTileRevealControllerFactory = qsTileRevealControllerFactory;
|
||||||
mFalsingManager = falsingManager;
|
mFalsingManager = falsingManager;
|
||||||
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
||||||
|
mBrightnessSliderFactory = brightnessSliderFactory;
|
||||||
|
|
||||||
mBrightnessSlider = brightnessSliderFactory.create(getContext(), mView);
|
mBrightnessSlider = mBrightnessSliderFactory.create(getContext(), mView);
|
||||||
mView.setBrightnessView(mBrightnessSlider.getRootView());
|
mView.setBrightnessView(mBrightnessSlider.getRootView());
|
||||||
|
|
||||||
mBrightnessController = brightnessControllerFactory.create(mBrightnessSlider);
|
mBrightnessController = brightnessControllerFactory.create(mBrightnessSlider);
|
||||||
mBrightnessMirrorHandler = new BrightnessMirrorHandler(mBrightnessController);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -138,7 +142,9 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
mView.addOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
mView.addOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||||
mView.setSecurityFooter(mQsSecurityFooter.getView(), mShouldUseSplitNotificationShade);
|
mView.setSecurityFooter(mQsSecurityFooter.getView(), mShouldUseSplitNotificationShade);
|
||||||
switchTileLayout(true);
|
switchTileLayout(true);
|
||||||
mBrightnessMirrorHandler.onQsPanelAttached();
|
if (mBrightnessMirrorController != null) {
|
||||||
|
mBrightnessMirrorController.addCallback(mBrightnessMirrorListener);
|
||||||
|
}
|
||||||
|
|
||||||
((PagedTileLayout) mView.getOrCreateTileLayout())
|
((PagedTileLayout) mView.getOrCreateTileLayout())
|
||||||
.setOnTouchListener(mTileLayoutTouchListener);
|
.setOnTouchListener(mTileLayoutTouchListener);
|
||||||
@@ -154,7 +160,9 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
protected void onViewDetached() {
|
protected void onViewDetached() {
|
||||||
mTunerService.removeTunable(mView);
|
mTunerService.removeTunable(mView);
|
||||||
mView.removeOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
mView.removeOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||||
mBrightnessMirrorHandler.onQsPanelDettached();
|
if (mBrightnessMirrorController != null) {
|
||||||
|
mBrightnessMirrorController.removeCallback(mBrightnessMirrorListener);
|
||||||
|
}
|
||||||
super.onViewDetached();
|
super.onViewDetached();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -188,8 +196,23 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** */
|
||||||
public void setBrightnessMirror(BrightnessMirrorController brightnessMirrorController) {
|
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. */
|
/** Get the QSTileHost this panel uses. */
|
||||||
|
|||||||
@@ -19,8 +19,6 @@ package com.android.systemui.qs
|
|||||||
import androidx.annotation.VisibleForTesting
|
import androidx.annotation.VisibleForTesting
|
||||||
import com.android.systemui.settings.brightness.BrightnessController
|
import com.android.systemui.settings.brightness.BrightnessController
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider
|
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
|
import javax.inject.Inject
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -29,7 +27,7 @@ import javax.inject.Inject
|
|||||||
*/
|
*/
|
||||||
class QuickQSBrightnessController @VisibleForTesting constructor(
|
class QuickQSBrightnessController @VisibleForTesting constructor(
|
||||||
private val brightnessControllerFactory: () -> BrightnessController
|
private val brightnessControllerFactory: () -> BrightnessController
|
||||||
) : MirroredBrightnessController {
|
) {
|
||||||
|
|
||||||
@Inject constructor(
|
@Inject constructor(
|
||||||
brightnessControllerFactory: BrightnessController.Factory,
|
brightnessControllerFactory: BrightnessController.Factory,
|
||||||
@@ -44,7 +42,6 @@ class QuickQSBrightnessController @VisibleForTesting constructor(
|
|||||||
|
|
||||||
private var isListening = false
|
private var isListening = false
|
||||||
private var brightnessController: BrightnessController? = null
|
private var brightnessController: BrightnessController? = null
|
||||||
private var mirrorController: BrightnessMirrorController? = null
|
|
||||||
|
|
||||||
fun init(shouldUseSplitNotificationShade: Boolean) {
|
fun init(shouldUseSplitNotificationShade: Boolean) {
|
||||||
refreshVisibility(shouldUseSplitNotificationShade)
|
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() {
|
private fun hideBrightnessSlider() {
|
||||||
brightnessController?.hideSlider()
|
brightnessController?.hideSlider()
|
||||||
}
|
}
|
||||||
@@ -92,10 +84,11 @@ class QuickQSBrightnessController @VisibleForTesting constructor(
|
|||||||
private fun showBrightnessSlider() {
|
private fun showBrightnessSlider() {
|
||||||
if (brightnessController == null) {
|
if (brightnessController == null) {
|
||||||
brightnessController = brightnessControllerFactory()
|
brightnessController = brightnessControllerFactory()
|
||||||
mirrorController?.also { brightnessController?.setMirror(it) }
|
}
|
||||||
|
brightnessController?.showSlider()
|
||||||
|
if (!isListening) {
|
||||||
brightnessController?.registerCallbacks()
|
brightnessController?.registerCallbacks()
|
||||||
isListening = true
|
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.customize.QSCustomizerController;
|
||||||
import com.android.systemui.qs.dagger.QSScope;
|
import com.android.systemui.qs.dagger.QSScope;
|
||||||
import com.android.systemui.qs.logging.QSLogger;
|
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.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -52,7 +50,6 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
|||||||
|
|
||||||
// brightness is visible only in split shade
|
// brightness is visible only in split shade
|
||||||
private final QuickQSBrightnessController mBrightnessController;
|
private final QuickQSBrightnessController mBrightnessController;
|
||||||
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
QuickQSPanelController(QuickQSPanel view, QSTileHost qsTileHost,
|
QuickQSPanelController(QuickQSPanel view, QSTileHost qsTileHost,
|
||||||
@@ -66,7 +63,6 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
|||||||
super(view, qsTileHost, qsCustomizerController, usingMediaPlayer, mediaHost, metricsLogger,
|
super(view, qsTileHost, qsCustomizerController, usingMediaPlayer, mediaHost, metricsLogger,
|
||||||
uiEventLogger, qsLogger, dumpManager);
|
uiEventLogger, qsLogger, dumpManager);
|
||||||
mBrightnessController = quickQSBrightnessController;
|
mBrightnessController = quickQSBrightnessController;
|
||||||
mBrightnessMirrorHandler = new BrightnessMirrorHandler(mBrightnessController);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -82,14 +78,12 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
|||||||
protected void onViewAttached() {
|
protected void onViewAttached() {
|
||||||
super.onViewAttached();
|
super.onViewAttached();
|
||||||
mView.addOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
mView.addOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||||
mBrightnessMirrorHandler.onQsPanelAttached();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onViewDetached() {
|
protected void onViewDetached() {
|
||||||
super.onViewDetached();
|
super.onViewDetached();
|
||||||
mView.removeOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
mView.removeOnConfigurationChangedListener(mOnConfigurationChangedListener);
|
||||||
mBrightnessMirrorHandler.onQsPanelDettached();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -138,8 +132,4 @@ public class QuickQSPanelController extends QSPanelControllerBase<QuickQSPanel>
|
|||||||
public int getNumQuickTiles() {
|
public int getNumQuickTiles() {
|
||||||
return mView.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.Dependency;
|
||||||
import com.android.systemui.broadcast.BroadcastDispatcher;
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
import com.android.systemui.settings.CurrentUserTracker;
|
import com.android.systemui.settings.CurrentUserTracker;
|
||||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
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 String TAG = "StatusBar.BrightnessController";
|
||||||
private static final int SLIDER_ANIMATION_DURATION = 3000;
|
private static final int SLIDER_ANIMATION_DURATION = 3000;
|
||||||
|
|
||||||
@@ -110,11 +109,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
|
|
||||||
private ValueAnimator mSliderAnimator;
|
private ValueAnimator mSliderAnimator;
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setMirror(BrightnessMirrorController controller) {
|
|
||||||
mControl.setMirrorControllerAndMirror(controller);
|
|
||||||
}
|
|
||||||
|
|
||||||
public interface BrightnessStateChangeCallback {
|
public interface BrightnessStateChangeCallback {
|
||||||
/** Indicates that some of the brightness settings have changed */
|
/** Indicates that some of the brightness settings have changed */
|
||||||
void onBrightnessLevelChanged();
|
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.view.ViewGroup;
|
||||||
import android.widget.SeekBar;
|
import android.widget.SeekBar;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
|
|
||||||
import com.android.settingslib.RestrictedLockUtils;
|
import com.android.settingslib.RestrictedLockUtils;
|
||||||
@@ -139,9 +138,15 @@ public class BrightnessSlider extends ViewController<BrightnessSliderView> imple
|
|||||||
* @param c
|
* @param c
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void setMirrorControllerAndMirror(@NonNull BrightnessMirrorController c) {
|
public void setMirrorControllerAndMirror(BrightnessMirrorController c) {
|
||||||
mMirrorController = c;
|
mMirrorController = c;
|
||||||
|
if (c != null) {
|
||||||
setMirror(c.getToggleSlider());
|
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
|
@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 android.view.MotionEvent;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
|
||||||
|
|
||||||
import com.android.settingslib.RestrictedLockUtils;
|
import com.android.settingslib.RestrictedLockUtils;
|
||||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||||
|
|
||||||
@@ -29,7 +27,7 @@ public interface ToggleSlider {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void setEnforcedAdmin(RestrictedLockUtils.EnforcedAdmin admin);
|
void setEnforcedAdmin(RestrictedLockUtils.EnforcedAdmin admin);
|
||||||
void setMirrorControllerAndMirror(@NonNull BrightnessMirrorController c);
|
void setMirrorControllerAndMirror(BrightnessMirrorController c);
|
||||||
boolean mirrorTouchEvent(MotionEvent ev);
|
boolean mirrorTouchEvent(MotionEvent ev);
|
||||||
|
|
||||||
void setOnChangedListener(Listener l);
|
void setOnChangedListener(Listener l);
|
||||||
|
|||||||
@@ -1354,7 +1354,8 @@ public class StatusBar extends SystemUI implements
|
|||||||
fragmentHostManager.addTagListener(QS.TAG, (tag, f) -> {
|
fragmentHostManager.addTagListener(QS.TAG, (tag, f) -> {
|
||||||
QS qs = (QS) f;
|
QS qs = (QS) f;
|
||||||
if (qs instanceof QSFragment) {
|
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 androidx.test.filters.SmallTest
|
||||||
import com.android.systemui.SysuiTestCase
|
import com.android.systemui.SysuiTestCase
|
||||||
import com.android.systemui.settings.brightness.BrightnessController
|
import com.android.systemui.settings.brightness.BrightnessController
|
||||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
|
||||||
import org.junit.Before
|
import org.junit.Before
|
||||||
import org.junit.Rule
|
import org.junit.Rule
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
import org.mockito.Mock
|
import org.mockito.Mock
|
||||||
import org.mockito.Mockito.times
|
|
||||||
import org.mockito.Mockito.verify
|
import org.mockito.Mockito.verify
|
||||||
|
import org.mockito.Mockito.times
|
||||||
import org.mockito.Mockito.never
|
import org.mockito.Mockito.never
|
||||||
import org.mockito.Mockito.mock
|
|
||||||
import org.mockito.junit.MockitoJUnit
|
import org.mockito.junit.MockitoJUnit
|
||||||
|
|
||||||
@SmallTest
|
@SmallTest
|
||||||
@@ -106,13 +104,4 @@ class QuickQSBrightnessControllerTest : SysuiTestCase() {
|
|||||||
|
|
||||||
verify(brightnessController, never()).registerCallbacks()
|
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)
|
verify(brightnessSliderView).setEnforcedAdmin(enforcedAdmin)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun testNullMirrorControllerNotTrackingTouch() {
|
||||||
|
mController.setMirrorControllerAndMirror(null)
|
||||||
|
|
||||||
|
verify(brightnessSliderView, never()).max
|
||||||
|
verify(brightnessSliderView, never()).value
|
||||||
|
verify(brightnessSliderView).setOnDispatchTouchEventListener(isNull())
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testNullMirrorNotTrackingTouch() {
|
fun testNullMirrorNotTrackingTouch() {
|
||||||
whenever(mirrorController.toggleSlider).thenReturn(null)
|
whenever(mirrorController.toggleSlider).thenReturn(null)
|
||||||
|
|||||||
Reference in New Issue
Block a user