Merge "Fixing brightness slider jank in split shade" into sc-v2-dev am: 327615d629
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16117040 Change-Id: I2e7eaa620caa98f4138fb0134fbe61a3f9f2e570
This commit is contained in:
@@ -41,7 +41,7 @@ import com.android.internal.widget.RemeasuringLinearLayout;
|
|||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.plugins.qs.DetailAdapter;
|
import com.android.systemui.plugins.qs.DetailAdapter;
|
||||||
import com.android.systemui.plugins.qs.QSTile;
|
import com.android.systemui.plugins.qs.QSTile;
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||||
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;
|
||||||
import com.android.systemui.tuner.TunerService.Tunable;
|
import com.android.systemui.tuner.TunerService.Tunable;
|
||||||
@@ -69,7 +69,7 @@ public class QSPanel extends LinearLayout implements Tunable {
|
|||||||
@Nullable
|
@Nullable
|
||||||
protected View mBrightnessView;
|
protected View mBrightnessView;
|
||||||
@Nullable
|
@Nullable
|
||||||
protected BrightnessSlider mToggleSliderController;
|
protected BrightnessSliderController mToggleSliderController;
|
||||||
|
|
||||||
private final H mHandler = new H();
|
private final H mHandler = new H();
|
||||||
/** Whether or not the QS media player feature is enabled. */
|
/** Whether or not the QS media player feature is enabled. */
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ 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.BrightnessMirrorHandler;
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||||
import com.android.systemui.statusbar.CommandQueue;
|
import com.android.systemui.statusbar.CommandQueue;
|
||||||
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;
|
||||||
@@ -63,7 +63,7 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
private final FalsingManager mFalsingManager;
|
private final FalsingManager mFalsingManager;
|
||||||
private final CommandQueue mCommandQueue;
|
private final CommandQueue mCommandQueue;
|
||||||
private final BrightnessController mBrightnessController;
|
private final BrightnessController mBrightnessController;
|
||||||
private final BrightnessSlider mBrightnessSlider;
|
private final BrightnessSliderController mBrightnessSliderController;
|
||||||
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
||||||
|
|
||||||
private boolean mGridContentVisible = true;
|
private boolean mGridContentVisible = true;
|
||||||
@@ -99,8 +99,8 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
QSTileRevealController.Factory qsTileRevealControllerFactory,
|
QSTileRevealController.Factory qsTileRevealControllerFactory,
|
||||||
DumpManager dumpManager, MetricsLogger metricsLogger, UiEventLogger uiEventLogger,
|
DumpManager dumpManager, MetricsLogger metricsLogger, UiEventLogger uiEventLogger,
|
||||||
QSLogger qsLogger, BrightnessController.Factory brightnessControllerFactory,
|
QSLogger qsLogger, BrightnessController.Factory brightnessControllerFactory,
|
||||||
BrightnessSlider.Factory brightnessSliderFactory, FalsingManager falsingManager,
|
BrightnessSliderController.Factory brightnessSliderFactory,
|
||||||
CommandQueue commandQueue) {
|
FalsingManager falsingManager, CommandQueue commandQueue) {
|
||||||
super(view, qstileHost, qsCustomizerController, usingMediaPlayer, mediaHost,
|
super(view, qstileHost, qsCustomizerController, usingMediaPlayer, mediaHost,
|
||||||
metricsLogger, uiEventLogger, qsLogger, dumpManager);
|
metricsLogger, uiEventLogger, qsLogger, dumpManager);
|
||||||
mQsSecurityFooter = qsSecurityFooter;
|
mQsSecurityFooter = qsSecurityFooter;
|
||||||
@@ -111,10 +111,10 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
mCommandQueue = commandQueue;
|
mCommandQueue = commandQueue;
|
||||||
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
||||||
|
|
||||||
mBrightnessSlider = brightnessSliderFactory.create(getContext(), mView);
|
mBrightnessSliderController = brightnessSliderFactory.create(getContext(), mView);
|
||||||
mView.setBrightnessView(mBrightnessSlider.getRootView());
|
mView.setBrightnessView(mBrightnessSliderController.getRootView());
|
||||||
|
|
||||||
mBrightnessController = brightnessControllerFactory.create(mBrightnessSlider);
|
mBrightnessController = brightnessControllerFactory.create(mBrightnessSliderController);
|
||||||
mBrightnessMirrorHandler = new BrightnessMirrorHandler(mBrightnessController);
|
mBrightnessMirrorHandler = new BrightnessMirrorHandler(mBrightnessController);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -125,7 +125,7 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
mMediaHost.setShowsOnlyActiveMedia(false);
|
mMediaHost.setShowsOnlyActiveMedia(false);
|
||||||
mMediaHost.init(MediaHierarchyManager.LOCATION_QS);
|
mMediaHost.init(MediaHierarchyManager.LOCATION_QS);
|
||||||
mQsCustomizerController.init();
|
mQsCustomizerController.init();
|
||||||
mBrightnessSlider.init();
|
mBrightnessSliderController.init();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ 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.BrightnessSliderController
|
||||||
import com.android.systemui.settings.brightness.MirroredBrightnessController
|
import com.android.systemui.settings.brightness.MirroredBrightnessController
|
||||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
import com.android.systemui.statusbar.policy.BrightnessMirrorController
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
@@ -33,10 +33,11 @@ class QuickQSBrightnessController @VisibleForTesting constructor(
|
|||||||
|
|
||||||
@Inject constructor(
|
@Inject constructor(
|
||||||
brightnessControllerFactory: BrightnessController.Factory,
|
brightnessControllerFactory: BrightnessController.Factory,
|
||||||
brightnessSliderFactory: BrightnessSlider.Factory,
|
brightnessSliderControllerFactory: BrightnessSliderController.Factory,
|
||||||
quickQSPanel: QuickQSPanel
|
quickQSPanel: QuickQSPanel
|
||||||
) : this(brightnessControllerFactory = {
|
) : this(brightnessControllerFactory = {
|
||||||
val slider = brightnessSliderFactory.create(quickQSPanel.context, quickQSPanel)
|
val slider = brightnessSliderControllerFactory.create(quickQSPanel.context,
|
||||||
|
quickQSPanel)
|
||||||
slider.init()
|
slider.init()
|
||||||
quickQSPanel.setBrightnessView(slider.rootView)
|
quickQSPanel.setBrightnessView(slider.rootView)
|
||||||
brightnessControllerFactory.create(slider)
|
brightnessControllerFactory.create(slider)
|
||||||
|
|||||||
@@ -51,8 +51,6 @@ import com.android.systemui.dagger.qualifiers.Background;
|
|||||||
import com.android.systemui.settings.CurrentUserTracker;
|
import com.android.systemui.settings.CurrentUserTracker;
|
||||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||||
|
|
||||||
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, MirroredBrightnessController {
|
||||||
@@ -92,13 +90,9 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
@Override
|
@Override
|
||||||
public void onDisplayChanged(int displayId) {
|
public void onDisplayChanged(int displayId) {
|
||||||
mBackgroundHandler.post(mUpdateSliderRunnable);
|
mBackgroundHandler.post(mUpdateSliderRunnable);
|
||||||
notifyCallbacks();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
private ArrayList<BrightnessStateChangeCallback> mChangeCallbacks =
|
|
||||||
new ArrayList<BrightnessStateChangeCallback>();
|
|
||||||
|
|
||||||
private volatile boolean mAutomatic; // Brightness adjusted automatically using ambient light.
|
private volatile boolean mAutomatic; // Brightness adjusted automatically using ambient light.
|
||||||
private volatile boolean mIsVrModeEnabled;
|
private volatile boolean mIsVrModeEnabled;
|
||||||
private boolean mListening;
|
private boolean mListening;
|
||||||
@@ -114,11 +108,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
mControl.setMirrorControllerAndMirror(controller);
|
mControl.setMirrorControllerAndMirror(controller);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface BrightnessStateChangeCallback {
|
|
||||||
/** Indicates that some of the brightness settings have changed */
|
|
||||||
void onBrightnessLevelChanged();
|
|
||||||
}
|
|
||||||
|
|
||||||
/** ContentObserver to watch brightness */
|
/** ContentObserver to watch brightness */
|
||||||
private class BrightnessObserver extends ContentObserver {
|
private class BrightnessObserver extends ContentObserver {
|
||||||
|
|
||||||
@@ -139,7 +128,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
mBackgroundHandler.post(mUpdateModeRunnable);
|
mBackgroundHandler.post(mUpdateModeRunnable);
|
||||||
mBackgroundHandler.post(mUpdateSliderRunnable);
|
mBackgroundHandler.post(mUpdateSliderRunnable);
|
||||||
}
|
}
|
||||||
notifyCallbacks();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void startObserving() {
|
public void startObserving() {
|
||||||
@@ -317,14 +305,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
Context.VR_SERVICE));
|
Context.VR_SERVICE));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addStateChangedCallback(BrightnessStateChangeCallback cb) {
|
|
||||||
mChangeCallbacks.add(cb);
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean removeStateChangedCallback(BrightnessStateChangeCallback cb) {
|
|
||||||
return mChangeCallbacks.remove(cb);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void registerCallbacks() {
|
public void registerCallbacks() {
|
||||||
mBackgroundHandler.post(mStartListeningRunnable);
|
mBackgroundHandler.post(mStartListeningRunnable);
|
||||||
}
|
}
|
||||||
@@ -375,10 +355,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
for (BrightnessStateChangeCallback cb : mChangeCallbacks) {
|
|
||||||
cb.onBrightnessLevelChanged();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void checkRestrictionAndSetEnabled() {
|
public void checkRestrictionAndSetEnabled() {
|
||||||
@@ -435,8 +411,12 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void animateSliderTo(int target) {
|
private void animateSliderTo(int target) {
|
||||||
if (!mControlValueInitialized) {
|
if (!mControlValueInitialized || !mControl.isVisible()) {
|
||||||
// Don't animate the first value since its default state isn't meaningful to users.
|
// Don't animate the first value since its default state isn't meaningful to users.
|
||||||
|
// We also don't want to animate slider if it's not visible - especially important when
|
||||||
|
// two sliders are active at the same time in split shade (one in QS and one in QQS),
|
||||||
|
// as this negatively affects transition between them and they share mirror slider -
|
||||||
|
// animating it from two different sources causes janky motion
|
||||||
mControl.setValue(target);
|
mControl.setValue(target);
|
||||||
mControlValueInitialized = true;
|
mControlValueInitialized = true;
|
||||||
}
|
}
|
||||||
@@ -455,13 +435,6 @@ public class BrightnessController implements ToggleSlider.Listener, MirroredBrig
|
|||||||
mSliderAnimator.start();
|
mSliderAnimator.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void notifyCallbacks() {
|
|
||||||
final int size = mChangeCallbacks.size();
|
|
||||||
for (int i = 0; i < size; i++) {
|
|
||||||
mChangeCallbacks.get(i).onBrightnessLevelChanged();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Factory for creating a {@link BrightnessController}. */
|
/** Factory for creating a {@link BrightnessController}. */
|
||||||
public static class Factory {
|
public static class Factory {
|
||||||
private final Context mContext;
|
private final Context mContext;
|
||||||
|
|||||||
@@ -41,14 +41,14 @@ import javax.inject.Inject;
|
|||||||
public class BrightnessDialog extends Activity {
|
public class BrightnessDialog extends Activity {
|
||||||
|
|
||||||
private BrightnessController mBrightnessController;
|
private BrightnessController mBrightnessController;
|
||||||
private final BrightnessSlider.Factory mToggleSliderFactory;
|
private final BrightnessSliderController.Factory mToggleSliderFactory;
|
||||||
private final BroadcastDispatcher mBroadcastDispatcher;
|
private final BroadcastDispatcher mBroadcastDispatcher;
|
||||||
private final Handler mBackgroundHandler;
|
private final Handler mBackgroundHandler;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public BrightnessDialog(
|
public BrightnessDialog(
|
||||||
BroadcastDispatcher broadcastDispatcher,
|
BroadcastDispatcher broadcastDispatcher,
|
||||||
BrightnessSlider.Factory factory,
|
BrightnessSliderController.Factory factory,
|
||||||
@Background Handler bgHandler) {
|
@Background Handler bgHandler) {
|
||||||
mBroadcastDispatcher = broadcastDispatcher;
|
mBroadcastDispatcher = broadcastDispatcher;
|
||||||
mToggleSliderFactory = factory;
|
mToggleSliderFactory = factory;
|
||||||
@@ -77,7 +77,7 @@ public class BrightnessDialog extends Activity {
|
|||||||
// The brightness mirror container is INVISIBLE by default.
|
// The brightness mirror container is INVISIBLE by default.
|
||||||
frame.setVisibility(View.VISIBLE);
|
frame.setVisibility(View.VISIBLE);
|
||||||
|
|
||||||
BrightnessSlider controller = mToggleSliderFactory.create(this, frame);
|
BrightnessSliderController controller = mToggleSliderFactory.create(this, frame);
|
||||||
controller.init();
|
controller.init();
|
||||||
frame.addView(controller.getRootView(), MATCH_PARENT, WRAP_CONTENT);
|
frame.addView(controller.getRootView(), MATCH_PARENT, WRAP_CONTENT);
|
||||||
|
|
||||||
|
|||||||
@@ -44,7 +44,8 @@ import javax.inject.Inject;
|
|||||||
*
|
*
|
||||||
* @see BrightnessMirrorController
|
* @see BrightnessMirrorController
|
||||||
*/
|
*/
|
||||||
public class BrightnessSlider extends ViewController<BrightnessSliderView> implements ToggleSlider {
|
public class BrightnessSliderController extends ViewController<BrightnessSliderView> implements
|
||||||
|
ToggleSlider {
|
||||||
|
|
||||||
private Listener mListener;
|
private Listener mListener;
|
||||||
private ToggleSlider mMirror;
|
private ToggleSlider mMirror;
|
||||||
@@ -69,7 +70,7 @@ public class BrightnessSlider extends ViewController<BrightnessSliderView> imple
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
BrightnessSlider(
|
BrightnessSliderController(
|
||||||
BrightnessSliderView brightnessSliderView,
|
BrightnessSliderView brightnessSliderView,
|
||||||
FalsingManager falsingManager) {
|
FalsingManager falsingManager) {
|
||||||
super(brightnessSliderView);
|
super(brightnessSliderView);
|
||||||
@@ -184,6 +185,15 @@ public class BrightnessSlider extends ViewController<BrightnessSliderView> imple
|
|||||||
mView.setVisibility(View.VISIBLE);
|
mView.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isVisible() {
|
||||||
|
// this should be called rarely - once or twice per slider's value change, but not for
|
||||||
|
// every value change when user slides finger - only the final one.
|
||||||
|
// If view is not visible this call is quick (around 50 µs) as it sees parent is not visible
|
||||||
|
// otherwise it's slightly longer (70 µs) because there are more checks to be done
|
||||||
|
return mView.isVisibleToUser();
|
||||||
|
}
|
||||||
|
|
||||||
private final SeekBar.OnSeekBarChangeListener mSeekListener =
|
private final SeekBar.OnSeekBarChangeListener mSeekListener =
|
||||||
new SeekBar.OnSeekBarChangeListener() {
|
new SeekBar.OnSeekBarChangeListener() {
|
||||||
@Override
|
@Override
|
||||||
@@ -222,7 +232,7 @@ public class BrightnessSlider extends ViewController<BrightnessSliderView> imple
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a {@link BrightnessSlider} with its associated view.
|
* Creates a {@link BrightnessSliderController} with its associated view.
|
||||||
*/
|
*/
|
||||||
public static class Factory {
|
public static class Factory {
|
||||||
|
|
||||||
@@ -240,11 +250,11 @@ public class BrightnessSlider extends ViewController<BrightnessSliderView> imple
|
|||||||
* @param viewRoot the {@link ViewGroup} that will contain the hierarchy. The inflated
|
* @param viewRoot the {@link ViewGroup} that will contain the hierarchy. The inflated
|
||||||
* hierarchy will not be attached
|
* hierarchy will not be attached
|
||||||
*/
|
*/
|
||||||
public BrightnessSlider create(Context context, @Nullable ViewGroup viewRoot) {
|
public BrightnessSliderController create(Context context, @Nullable ViewGroup viewRoot) {
|
||||||
int layout = getLayout();
|
int layout = getLayout();
|
||||||
BrightnessSliderView root = (BrightnessSliderView) LayoutInflater.from(context)
|
BrightnessSliderView root = (BrightnessSliderView) LayoutInflater.from(context)
|
||||||
.inflate(layout, viewRoot, false);
|
.inflate(layout, viewRoot, false);
|
||||||
return new BrightnessSlider(root, mFalsingManager);
|
return new BrightnessSliderController(root, mFalsingManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Get the layout to inflate based on what slider to use */
|
/** Get the layout to inflate based on what slider to use */
|
||||||
@@ -38,4 +38,5 @@ public interface ToggleSlider {
|
|||||||
|
|
||||||
void showView();
|
void showView();
|
||||||
void hideView();
|
void hideView();
|
||||||
|
boolean isVisible();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ import com.android.systemui.qs.QSFragment;
|
|||||||
import com.android.systemui.qs.QSPanelController;
|
import com.android.systemui.qs.QSPanelController;
|
||||||
import com.android.systemui.recents.ScreenPinningRequest;
|
import com.android.systemui.recents.ScreenPinningRequest;
|
||||||
import com.android.systemui.scrim.ScrimView;
|
import com.android.systemui.scrim.ScrimView;
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||||
import com.android.systemui.shared.plugins.PluginManager;
|
import com.android.systemui.shared.plugins.PluginManager;
|
||||||
import com.android.systemui.statusbar.AutoHideUiElement;
|
import com.android.systemui.statusbar.AutoHideUiElement;
|
||||||
import com.android.systemui.statusbar.BackDropView;
|
import com.android.systemui.statusbar.BackDropView;
|
||||||
@@ -541,7 +541,7 @@ public class StatusBar extends SystemUI implements
|
|||||||
private final NotificationViewHierarchyManager mViewHierarchyManager;
|
private final NotificationViewHierarchyManager mViewHierarchyManager;
|
||||||
private final KeyguardViewMediator mKeyguardViewMediator;
|
private final KeyguardViewMediator mKeyguardViewMediator;
|
||||||
protected final NotificationInterruptStateProvider mNotificationInterruptStateProvider;
|
protected final NotificationInterruptStateProvider mNotificationInterruptStateProvider;
|
||||||
private final BrightnessSlider.Factory mBrightnessSliderFactory;
|
private final BrightnessSliderController.Factory mBrightnessSliderFactory;
|
||||||
private final FeatureFlags mFeatureFlags;
|
private final FeatureFlags mFeatureFlags;
|
||||||
private final UnfoldTransitionConfig mUnfoldTransitionConfig;
|
private final UnfoldTransitionConfig mUnfoldTransitionConfig;
|
||||||
private final Lazy<UnfoldLightRevealOverlayAnimation> mUnfoldLightRevealOverlayAnimation;
|
private final Lazy<UnfoldLightRevealOverlayAnimation> mUnfoldLightRevealOverlayAnimation;
|
||||||
@@ -781,7 +781,7 @@ public class StatusBar extends SystemUI implements
|
|||||||
Lazy<NotificationShadeDepthController> notificationShadeDepthControllerLazy,
|
Lazy<NotificationShadeDepthController> notificationShadeDepthControllerLazy,
|
||||||
StatusBarTouchableRegionManager statusBarTouchableRegionManager,
|
StatusBarTouchableRegionManager statusBarTouchableRegionManager,
|
||||||
NotificationIconAreaController notificationIconAreaController,
|
NotificationIconAreaController notificationIconAreaController,
|
||||||
BrightnessSlider.Factory brightnessSliderFactory,
|
BrightnessSliderController.Factory brightnessSliderFactory,
|
||||||
UnfoldTransitionConfig unfoldTransitionConfig,
|
UnfoldTransitionConfig unfoldTransitionConfig,
|
||||||
Lazy<UnfoldLightRevealOverlayAnimation> unfoldLightRevealOverlayAnimation,
|
Lazy<UnfoldLightRevealOverlayAnimation> unfoldLightRevealOverlayAnimation,
|
||||||
Lazy<UnfoldTransitionWallpaperController> unfoldTransitionWallpaperController,
|
Lazy<UnfoldTransitionWallpaperController> unfoldTransitionWallpaperController,
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ import com.android.systemui.navigationbar.NavigationBarController;
|
|||||||
import com.android.systemui.plugins.FalsingManager;
|
import com.android.systemui.plugins.FalsingManager;
|
||||||
import com.android.systemui.plugins.PluginDependencyProvider;
|
import com.android.systemui.plugins.PluginDependencyProvider;
|
||||||
import com.android.systemui.recents.ScreenPinningRequest;
|
import com.android.systemui.recents.ScreenPinningRequest;
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||||
import com.android.systemui.shared.plugins.PluginManager;
|
import com.android.systemui.shared.plugins.PluginManager;
|
||||||
import com.android.systemui.statusbar.CommandQueue;
|
import com.android.systemui.statusbar.CommandQueue;
|
||||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||||
@@ -220,7 +220,7 @@ public interface StatusBarPhoneModule {
|
|||||||
Lazy<NotificationShadeDepthController> notificationShadeDepthController,
|
Lazy<NotificationShadeDepthController> notificationShadeDepthController,
|
||||||
StatusBarTouchableRegionManager statusBarTouchableRegionManager,
|
StatusBarTouchableRegionManager statusBarTouchableRegionManager,
|
||||||
NotificationIconAreaController notificationIconAreaController,
|
NotificationIconAreaController notificationIconAreaController,
|
||||||
BrightnessSlider.Factory brightnessSliderFactory,
|
BrightnessSliderController.Factory brightnessSliderFactory,
|
||||||
UnfoldTransitionConfig unfoldTransitionConfig,
|
UnfoldTransitionConfig unfoldTransitionConfig,
|
||||||
Lazy<UnfoldLightRevealOverlayAnimation> unfoldLightRevealOverlayAnimation,
|
Lazy<UnfoldLightRevealOverlayAnimation> unfoldLightRevealOverlayAnimation,
|
||||||
Lazy<NaturalRotationUnfoldProgressProvider> naturalRotationUnfoldProgressProvider,
|
Lazy<NaturalRotationUnfoldProgressProvider> naturalRotationUnfoldProgressProvider,
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ import android.view.ViewGroup;
|
|||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
|
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||||
import com.android.systemui.settings.brightness.ToggleSlider;
|
import com.android.systemui.settings.brightness.ToggleSlider;
|
||||||
import com.android.systemui.statusbar.NotificationShadeDepthController;
|
import com.android.systemui.statusbar.NotificationShadeDepthController;
|
||||||
import com.android.systemui.statusbar.phone.NotificationPanelViewController;
|
import com.android.systemui.statusbar.phone.NotificationPanelViewController;
|
||||||
@@ -46,8 +46,8 @@ public class BrightnessMirrorController
|
|||||||
private final NotificationPanelViewController mNotificationPanel;
|
private final NotificationPanelViewController mNotificationPanel;
|
||||||
private final NotificationShadeDepthController mDepthController;
|
private final NotificationShadeDepthController mDepthController;
|
||||||
private final ArraySet<BrightnessMirrorListener> mBrightnessMirrorListeners = new ArraySet<>();
|
private final ArraySet<BrightnessMirrorListener> mBrightnessMirrorListeners = new ArraySet<>();
|
||||||
private final BrightnessSlider.Factory mToggleSliderFactory;
|
private final BrightnessSliderController.Factory mToggleSliderFactory;
|
||||||
private BrightnessSlider mToggleSliderController;
|
private BrightnessSliderController mToggleSliderController;
|
||||||
private final int[] mInt2Cache = new int[2];
|
private final int[] mInt2Cache = new int[2];
|
||||||
private FrameLayout mBrightnessMirror;
|
private FrameLayout mBrightnessMirror;
|
||||||
private int mBrightnessMirrorBackgroundPadding;
|
private int mBrightnessMirrorBackgroundPadding;
|
||||||
@@ -56,7 +56,7 @@ public class BrightnessMirrorController
|
|||||||
public BrightnessMirrorController(NotificationShadeWindowView statusBarWindow,
|
public BrightnessMirrorController(NotificationShadeWindowView statusBarWindow,
|
||||||
NotificationPanelViewController notificationPanelViewController,
|
NotificationPanelViewController notificationPanelViewController,
|
||||||
NotificationShadeDepthController notificationShadeDepthController,
|
NotificationShadeDepthController notificationShadeDepthController,
|
||||||
BrightnessSlider.Factory factory,
|
BrightnessSliderController.Factory factory,
|
||||||
@NonNull Consumer<Boolean> visibilityCallback) {
|
@NonNull Consumer<Boolean> visibilityCallback) {
|
||||||
mStatusBarWindow = statusBarWindow;
|
mStatusBarWindow = statusBarWindow;
|
||||||
mToggleSliderFactory = factory;
|
mToggleSliderFactory = factory;
|
||||||
@@ -135,9 +135,10 @@ public class BrightnessMirrorController
|
|||||||
reinflate();
|
reinflate();
|
||||||
}
|
}
|
||||||
|
|
||||||
private BrightnessSlider setMirrorLayout() {
|
private BrightnessSliderController setMirrorLayout() {
|
||||||
Context context = mBrightnessMirror.getContext();
|
Context context = mBrightnessMirror.getContext();
|
||||||
BrightnessSlider controller = mToggleSliderFactory.create(context, mBrightnessMirror);
|
BrightnessSliderController controller = mToggleSliderFactory.create(context,
|
||||||
|
mBrightnessMirror);
|
||||||
controller.init();
|
controller.init();
|
||||||
|
|
||||||
mBrightnessMirror.addView(controller.getRootView(), ViewGroup.LayoutParams.MATCH_PARENT,
|
mBrightnessMirror.addView(controller.getRootView(), ViewGroup.LayoutParams.MATCH_PARENT,
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ import com.android.systemui.qs.customize.QSCustomizerController;
|
|||||||
import com.android.systemui.qs.logging.QSLogger;
|
import com.android.systemui.qs.logging.QSLogger;
|
||||||
import com.android.systemui.qs.tileimpl.QSTileImpl;
|
import com.android.systemui.qs.tileimpl.QSTileImpl;
|
||||||
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.BrightnessSliderController;
|
||||||
import com.android.systemui.settings.brightness.ToggleSlider;
|
import com.android.systemui.settings.brightness.ToggleSlider;
|
||||||
import com.android.systemui.statusbar.CommandQueue;
|
import com.android.systemui.statusbar.CommandQueue;
|
||||||
import com.android.systemui.tuner.TunerService;
|
import com.android.systemui.tuner.TunerService;
|
||||||
@@ -88,9 +88,9 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
|||||||
@Mock
|
@Mock
|
||||||
private BrightnessController mBrightnessController;
|
private BrightnessController mBrightnessController;
|
||||||
@Mock
|
@Mock
|
||||||
private BrightnessSlider.Factory mToggleSliderViewControllerFactory;
|
private BrightnessSliderController.Factory mToggleSliderViewControllerFactory;
|
||||||
@Mock
|
@Mock
|
||||||
private BrightnessSlider mBrightnessSlider;
|
private BrightnessSliderController mBrightnessSliderController;
|
||||||
@Mock
|
@Mock
|
||||||
QSTileImpl mQSTile;
|
QSTileImpl mQSTile;
|
||||||
@Mock
|
@Mock
|
||||||
@@ -120,7 +120,7 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
|||||||
when(mQSTileHost.getTiles()).thenReturn(Collections.singleton(mQSTile));
|
when(mQSTileHost.getTiles()).thenReturn(Collections.singleton(mQSTile));
|
||||||
when(mQSTileHost.createTileView(any(), eq(mQSTile), anyBoolean())).thenReturn(mQSTileView);
|
when(mQSTileHost.createTileView(any(), eq(mQSTile), anyBoolean())).thenReturn(mQSTileView);
|
||||||
when(mToggleSliderViewControllerFactory.create(any(), any()))
|
when(mToggleSliderViewControllerFactory.create(any(), any()))
|
||||||
.thenReturn(mBrightnessSlider);
|
.thenReturn(mBrightnessSliderController);
|
||||||
when(mBrightnessControllerFactory.create(any(ToggleSlider.class)))
|
when(mBrightnessControllerFactory.create(any(ToggleSlider.class)))
|
||||||
.thenReturn(mBrightnessController);
|
.thenReturn(mBrightnessController);
|
||||||
when(mQSTileRevealControllerFactory.create(any(), any()))
|
when(mQSTileRevealControllerFactory.create(any(), any()))
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ import org.mockito.Mockito.`when` as whenever
|
|||||||
|
|
||||||
@SmallTest
|
@SmallTest
|
||||||
@RunWith(AndroidTestingRunner::class)
|
@RunWith(AndroidTestingRunner::class)
|
||||||
class BrightnessSliderTest : SysuiTestCase() {
|
class BrightnessSliderControllerTest : SysuiTestCase() {
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private lateinit var brightnessSliderView: BrightnessSliderView
|
private lateinit var brightnessSliderView: BrightnessSliderView
|
||||||
@@ -66,7 +66,7 @@ class BrightnessSliderTest : SysuiTestCase() {
|
|||||||
private lateinit var seekBar: SeekBar
|
private lateinit var seekBar: SeekBar
|
||||||
private var mFalsingManager: FalsingManagerFake = FalsingManagerFake()
|
private var mFalsingManager: FalsingManagerFake = FalsingManagerFake()
|
||||||
|
|
||||||
private lateinit var mController: BrightnessSlider
|
private lateinit var mController: BrightnessSliderController
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
fun setUp() {
|
fun setUp() {
|
||||||
@@ -75,7 +75,7 @@ class BrightnessSliderTest : SysuiTestCase() {
|
|||||||
whenever(mirrorController.toggleSlider).thenReturn(mirror)
|
whenever(mirrorController.toggleSlider).thenReturn(mirror)
|
||||||
whenever(motionEvent.copy()).thenReturn(motionEvent)
|
whenever(motionEvent.copy()).thenReturn(motionEvent)
|
||||||
|
|
||||||
mController = BrightnessSlider(brightnessSliderView, mFalsingManager)
|
mController = BrightnessSliderController(brightnessSliderView, mFalsingManager)
|
||||||
mController.init()
|
mController.init()
|
||||||
mController.setOnChangedListener(listener)
|
mController.setOnChangedListener(listener)
|
||||||
}
|
}
|
||||||
@@ -96,7 +96,7 @@ import com.android.systemui.plugins.ActivityStarter.OnDismissAction;
|
|||||||
import com.android.systemui.plugins.PluginDependencyProvider;
|
import com.android.systemui.plugins.PluginDependencyProvider;
|
||||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||||
import com.android.systemui.recents.ScreenPinningRequest;
|
import com.android.systemui.recents.ScreenPinningRequest;
|
||||||
import com.android.systemui.settings.brightness.BrightnessSlider;
|
import com.android.systemui.settings.brightness.BrightnessSliderController;
|
||||||
import com.android.systemui.shared.plugins.PluginManager;
|
import com.android.systemui.shared.plugins.PluginManager;
|
||||||
import com.android.systemui.statusbar.CommandQueue;
|
import com.android.systemui.statusbar.CommandQueue;
|
||||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||||
@@ -257,7 +257,7 @@ public class StatusBarTest extends SysuiTestCase {
|
|||||||
@Mock private PhoneStatusBarPolicy mPhoneStatusBarPolicy;
|
@Mock private PhoneStatusBarPolicy mPhoneStatusBarPolicy;
|
||||||
@Mock private DemoModeController mDemoModeController;
|
@Mock private DemoModeController mDemoModeController;
|
||||||
@Mock private Lazy<NotificationShadeDepthController> mNotificationShadeDepthControllerLazy;
|
@Mock private Lazy<NotificationShadeDepthController> mNotificationShadeDepthControllerLazy;
|
||||||
@Mock private BrightnessSlider.Factory mBrightnessSliderFactory;
|
@Mock private BrightnessSliderController.Factory mBrightnessSliderFactory;
|
||||||
@Mock private UnfoldTransitionConfig mUnfoldTransitionConfig;
|
@Mock private UnfoldTransitionConfig mUnfoldTransitionConfig;
|
||||||
@Mock private Lazy<UnfoldLightRevealOverlayAnimation> mUnfoldLightRevealOverlayAnimationLazy;
|
@Mock private Lazy<UnfoldLightRevealOverlayAnimation> mUnfoldLightRevealOverlayAnimationLazy;
|
||||||
@Mock private Lazy<NaturalRotationUnfoldProgressProvider> mNaturalRotationProgressProvider;
|
@Mock private Lazy<NaturalRotationUnfoldProgressProvider> mNaturalRotationProgressProvider;
|
||||||
|
|||||||
Reference in New Issue
Block a user