Merge "Make StatusBarStateController available to plugins"
This commit is contained in:
committed by
Android (Google) Code Review
commit
328c096a34
@@ -0,0 +1,98 @@
|
||||
/*
|
||||
* Copyright (C) 2019 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.plugins.statusbar;
|
||||
|
||||
import com.android.systemui.plugins.annotations.DependsOn;
|
||||
import com.android.systemui.plugins.annotations.ProvidesInterface;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
|
||||
|
||||
/**
|
||||
* Sends updates to {@link StateListener}s about changes to the status bar state and dozing state
|
||||
*/
|
||||
@ProvidesInterface(version = StatusBarStateController.VERSION)
|
||||
@DependsOn(target = StatusBarStateController.StateListener.class)
|
||||
public interface StatusBarStateController {
|
||||
int VERSION = 1;
|
||||
|
||||
/**
|
||||
* Current status bar state
|
||||
*/
|
||||
int getState();
|
||||
|
||||
/**
|
||||
* Is device dozing
|
||||
*/
|
||||
boolean isDozing();
|
||||
|
||||
/**
|
||||
* Adds a state listener
|
||||
*/
|
||||
void addCallback(StateListener listener);
|
||||
|
||||
/**
|
||||
* Removes callback from listeners
|
||||
*/
|
||||
void removeCallback(StateListener listener);
|
||||
|
||||
/**
|
||||
* Get amount of doze
|
||||
*/
|
||||
float getDozeAmount();
|
||||
|
||||
/**
|
||||
* Listener for StatusBarState updates
|
||||
*/
|
||||
@ProvidesInterface(version = StateListener.VERSION)
|
||||
public interface StateListener {
|
||||
int VERSION = 1;
|
||||
|
||||
/**
|
||||
* Callback before the new state is applied, for those who need to preempt the change.
|
||||
*/
|
||||
default void onStatePreChange(int oldState, int newState) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback after all listeners have had a chance to update based on the state change
|
||||
*/
|
||||
default void onStatePostChange() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Required callback. Get the new state and do what you will with it. Keep in mind that
|
||||
* other listeners are typically unordered and don't rely on your work being done before
|
||||
* other peers.
|
||||
*
|
||||
* Only called if the state is actually different.
|
||||
*/
|
||||
default void onStateChanged(int newState) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback to be notified when Dozing changes. Dozing is stored separately from state.
|
||||
*/
|
||||
default void onDozingChanged(boolean isDozing) {}
|
||||
|
||||
/**
|
||||
* Callback to be notified when the doze amount changes. Useful for animations.
|
||||
* Note: this will be called for each animation frame. Please be careful to avoid
|
||||
* performance regressions.
|
||||
*/
|
||||
default void onDozeAmountChanged(float linear, float eased) {}
|
||||
}
|
||||
}
|
||||
@@ -15,8 +15,8 @@ import androidx.annotation.VisibleForTesting;
|
||||
import com.android.keyguard.clock.ClockManager;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.plugins.ClockPlugin;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
|
||||
import java.util.TimeZone;
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.plugins.DarkIconDispatcher;
|
||||
import com.android.systemui.plugins.PluginDependencyProvider;
|
||||
import com.android.systemui.plugins.VolumeDialogController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.power.EnhancedEstimates;
|
||||
import com.android.systemui.power.PowerUI;
|
||||
import com.android.systemui.privacy.PrivacyItemController;
|
||||
@@ -55,7 +56,6 @@ import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
|
||||
import com.android.systemui.statusbar.SmartReplyController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.VibratorHelper;
|
||||
import com.android.systemui.statusbar.notification.NotificationAlertingManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
|
||||
@@ -33,6 +33,7 @@ import com.android.systemui.assist.AssistManager;
|
||||
import com.android.systemui.classifier.FalsingManager;
|
||||
import com.android.systemui.fragments.FragmentService;
|
||||
import com.android.systemui.keyguard.DismissCallbackRegistry;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.power.EnhancedEstimates;
|
||||
import com.android.systemui.power.EnhancedEstimatesImpl;
|
||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||
@@ -40,7 +41,7 @@ import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManagerImpl;
|
||||
import com.android.systemui.statusbar.ScrimView;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateControllerImpl;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationInterruptionStateProvider;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationData;
|
||||
@@ -152,6 +153,15 @@ public class SystemUIFactory {
|
||||
return new VolumeDialogComponent(systemUi, context);
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides status bar state controller implementation
|
||||
*/
|
||||
@Singleton
|
||||
@Provides
|
||||
public StatusBarStateController provideStatusBarStateController(Context context) {
|
||||
return new StatusBarStateControllerImpl();
|
||||
}
|
||||
|
||||
@Singleton
|
||||
@Provides
|
||||
public NotificationData.KeyguardEnvironment provideKeyguardEnvironment(Context context) {
|
||||
|
||||
@@ -51,7 +51,7 @@ import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationInterruptionStateProvider;
|
||||
|
||||
@@ -35,9 +35,9 @@ import android.view.accessibility.AccessibilityManager;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.UiOffloadThread;
|
||||
import com.android.systemui.analytics.DataCollector;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.util.AsyncSensorManager;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
|
||||
@@ -51,8 +51,8 @@ import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.keyguard.KeyguardUpdateMonitorCallback;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.policy.NextAlarmController;
|
||||
import com.android.systemui.statusbar.policy.NextAlarmControllerImpl;
|
||||
import com.android.systemui.statusbar.policy.ZenModeController;
|
||||
|
||||
@@ -58,10 +58,10 @@ import com.android.systemui.plugins.qs.DetailAdapter;
|
||||
import com.android.systemui.plugins.qs.QSIconView;
|
||||
import com.android.systemui.plugins.qs.QSTile;
|
||||
import com.android.systemui.plugins.qs.QSTile.State;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.qs.PagedTileLayout.TilePage;
|
||||
import com.android.systemui.qs.QSHost;
|
||||
import com.android.systemui.qs.QuickStatusBarHeader;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
|
||||
@@ -47,7 +47,8 @@ import com.android.settingslib.Utils;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.phone.KeyguardIndicationTextView;
|
||||
import com.android.systemui.statusbar.phone.LockIcon;
|
||||
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||
|
||||
@@ -44,8 +44,9 @@ import com.android.internal.widget.LockPatternUtils;
|
||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.recents.OverviewProxyService;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationUtils;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
|
||||
@@ -47,6 +47,7 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.colorextraction.SysuiColorExtractor;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
|
||||
@@ -26,7 +26,6 @@ import android.graphics.Rect;
|
||||
import android.os.SystemProperties;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.Log;
|
||||
import android.util.MathUtils;
|
||||
import android.view.DisplayCutout;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@@ -38,7 +37,8 @@ import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationUtils;
|
||||
import com.android.systemui.statusbar.notification.row.ActivatableNotificationView;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
@@ -118,8 +118,8 @@ public class NotificationShelf extends ActivatableNotificationView implements
|
||||
@Override
|
||||
protected void onAttachedToWindow() {
|
||||
super.onAttachedToWindow();
|
||||
Dependency.get(StatusBarStateController.class)
|
||||
.addCallback(this, StatusBarStateController.RANK_SHELF);
|
||||
((SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class))
|
||||
.addCallback(this, SysuiStatusBarStateController.RANK_SHELF);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -61,7 +61,7 @@ public class NotificationViewHierarchyManager {
|
||||
protected final NotificationLockscreenUserManager mLockscreenUserManager;
|
||||
protected final NotificationGroupManager mGroupManager;
|
||||
protected final VisualStabilityManager mVisualStabilityManager;
|
||||
private final StatusBarStateController mStatusBarStateController;
|
||||
private final StatusBarStateControllerImpl mStatusBarStateController;
|
||||
private final NotificationEntryManager mEntryManager;
|
||||
|
||||
// Lazy
|
||||
@@ -82,7 +82,7 @@ public class NotificationViewHierarchyManager {
|
||||
NotificationLockscreenUserManager notificationLockscreenUserManager,
|
||||
NotificationGroupManager groupManager,
|
||||
VisualStabilityManager visualStabilityManager,
|
||||
StatusBarStateController statusBarStateController,
|
||||
StatusBarStateControllerImpl statusBarStateController,
|
||||
NotificationEntryManager notificationEntryManager,
|
||||
Lazy<ShadeController> shadeController) {
|
||||
mLockscreenUserManager = notificationLockscreenUserManager;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2014 The Android Open Source Project
|
||||
* Copyright (C) 2019 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.
|
||||
@@ -11,27 +11,22 @@
|
||||
* 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
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.systemui.statusbar;
|
||||
|
||||
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
||||
|
||||
import android.animation.ObjectAnimator;
|
||||
import android.animation.ValueAnimator;
|
||||
import android.annotation.IntDef;
|
||||
import android.util.FloatProperty;
|
||||
import android.view.animation.Interpolator;
|
||||
|
||||
import com.android.internal.annotations.GuardedBy;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.policy.CallbackController;
|
||||
|
||||
import java.lang.annotation.Retention;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
|
||||
@@ -42,24 +37,25 @@ import javax.inject.Singleton;
|
||||
* Tracks and reports on {@link StatusBarState}.
|
||||
*/
|
||||
@Singleton
|
||||
public class StatusBarStateController implements CallbackController<StateListener> {
|
||||
public class StatusBarStateControllerImpl implements SysuiStatusBarStateController,
|
||||
CallbackController<StateListener> {
|
||||
private static final String TAG = "SbStateController";
|
||||
|
||||
private static final int MAX_STATE = StatusBarState.FULLSCREEN_USER_SWITCHER;
|
||||
private static final int MIN_STATE = StatusBarState.SHADE;
|
||||
|
||||
private static final Comparator <RankedListener> mComparator
|
||||
= (o1, o2) -> Integer.compare(o1.rank, o2.rank);
|
||||
private static final FloatProperty<StatusBarStateController> SET_DARK_AMOUNT_PROPERTY =
|
||||
new FloatProperty<StatusBarStateController>("mDozeAmount") {
|
||||
private static final Comparator<RankedListener> sComparator =
|
||||
Comparator.comparingInt(o -> o.mRank);
|
||||
private static final FloatProperty<StatusBarStateControllerImpl> SET_DARK_AMOUNT_PROPERTY =
|
||||
new FloatProperty<StatusBarStateControllerImpl>("mDozeAmount") {
|
||||
|
||||
@Override
|
||||
public void setValue(StatusBarStateController object, float value) {
|
||||
public void setValue(StatusBarStateControllerImpl object, float value) {
|
||||
object.setDozeAmountInternal(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Float get(StatusBarStateController object) {
|
||||
public Float get(StatusBarStateControllerImpl object) {
|
||||
return object.mDozeAmount;
|
||||
}
|
||||
};
|
||||
@@ -95,29 +91,16 @@ public class StatusBarStateController implements CallbackController<StateListene
|
||||
*/
|
||||
private Interpolator mDozeInterpolator = Interpolators.FAST_OUT_SLOW_IN;
|
||||
|
||||
// TODO: b/115739177 (remove this explicit ordering if we can)
|
||||
@Retention(SOURCE)
|
||||
@IntDef({RANK_STATUS_BAR, RANK_STATUS_BAR_WINDOW_CONTROLLER, RANK_STACK_SCROLLER, RANK_SHELF})
|
||||
public @interface SbStateListenerRank {}
|
||||
// This is the set of known dependencies when updating StatusBarState
|
||||
public static final int RANK_STATUS_BAR = 0;
|
||||
public static final int RANK_STATUS_BAR_WINDOW_CONTROLLER = 1;
|
||||
public static final int RANK_STACK_SCROLLER = 2;
|
||||
public static final int RANK_SHELF = 3;
|
||||
|
||||
@Inject
|
||||
public StatusBarStateController() {
|
||||
public StatusBarStateControllerImpl() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getState() {
|
||||
return mState;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the status bar state
|
||||
* @param state see {@link StatusBarState} for valid options
|
||||
* @return {@code true} if the state changed, else {@code false}
|
||||
*/
|
||||
@Override
|
||||
public boolean setState(int state) {
|
||||
if (state > MAX_STATE || state < MIN_STATE) {
|
||||
throw new IllegalArgumentException("Invalid state " + state);
|
||||
@@ -127,40 +110,38 @@ public class StatusBarStateController implements CallbackController<StateListene
|
||||
}
|
||||
synchronized (mListeners) {
|
||||
for (RankedListener rl : new ArrayList<>(mListeners)) {
|
||||
rl.listener.onStatePreChange(mState, state);
|
||||
rl.mListener.onStatePreChange(mState, state);
|
||||
}
|
||||
mLastState = mState;
|
||||
mState = state;
|
||||
for (RankedListener rl : new ArrayList<>(mListeners)) {
|
||||
rl.listener.onStateChanged(mState);
|
||||
rl.mListener.onStateChanged(mState);
|
||||
}
|
||||
|
||||
for (RankedListener rl : new ArrayList<>(mListeners)) {
|
||||
rl.listener.onStatePostChange();
|
||||
rl.mListener.onStatePostChange();
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isDozing() {
|
||||
return mIsDozing;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getDozeAmount() {
|
||||
return mDozeAmount;
|
||||
}
|
||||
|
||||
@Override
|
||||
public float getInterpolatedDozeAmount() {
|
||||
return mDozeInterpolator.getInterpolation(mDozeAmount);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the dozing state from {@link StatusBar}'s perspective
|
||||
* @param isDozing well, are we dozing?
|
||||
* @return {@code true} if the state changed, else {@code false}
|
||||
*/
|
||||
@SuppressWarnings("UnusedReturnValue")
|
||||
@Override
|
||||
public boolean setIsDozing(boolean isDozing) {
|
||||
if (mIsDozing == isDozing) {
|
||||
return false;
|
||||
@@ -170,19 +151,14 @@ public class StatusBarStateController implements CallbackController<StateListene
|
||||
|
||||
synchronized (mListeners) {
|
||||
for (RankedListener rl : new ArrayList<>(mListeners)) {
|
||||
rl.listener.onDozingChanged(isDozing);
|
||||
rl.mListener.onDozingChanged(isDozing);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Changes the current doze amount.
|
||||
*
|
||||
* @param dozeAmount New doze/dark amount.
|
||||
* @param animated If change should be animated or not. This will cancel current animations.
|
||||
*/
|
||||
@Override
|
||||
public void setDozeAmount(float dozeAmount, boolean animated) {
|
||||
if (mDarkAnimator != null && mDarkAnimator.isRunning()) {
|
||||
if (animated && mDozeAmountTarget == dozeAmount) {
|
||||
@@ -217,27 +193,32 @@ public class StatusBarStateController implements CallbackController<StateListene
|
||||
float interpolatedAmount = mDozeInterpolator.getInterpolation(dozeAmount);
|
||||
synchronized (mListeners) {
|
||||
for (RankedListener rl : new ArrayList<>(mListeners)) {
|
||||
rl.listener.onDozeAmountChanged(mDozeAmount, interpolatedAmount);
|
||||
rl.mListener.onDozeAmountChanged(mDozeAmount, interpolatedAmount);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean goingToFullShade() {
|
||||
return mState == StatusBarState.SHADE && mLeaveOpenOnKeyguardHide;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLeaveOpenOnKeyguardHide(boolean leaveOpen) {
|
||||
mLeaveOpenOnKeyguardHide = leaveOpen;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean leaveOpenOnKeyguardHide() {
|
||||
return mLeaveOpenOnKeyguardHide;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean fromShadeLocked() {
|
||||
return mLastState == StatusBarState.SHADE_LOCKED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addCallback(StateListener listener) {
|
||||
synchronized (mListeners) {
|
||||
addListenerInternalLocked(listener, Integer.MAX_VALUE);
|
||||
@@ -254,6 +235,8 @@ public class StatusBarStateController implements CallbackController<StateListene
|
||||
* StatusBarState out of StatusBar.java. Any new listeners should be built not to need ranking
|
||||
* (i.e., they are non-dependent on the order of operations of StatusBarState listeners).
|
||||
*/
|
||||
@Deprecated
|
||||
@Override
|
||||
public void addCallback(StateListener listener, @SbStateListenerRank int rank) {
|
||||
synchronized (mListeners) {
|
||||
addListenerInternalLocked(listener, rank);
|
||||
@@ -264,91 +247,38 @@ public class StatusBarStateController implements CallbackController<StateListene
|
||||
private void addListenerInternalLocked(StateListener listener, int rank) {
|
||||
// Protect against double-subscribe
|
||||
for (RankedListener rl : mListeners) {
|
||||
if (rl.listener.equals(listener)) {
|
||||
if (rl.mListener.equals(listener)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
RankedListener rl = new RankedListener(listener, rank);
|
||||
RankedListener rl = new SysuiStatusBarStateController.RankedListener(listener, rank);
|
||||
mListeners.add(rl);
|
||||
mListeners.sort(mComparator);
|
||||
mListeners.sort(sComparator);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void removeCallback(StateListener listener) {
|
||||
synchronized (mListeners) {
|
||||
mListeners.removeIf((it) -> it.listener.equals(listener));
|
||||
mListeners.removeIf((it) -> it.mListener.equals(listener));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setKeyguardRequested(boolean keyguardRequested) {
|
||||
mKeyguardRequested = keyguardRequested;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isKeyguardRequested() {
|
||||
return mKeyguardRequested;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns String readable state of status bar from {@link StatusBarState}
|
||||
*/
|
||||
public static String describe(int state) {
|
||||
return StatusBarState.toShortString(state);
|
||||
}
|
||||
|
||||
private class RankedListener {
|
||||
private final StateListener listener;
|
||||
private final int rank;
|
||||
|
||||
private RankedListener(StateListener l, int r) {
|
||||
listener = l;
|
||||
rank = r;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Listener for StatusBarState updates
|
||||
*/
|
||||
public interface StateListener {
|
||||
|
||||
/**
|
||||
* Callback before the new state is applied, for those who need to preempt the change.
|
||||
*
|
||||
* @param oldState state before the change
|
||||
* @param newState new state to be applied in {@link #onStateChanged}
|
||||
*/
|
||||
public default void onStatePreChange(int oldState, int newState) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback after all listeners have had a chance to update based on the state change
|
||||
*/
|
||||
public default void onStatePostChange() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Required callback. Get the new state and do what you will with it. Keep in mind that
|
||||
* other listeners are typically unordered and don't rely on your work being done before
|
||||
* other peers.
|
||||
*
|
||||
* Only called if the state is actually different.
|
||||
*
|
||||
* @param newState the new {@link StatusBarState}
|
||||
*/
|
||||
default void onStateChanged(int newState) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback to be notified when Dozing changes. Dozing is stored separately from state.
|
||||
*
|
||||
* @param isDozing {@code true} if dozing according to {@link StatusBar}
|
||||
*/
|
||||
public default void onDozingChanged(boolean isDozing) {}
|
||||
|
||||
/**
|
||||
* Callback to be notified when the doze amount changes. Useful for animations.
|
||||
* Note: this will be called for each animation frame. Please be careful to avoid
|
||||
* performance regressions.
|
||||
*
|
||||
* @param linear A number from 0 to 1, where 1 means that the device is dozing.
|
||||
* @param eased Same as {@code linear} but transformed by an interpolator.
|
||||
*/
|
||||
default void onDozeAmountChanged(float linear, float eased) {}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,126 @@
|
||||
/*
|
||||
* Copyright (C) 2019 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.statusbar;
|
||||
|
||||
import static java.lang.annotation.RetentionPolicy.SOURCE;
|
||||
|
||||
import android.annotation.IntDef;
|
||||
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
|
||||
import java.lang.annotation.Retention;
|
||||
|
||||
/**
|
||||
* Sends updates to {@link StateListener}s about changes to the status bar state and dozing state
|
||||
*/
|
||||
public interface SysuiStatusBarStateController extends StatusBarStateController {
|
||||
|
||||
// TODO: b/115739177 (remove this explicit ordering if we can)
|
||||
@Retention(SOURCE)
|
||||
@IntDef({RANK_STATUS_BAR, RANK_STATUS_BAR_WINDOW_CONTROLLER, RANK_STACK_SCROLLER, RANK_SHELF})
|
||||
@interface SbStateListenerRank {}
|
||||
// This is the set of known dependencies when updating StatusBarState
|
||||
int RANK_STATUS_BAR = 0;
|
||||
int RANK_STATUS_BAR_WINDOW_CONTROLLER = 1;
|
||||
int RANK_STACK_SCROLLER = 2;
|
||||
int RANK_SHELF = 3;
|
||||
|
||||
/**
|
||||
* Add a listener and a rank based on the priority of this message
|
||||
* @param listener the listener
|
||||
* @param rank the order in which you'd like to be called. Ranked listeners will be
|
||||
* notified before unranked, and we will sort ranked listeners from low to high
|
||||
*
|
||||
* @deprecated This method exists only to solve latent inter-dependencies from refactoring
|
||||
* StatusBarState out of StatusBar.java. Any new listeners should be built not to need ranking
|
||||
* (i.e., they are non-dependent on the order of operations of StatusBarState listeners).
|
||||
*/
|
||||
@Deprecated
|
||||
void addCallback(StateListener listener, int rank);
|
||||
|
||||
/**
|
||||
* Update the status bar state
|
||||
* @param state see {@link StatusBarState} for valid options
|
||||
* @return {@code true} if the state changed, else {@code false}
|
||||
*/
|
||||
boolean setState(int state);
|
||||
|
||||
/**
|
||||
* Update the dozing state from {@link StatusBar}'s perspective
|
||||
* @param isDozing well, are we dozing?
|
||||
* @return {@code true} if the state changed, else {@code false}
|
||||
*/
|
||||
boolean setIsDozing(boolean isDozing);
|
||||
|
||||
/**
|
||||
* Changes the current doze amount.
|
||||
*
|
||||
* @param dozeAmount New doze/dark amount.
|
||||
* @param animated If change should be animated or not. This will cancel current animations.
|
||||
*/
|
||||
void setDozeAmount(float dozeAmount, boolean animated);
|
||||
|
||||
/**
|
||||
* Sets whether to leave status bar open when hiding keyguard
|
||||
*/
|
||||
void setLeaveOpenOnKeyguardHide(boolean leaveOpen);
|
||||
|
||||
/**
|
||||
* Whether to leave status bar open when hiding keyguard
|
||||
*/
|
||||
boolean leaveOpenOnKeyguardHide();
|
||||
|
||||
/**
|
||||
* Interpolated doze amount
|
||||
*/
|
||||
float getInterpolatedDozeAmount();
|
||||
|
||||
/**
|
||||
* Whether status bar is going to full shade
|
||||
*/
|
||||
boolean goingToFullShade();
|
||||
|
||||
/**
|
||||
* Whether the previous state of the status bar was the shade locked
|
||||
*/
|
||||
boolean fromShadeLocked();
|
||||
|
||||
/**
|
||||
* Set keyguard requested
|
||||
*/
|
||||
void setKeyguardRequested(boolean keyguardRequested);
|
||||
|
||||
/**
|
||||
* Is keyguard requested
|
||||
*/
|
||||
boolean isKeyguardRequested();
|
||||
|
||||
/**
|
||||
* Listener with rankings SbStateListenerRank that have dependencies so must be updated
|
||||
* in a certain order
|
||||
*/
|
||||
class RankedListener {
|
||||
final StateListener mListener;
|
||||
final int mRank;
|
||||
|
||||
RankedListener(StateListener l, int r) {
|
||||
mListener = l;
|
||||
mRank = r;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -35,8 +35,8 @@ import android.util.Log;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.phone.ShadeController;
|
||||
import com.android.systemui.statusbar.policy.HeadsUpManager;
|
||||
|
||||
@@ -33,9 +33,9 @@ import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.internal.statusbar.IStatusBarService;
|
||||
import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.systemui.UiOffloadThread;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
|
||||
@@ -42,11 +42,11 @@ import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationLifetimeExtender;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationActivityStarter;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.row.NotificationInfo.CheckSaveListener;
|
||||
|
||||
@@ -86,6 +86,8 @@ import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin.MenuItem;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin.OnMenuEventListener;
|
||||
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.DragDownHelper.DragDownCallback;
|
||||
import com.android.systemui.statusbar.EmptyShadeView;
|
||||
@@ -94,8 +96,7 @@ import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.RemoteInputController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.FakeShadowView;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
@@ -664,8 +665,8 @@ public class NotificationStackScrollLayout extends ViewGroup implements ScrollAd
|
||||
@ShadeViewRefactor(RefactorComponent.SHADE_VIEW)
|
||||
protected void onAttachedToWindow() {
|
||||
super.onAttachedToWindow();
|
||||
Dependency.get(StatusBarStateController.class)
|
||||
.addCallback(mStateListener, StatusBarStateController.RANK_STACK_SCROLLER);
|
||||
((SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class))
|
||||
.addCallback(mStateListener, SysuiStatusBarStateController.RANK_STACK_SCROLLER);
|
||||
Dependency.get(ConfigurationController.class).addCallback(this);
|
||||
}
|
||||
|
||||
@@ -5430,7 +5431,8 @@ public class NotificationStackScrollLayout extends ViewGroup implements ScrollAd
|
||||
mHeadsUpAppearanceController.setPublicMode(publicMode);
|
||||
}
|
||||
|
||||
StatusBarStateController state = Dependency.get(StatusBarStateController.class);
|
||||
SysuiStatusBarStateController state = (SysuiStatusBarStateController)
|
||||
Dependency.get(StatusBarStateController.class);
|
||||
setHideSensitive(publicMode, state.goingToFullShade() /* animate */);
|
||||
setDimmed(onKeyguard, state.fromShadeLocked() /* animate */);
|
||||
setExpandingEnabled(!onKeyguard);
|
||||
|
||||
@@ -33,8 +33,8 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysUiServiceProvider;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.phone.StatusBarIconController.DarkIconManager;
|
||||
import com.android.systemui.statusbar.policy.EncryptionHelper;
|
||||
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||
|
||||
@@ -24,8 +24,8 @@ import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.doze.DozeHost;
|
||||
import com.android.systemui.doze.DozeLog;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
|
||||
/**
|
||||
* Controller which handles all the doze animations of the scrims.
|
||||
|
||||
@@ -38,9 +38,9 @@ import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.ScreenDecorations;
|
||||
import com.android.systemui.bubbles.BubbleController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
|
||||
@@ -33,9 +33,9 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.SysUiServiceProvider;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.CommandQueue.Callbacks;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||
|
||||
import java.io.FileDescriptor;
|
||||
|
||||
@@ -85,6 +85,7 @@ import com.android.systemui.SysUiServiceProvider;
|
||||
import com.android.systemui.assist.AssistManager;
|
||||
import com.android.systemui.fragments.FragmentHostManager;
|
||||
import com.android.systemui.fragments.FragmentHostManager.FragmentListener;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.recents.OverviewProxyService;
|
||||
import com.android.systemui.recents.Recents;
|
||||
import com.android.systemui.shared.system.ActivityManagerWrapper;
|
||||
@@ -92,7 +93,6 @@ import com.android.systemui.stackdivider.Divider;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.CommandQueue.Callbacks;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
|
||||
import com.android.systemui.statusbar.phone.ContextualButton.ContextButtonListener;
|
||||
import com.android.systemui.statusbar.policy.AccessibilityManagerWrapper;
|
||||
|
||||
@@ -25,12 +25,12 @@ import android.util.ArrayMap;
|
||||
|
||||
import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.AlertingNotificationManager;
|
||||
import com.android.systemui.statusbar.AmbientPulseManager;
|
||||
import com.android.systemui.statusbar.AmbientPulseManager.OnAmbientChangedListener;
|
||||
import com.android.systemui.statusbar.InflationTask;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
|
||||
@@ -22,11 +22,11 @@ import android.util.ArraySet;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.AmbientPulseManager;
|
||||
import com.android.systemui.statusbar.AmbientPulseManager.OnAmbientChangedListener;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.policy.HeadsUpManager;
|
||||
|
||||
@@ -11,6 +11,9 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.collection.ArrayMap;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.internal.statusbar.StatusBarIcon;
|
||||
import com.android.internal.util.ContrastColorUtil;
|
||||
@@ -19,10 +22,10 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.plugins.DarkIconDispatcher;
|
||||
import com.android.systemui.plugins.DarkIconDispatcher.DarkReceiver;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.StatusBarIconView;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationUtils;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
@@ -31,9 +34,6 @@ import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
|
||||
import java.util.ArrayList;
|
||||
import java.util.function.Function;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.collection.ArrayMap;
|
||||
|
||||
/**
|
||||
* A controller for the space in the status bar to the left of the system icons. This area is
|
||||
* normally reserved for notifications.
|
||||
|
||||
@@ -17,8 +17,7 @@
|
||||
package com.android.systemui.statusbar.phone;
|
||||
|
||||
import static com.android.systemui.SysUiServiceProvider.getComponent;
|
||||
import static com.android.systemui.statusbar.notification.ActivityLaunchAnimator
|
||||
.ExpandAnimationParameters;
|
||||
import static com.android.systemui.statusbar.notification.ActivityLaunchAnimator.ExpandAnimationParameters;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.animation.AnimatorListenerAdapter;
|
||||
@@ -63,6 +62,8 @@ import com.android.systemui.classifier.FalsingManager;
|
||||
import com.android.systemui.fragments.FragmentHostManager;
|
||||
import com.android.systemui.fragments.FragmentHostManager.FragmentListener;
|
||||
import com.android.systemui.plugins.qs.QS;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.qs.QSFragment;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.FlingAnimationUtils;
|
||||
@@ -73,8 +74,6 @@ import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.RemoteInputController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.notification.ActivityLaunchAnimator;
|
||||
import com.android.systemui.statusbar.notification.AnimatableProperty;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
|
||||
@@ -44,9 +44,10 @@ import com.android.systemui.Interpolators;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.classifier.FalsingManager;
|
||||
import com.android.systemui.doze.DozeLog;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.FlingAnimationUtils;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.VibratorHelper;
|
||||
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||
|
||||
@@ -142,8 +143,8 @@ public abstract class PanelView extends FrameLayout {
|
||||
private boolean mIgnoreXTouchSlop;
|
||||
private boolean mExpandLatencyTracking;
|
||||
protected final KeyguardMonitor mKeyguardMonitor = Dependency.get(KeyguardMonitor.class);
|
||||
protected final StatusBarStateController mStatusBarStateController =
|
||||
Dependency.get(StatusBarStateController.class);
|
||||
protected final SysuiStatusBarStateController mStatusBarStateController =
|
||||
(SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class);
|
||||
|
||||
protected void onExpandingFinished() {
|
||||
mBar.onExpandingFinished();
|
||||
|
||||
@@ -163,6 +163,7 @@ import com.android.systemui.plugins.DarkIconDispatcher;
|
||||
import com.android.systemui.plugins.PluginDependencyProvider;
|
||||
import com.android.systemui.plugins.qs.QS;
|
||||
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper.SnoozeOption;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.qs.QSFragment;
|
||||
import com.android.systemui.qs.QSPanel;
|
||||
import com.android.systemui.recents.Recents;
|
||||
@@ -188,7 +189,8 @@ import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
|
||||
import com.android.systemui.statusbar.ScrimView;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateControllerImpl;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.VibratorHelper;
|
||||
import com.android.systemui.statusbar.notification.ActivityLaunchAnimator;
|
||||
import com.android.systemui.statusbar.notification.NotificationActivityStarter;
|
||||
@@ -558,8 +560,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
};
|
||||
private boolean mNoAnimationOnNextBarModeChange;
|
||||
protected FalsingManager mFalsingManager;
|
||||
private final StatusBarStateController
|
||||
mStatusBarStateController = Dependency.get(StatusBarStateController.class);
|
||||
private final SysuiStatusBarStateController mStatusBarStateController =
|
||||
(SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class);
|
||||
|
||||
private final KeyguardUpdateMonitorCallback mUpdateCallback =
|
||||
new KeyguardUpdateMonitorCallback() {
|
||||
@@ -650,7 +652,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
}
|
||||
|
||||
mColorExtractor.addOnColorsChangedListener(this);
|
||||
mStatusBarStateController.addCallback(this, StatusBarStateController.RANK_STATUS_BAR);
|
||||
mStatusBarStateController.addCallback(this,
|
||||
StatusBarStateControllerImpl.RANK_STATUS_BAR);
|
||||
|
||||
mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
|
||||
mDreamManager = IDreamManager.Stub.asInterface(
|
||||
@@ -804,15 +807,17 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
mNotificationLogger.setUpWithContainer(notifListContainer);
|
||||
|
||||
mNotificationIconAreaController = SystemUIFactory.getInstance()
|
||||
.createNotificationIconAreaController(
|
||||
context, this, mStatusBarStateController, mNotificationListener);
|
||||
.createNotificationIconAreaController(context, this,
|
||||
mStatusBarStateController, mNotificationListener);
|
||||
inflateShelf();
|
||||
mNotificationIconAreaController.setupShelf(mNotificationShelf);
|
||||
|
||||
Dependency.get(DarkIconDispatcher.class).addDarkReceiver(mNotificationIconAreaController);
|
||||
// Allow plugins to reference DarkIconDispatcher
|
||||
// Allow plugins to reference DarkIconDispatcher and StatusBarStateController
|
||||
Dependency.get(PluginDependencyProvider.class)
|
||||
.allowPluginDependency(DarkIconDispatcher.class);
|
||||
Dependency.get(PluginDependencyProvider.class)
|
||||
.allowPluginDependency(StatusBarStateController.class);
|
||||
FragmentHostManager.get(mStatusBarWindow)
|
||||
.addTagListener(CollapsedStatusBarFragment.TAG, (tag, fragment) -> {
|
||||
CollapsedStatusBarFragment statusBarFragment =
|
||||
@@ -3370,7 +3375,8 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
// ringing.
|
||||
// Other transitions are covered in handleVisibleToUserChanged().
|
||||
if (mVisible && (newState == StatusBarState.SHADE_LOCKED
|
||||
|| (Dependency.get(StatusBarStateController.class).goingToFullShade()))) {
|
||||
|| (((SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class))
|
||||
.goingToFullShade()))) {
|
||||
clearNotificationEffects();
|
||||
}
|
||||
if (newState == StatusBarState.KEYGUARD) {
|
||||
|
||||
@@ -42,10 +42,11 @@ import com.android.systemui.DejankUtils;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.SystemUIFactory;
|
||||
import com.android.systemui.keyguard.DismissCallbackRegistry;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.RemoteInputController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.phone.KeyguardBouncer.BouncerExpansionCallback;
|
||||
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||
import com.android.systemui.statusbar.policy.KeyguardMonitorImpl;
|
||||
@@ -701,7 +702,8 @@ public class StatusBarKeyguardViewManager implements RemoteInputController.Callb
|
||||
}
|
||||
|
||||
public boolean isGoingToNotificationShade() {
|
||||
return Dependency.get(StatusBarStateController.class).leaveOpenOnKeyguardHide();
|
||||
return ((SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class))
|
||||
.leaveOpenOnKeyguardHide();
|
||||
}
|
||||
|
||||
public boolean isSecure(int userId) {
|
||||
|
||||
@@ -51,13 +51,13 @@ import com.android.systemui.EventLogTags;
|
||||
import com.android.systemui.UiOffloadThread;
|
||||
import com.android.systemui.assist.AssistManager;
|
||||
import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.RemoteInputController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.ActivityLaunchAnimator;
|
||||
import com.android.systemui.statusbar.notification.NotificationActivityStarter;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
|
||||
@@ -48,6 +48,7 @@ import com.android.systemui.InitController;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.plugins.ActivityStarter.OnDismissAction;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.AmbientPulseManager;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
@@ -56,7 +57,7 @@ import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.AboveShelfObserver;
|
||||
import com.android.systemui.statusbar.notification.ActivityLaunchAnimator;
|
||||
import com.android.systemui.statusbar.notification.NotificationAlertingManager;
|
||||
@@ -92,8 +93,8 @@ public class StatusBarNotificationPresenter implements NotificationPresenter,
|
||||
Dependency.get(NotificationViewHierarchyManager.class);
|
||||
private final NotificationLockscreenUserManager mLockscreenUserManager =
|
||||
Dependency.get(NotificationLockscreenUserManager.class);
|
||||
private final StatusBarStateController mStatusBarStateController =
|
||||
Dependency.get(StatusBarStateController.class);
|
||||
private final SysuiStatusBarStateController mStatusBarStateController =
|
||||
(SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class);
|
||||
private final NotificationEntryManager mEntryManager =
|
||||
Dependency.get(NotificationEntryManager.class);
|
||||
private final NotificationRowBinder mNotificationRowBinder =
|
||||
|
||||
@@ -35,13 +35,14 @@ import android.view.ViewParent;
|
||||
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.CommandQueue.Callbacks;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager.Callback;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout;
|
||||
import com.android.systemui.statusbar.policy.KeyguardMonitor;
|
||||
@@ -57,10 +58,10 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks,
|
||||
StatusBarStateController.StateListener {
|
||||
|
||||
private final KeyguardMonitor mKeyguardMonitor = Dependency.get(KeyguardMonitor.class);
|
||||
private final StatusBarStateController mStatusBarStateController
|
||||
= Dependency.get(StatusBarStateController.class);
|
||||
private final NotificationLockscreenUserManager mLockscreenUserManager
|
||||
= Dependency.get(NotificationLockscreenUserManager.class);
|
||||
private final SysuiStatusBarStateController mStatusBarStateController =
|
||||
(SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class);
|
||||
private final NotificationLockscreenUserManager mLockscreenUserManager =
|
||||
Dependency.get(NotificationLockscreenUserManager.class);
|
||||
private final ActivityStarter mActivityStarter = Dependency.get(ActivityStarter.class);
|
||||
private final Context mContext;
|
||||
private View mPendingWorkRemoteInputView;
|
||||
|
||||
@@ -43,10 +43,11 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.Dumpable;
|
||||
import com.android.systemui.colorextraction.SysuiColorExtractor;
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.RemoteInputController.Callback;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateController.StateListener;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||
import com.android.systemui.statusbar.policy.ConfigurationController.ConfigurationListener;
|
||||
|
||||
@@ -98,8 +99,9 @@ public class StatusBarWindowController implements Callback, Dumpable, Configurat
|
||||
mDozeParameters = dozeParameters;
|
||||
mScreenBrightnessDoze = mDozeParameters.getScreenBrightnessDoze();
|
||||
mLpChanged = new WindowManager.LayoutParams();
|
||||
Dependency.get(StatusBarStateController.class).addCallback(
|
||||
mStateListener, StatusBarStateController.RANK_STATUS_BAR_WINDOW_CONTROLLER);
|
||||
((SysuiStatusBarStateController) Dependency.get(StatusBarStateController.class))
|
||||
.addCallback(mStateListener,
|
||||
SysuiStatusBarStateController.RANK_STATUS_BAR_WINDOW_CONTROLLER);
|
||||
Dependency.get(ConfigurationController.class).addCallback(this);
|
||||
}
|
||||
|
||||
|
||||
@@ -59,15 +59,14 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.ExpandHelper;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.classifier.FalsingManager;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.DragDownHelper;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout;
|
||||
|
||||
import java.io.FileDescriptor;
|
||||
import java.io.PrintWriter;
|
||||
|
||||
|
||||
public class StatusBarWindowView extends FrameLayout {
|
||||
public static final String TAG = "StatusBarWindowView";
|
||||
public static final boolean DEBUG = StatusBar.DEBUG;
|
||||
|
||||
@@ -34,7 +34,7 @@ import android.widget.ImageView;
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.AnimatableProperty;
|
||||
import com.android.systemui.statusbar.notification.PropertyAnimator;
|
||||
import com.android.systemui.statusbar.notification.stack.AnimationProperties;
|
||||
|
||||
@@ -42,8 +42,8 @@ import android.widget.TextClock;
|
||||
import com.android.keyguard.clock.ClockManager;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.ClockPlugin;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -44,8 +44,8 @@ import androidx.slice.core.SliceQuery;
|
||||
|
||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -47,10 +47,10 @@ import com.android.internal.logging.MetricsLogger;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.qs.QSTile;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.qs.QSHost;
|
||||
import com.android.systemui.qs.QSTileHost;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
|
||||
@@ -95,7 +95,7 @@ public class NotificationViewHierarchyManagerTest extends SysuiTestCase {
|
||||
|
||||
mViewHierarchyManager = new NotificationViewHierarchyManager(mContext,
|
||||
mLockscreenUserManager, mGroupManager, mVisualStabilityManager,
|
||||
mock(StatusBarStateController.class), mEntryManager,
|
||||
mock(StatusBarStateControllerImpl.class), mEntryManager,
|
||||
() -> mShadeController);
|
||||
Dependency.get(InitController.class).executePostInitTasks();
|
||||
mViewHierarchyManager.setUpWithPresenter(mPresenter, mListContainer);
|
||||
|
||||
@@ -40,7 +40,7 @@ import com.android.systemui.Dependency;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.UiOffloadThread;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateControllerImpl;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationData;
|
||||
@@ -99,7 +99,7 @@ public class NotificationLoggerTest extends SysuiTestCase {
|
||||
mEntry.setRow(mRow);
|
||||
|
||||
mLogger = new TestableNotificationLogger(mListener, Dependency.get(UiOffloadThread.class),
|
||||
mEntryManager, mock(StatusBarStateController.class), mBarService,
|
||||
mEntryManager, mock(StatusBarStateControllerImpl.class), mBarService,
|
||||
mExpansionStateLogger);
|
||||
mLogger.setUpWithContainer(mListContainer);
|
||||
verify(mEntryManager).addNotificationEntryListener(mEntryListenerCaptor.capture());
|
||||
@@ -167,7 +167,7 @@ public class NotificationLoggerTest extends SysuiTestCase {
|
||||
TestableNotificationLogger(NotificationListener notificationListener,
|
||||
UiOffloadThread uiOffloadThread,
|
||||
NotificationEntryManager entryManager,
|
||||
StatusBarStateController statusBarStateController,
|
||||
StatusBarStateControllerImpl statusBarStateController,
|
||||
IStatusBarService barService,
|
||||
ExpansionStateLogger expansionStateLogger) {
|
||||
super(notificationListener, uiOffloadThread, entryManager, statusBarStateController,
|
||||
|
||||
@@ -51,13 +51,13 @@ import com.android.systemui.InitController;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.EmptyShadeView;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.RemoteInputController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationData;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
|
||||
@@ -32,8 +32,8 @@ import android.view.ViewPropertyAnimator;
|
||||
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiBaseFragmentTest;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -20,23 +20,15 @@ import static android.provider.Settings.Secure.NOTIFICATION_NEW_INTERRUPTION_MOD
|
||||
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.reset;
|
||||
import static org.mockito.Mockito.times;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
import android.support.test.filters.SmallTest;
|
||||
import android.testing.AndroidTestingRunner;
|
||||
import android.testing.TestableLooper;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.phone.LightBarTransitionsController.DarkIntensityApplier;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -27,8 +27,9 @@ import android.testing.TestableLooper;
|
||||
|
||||
import com.android.keyguard.KeyguardStatusView;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout;
|
||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||
import com.android.systemui.statusbar.policy.ZenModeController;
|
||||
@@ -46,7 +47,7 @@ import org.mockito.MockitoAnnotations;
|
||||
public class NotificationPanelViewTest extends SysuiTestCase {
|
||||
|
||||
@Mock
|
||||
private StatusBarStateController mStatusBarStateController;
|
||||
private SysuiStatusBarStateController mStatusBarStateController;
|
||||
@Mock
|
||||
private NotificationStackScrollLayout mNotificationStackScrollLayout;
|
||||
@Mock
|
||||
|
||||
@@ -82,6 +82,7 @@ import com.android.systemui.doze.DozeLog;
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator;
|
||||
import com.android.systemui.keyguard.WakefulnessLifecycle;
|
||||
import com.android.systemui.plugins.ActivityStarter.OnDismissAction;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||
import com.android.systemui.statusbar.NavigationBarController;
|
||||
@@ -94,7 +95,7 @@ import com.android.systemui.statusbar.NotificationShelf;
|
||||
import com.android.systemui.statusbar.NotificationViewHierarchyManager;
|
||||
import com.android.systemui.statusbar.RemoteInputController;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.StatusBarStateControllerImpl;
|
||||
import com.android.systemui.statusbar.notification.NotificationAlertingManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
@@ -153,7 +154,7 @@ public class StatusBarTest extends SysuiTestCase {
|
||||
@Mock private NotificationLockscreenUserManager mLockscreenUserManager;
|
||||
@Mock private NotificationRemoteInputManager mRemoteInputManager;
|
||||
@Mock private RemoteInputController mRemoteInputController;
|
||||
@Mock private StatusBarStateController mStatusBarStateController;
|
||||
@Mock private StatusBarStateControllerImpl mStatusBarStateController;
|
||||
@Mock private DeviceProvisionedController mDeviceProvisionedController;
|
||||
@Mock private NotificationPresenter mNotificationPresenter;
|
||||
@Mock
|
||||
|
||||
@@ -28,9 +28,9 @@ import android.view.MotionEvent;
|
||||
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.DragDownHelper;
|
||||
import com.android.systemui.statusbar.StatusBarState;
|
||||
import com.android.systemui.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
Reference in New Issue
Block a user