Merge "Making multiuser button work in collapsed QS in split shade" into sc-v2-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
45a1fc002e
@@ -36,7 +36,7 @@ class FooterActionsControllerBuilder @Inject constructor(
|
|||||||
private val activityStarter: ActivityStarter,
|
private val activityStarter: ActivityStarter,
|
||||||
private val userManager: UserManager,
|
private val userManager: UserManager,
|
||||||
private val userInfoController: UserInfoController,
|
private val userInfoController: UserInfoController,
|
||||||
private val multiUserSwitchController: MultiUserSwitchController,
|
private val multiUserSwitchControllerFactory: MultiUserSwitchController.Factory,
|
||||||
private val deviceProvisionedController: DeviceProvisionedController,
|
private val deviceProvisionedController: DeviceProvisionedController,
|
||||||
private val falsingManager: FalsingManager,
|
private val falsingManager: FalsingManager,
|
||||||
private val metricsLogger: MetricsLogger,
|
private val metricsLogger: MetricsLogger,
|
||||||
@@ -60,8 +60,8 @@ class FooterActionsControllerBuilder @Inject constructor(
|
|||||||
|
|
||||||
fun build(): FooterActionsController {
|
fun build(): FooterActionsController {
|
||||||
return FooterActionsController(view, qsPanelController, activityStarter, userManager,
|
return FooterActionsController(view, qsPanelController, activityStarter, userManager,
|
||||||
userInfoController, multiUserSwitchController, deviceProvisionedController,
|
userInfoController, multiUserSwitchControllerFactory.create(view),
|
||||||
falsingManager, metricsLogger, tunerService, globalActionsDialog, uiEventLogger,
|
deviceProvisionedController, falsingManager, metricsLogger, tunerService,
|
||||||
showPMLiteButton, buttonsVisibleState)
|
globalActionsDialog, uiEventLogger, showPMLiteButton, buttonsVisibleState)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -42,6 +42,7 @@ 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.BrightnessSlider;
|
||||||
|
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;
|
||||||
|
|
||||||
@@ -60,6 +61,7 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
private final QSCustomizerController mQsCustomizerController;
|
private final QSCustomizerController mQsCustomizerController;
|
||||||
private final QSTileRevealController.Factory mQsTileRevealControllerFactory;
|
private final QSTileRevealController.Factory mQsTileRevealControllerFactory;
|
||||||
private final FalsingManager mFalsingManager;
|
private final FalsingManager mFalsingManager;
|
||||||
|
private final CommandQueue mCommandQueue;
|
||||||
private final BrightnessController mBrightnessController;
|
private final BrightnessController mBrightnessController;
|
||||||
private final BrightnessSlider mBrightnessSlider;
|
private final BrightnessSlider mBrightnessSlider;
|
||||||
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
private final BrightnessMirrorHandler mBrightnessMirrorHandler;
|
||||||
@@ -97,7 +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) {
|
BrightnessSlider.Factory brightnessSliderFactory, 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;
|
||||||
@@ -105,6 +108,7 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
mQsCustomizerController = qsCustomizerController;
|
mQsCustomizerController = qsCustomizerController;
|
||||||
mQsTileRevealControllerFactory = qsTileRevealControllerFactory;
|
mQsTileRevealControllerFactory = qsTileRevealControllerFactory;
|
||||||
mFalsingManager = falsingManager;
|
mFalsingManager = falsingManager;
|
||||||
|
mCommandQueue = commandQueue;
|
||||||
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
mQsSecurityFooter.setHostEnvironment(qstileHost);
|
||||||
|
|
||||||
mBrightnessSlider = brightnessSliderFactory.create(getContext(), mView);
|
mBrightnessSlider = brightnessSliderFactory.create(getContext(), mView);
|
||||||
@@ -274,6 +278,14 @@ public class QSPanelController extends QSPanelControllerBase<QSPanel> {
|
|||||||
|
|
||||||
/** */
|
/** */
|
||||||
public void showDetailAdapter(DetailAdapter detailAdapter, int x, int y) {
|
public void showDetailAdapter(DetailAdapter detailAdapter, int x, int y) {
|
||||||
|
// TODO(b/199296365)
|
||||||
|
// Workaround for opening detail from QQS, when there might not be enough space to
|
||||||
|
// display e.g. in case of multiuser detail from split shade. Currently showing detail works
|
||||||
|
// only for QS (mView below) and that's why expanding panel (thus showing QS instead of QQS)
|
||||||
|
// makes it displayed correctly.
|
||||||
|
if (!isExpanded()) {
|
||||||
|
mCommandQueue.animateExpandSettingsPanel(null);
|
||||||
|
}
|
||||||
mView.showDetailAdapter(true, detailAdapter, new int[]{x, y});
|
mView.showDetailAdapter(true, detailAdapter, new int[]{x, y});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -39,7 +39,6 @@ import com.android.systemui.qs.QSPanel;
|
|||||||
import com.android.systemui.qs.QuickQSPanel;
|
import com.android.systemui.qs.QuickQSPanel;
|
||||||
import com.android.systemui.qs.QuickStatusBarHeader;
|
import com.android.systemui.qs.QuickStatusBarHeader;
|
||||||
import com.android.systemui.qs.customize.QSCustomizer;
|
import com.android.systemui.qs.customize.QSCustomizer;
|
||||||
import com.android.systemui.statusbar.phone.MultiUserSwitch;
|
|
||||||
|
|
||||||
import javax.inject.Named;
|
import javax.inject.Named;
|
||||||
|
|
||||||
@@ -80,12 +79,6 @@ public interface QSFragmentModule {
|
|||||||
return qsFragment.getView();
|
return qsFragment.getView();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** */
|
|
||||||
@Provides
|
|
||||||
static MultiUserSwitch providesMultiUserSWitch(QSFooterView qsFooterView) {
|
|
||||||
return qsFooterView.findViewById(R.id.multi_user_switch);
|
|
||||||
}
|
|
||||||
|
|
||||||
/** */
|
/** */
|
||||||
@Provides
|
@Provides
|
||||||
static QSPanel provideQSPanel(@RootView View view) {
|
static QSPanel provideQSPanel(@RootView View view) {
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ import android.view.ViewGroup;
|
|||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.plugins.FalsingManager;
|
import com.android.systemui.plugins.FalsingManager;
|
||||||
import com.android.systemui.plugins.qs.DetailAdapter;
|
import com.android.systemui.plugins.qs.DetailAdapter;
|
||||||
|
import com.android.systemui.qs.FooterActionsView;
|
||||||
import com.android.systemui.qs.QSDetailDisplayer;
|
import com.android.systemui.qs.QSDetailDisplayer;
|
||||||
import com.android.systemui.qs.dagger.QSScope;
|
import com.android.systemui.qs.dagger.QSScope;
|
||||||
import com.android.systemui.statusbar.policy.UserSwitcherController;
|
import com.android.systemui.statusbar.policy.UserSwitcherController;
|
||||||
@@ -33,7 +34,6 @@ import com.android.systemui.util.ViewController;
|
|||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
/** View Controller for {@link MultiUserSwitch}. */
|
/** View Controller for {@link MultiUserSwitch}. */
|
||||||
@QSScope
|
|
||||||
public class MultiUserSwitchController extends ViewController<MultiUserSwitch> {
|
public class MultiUserSwitchController extends ViewController<MultiUserSwitch> {
|
||||||
private final UserManager mUserManager;
|
private final UserManager mUserManager;
|
||||||
private final UserSwitcherController mUserSwitcherController;
|
private final UserSwitcherController mUserSwitcherController;
|
||||||
@@ -60,8 +60,30 @@ public class MultiUserSwitchController extends ViewController<MultiUserSwitch> {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@Inject
|
@QSScope
|
||||||
public MultiUserSwitchController(MultiUserSwitch view, UserManager userManager,
|
public static class Factory {
|
||||||
|
private final UserManager mUserManager;
|
||||||
|
private final UserSwitcherController mUserSwitcherController;
|
||||||
|
private final QSDetailDisplayer mQsDetailDisplayer;
|
||||||
|
private final FalsingManager mFalsingManager;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
public Factory(UserManager userManager, UserSwitcherController userSwitcherController,
|
||||||
|
QSDetailDisplayer qsDetailDisplayer, FalsingManager falsingManager) {
|
||||||
|
mUserManager = userManager;
|
||||||
|
mUserSwitcherController = userSwitcherController;
|
||||||
|
mQsDetailDisplayer = qsDetailDisplayer;
|
||||||
|
mFalsingManager = falsingManager;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MultiUserSwitchController create(FooterActionsView view) {
|
||||||
|
return new MultiUserSwitchController(view.findViewById(R.id.multi_user_switch),
|
||||||
|
mUserManager, mUserSwitcherController, mQsDetailDisplayer,
|
||||||
|
mFalsingManager);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private MultiUserSwitchController(MultiUserSwitch view, UserManager userManager,
|
||||||
UserSwitcherController userSwitcherController, QSDetailDisplayer qsDetailDisplayer,
|
UserSwitcherController userSwitcherController, QSDetailDisplayer qsDetailDisplayer,
|
||||||
FalsingManager falsingManager) {
|
FalsingManager falsingManager) {
|
||||||
super(view);
|
super(view);
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ 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.BrightnessSlider;
|
||||||
import com.android.systemui.settings.brightness.ToggleSlider;
|
import com.android.systemui.settings.brightness.ToggleSlider;
|
||||||
|
import com.android.systemui.statusbar.CommandQueue;
|
||||||
import com.android.systemui.tuner.TunerService;
|
import com.android.systemui.tuner.TunerService;
|
||||||
import com.android.systemui.util.animation.DisappearParameters;
|
import com.android.systemui.util.animation.DisappearParameters;
|
||||||
|
|
||||||
@@ -94,6 +95,8 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
|||||||
QSTileView mQSTileView;
|
QSTileView mQSTileView;
|
||||||
@Mock
|
@Mock
|
||||||
PagedTileLayout mPagedTileLayout;
|
PagedTileLayout mPagedTileLayout;
|
||||||
|
@Mock
|
||||||
|
CommandQueue mCommandQueue;
|
||||||
FalsingManagerFake mFalsingManager = new FalsingManagerFake();
|
FalsingManagerFake mFalsingManager = new FalsingManagerFake();
|
||||||
|
|
||||||
private QSPanelController mController;
|
private QSPanelController mController;
|
||||||
@@ -121,7 +124,7 @@ public class QSPanelControllerTest extends SysuiTestCase {
|
|||||||
mQSTileHost, mQSCustomizerController, true, mMediaHost,
|
mQSTileHost, mQSCustomizerController, true, mMediaHost,
|
||||||
mQSTileRevealControllerFactory, mDumpManager, mMetricsLogger, mUiEventLogger,
|
mQSTileRevealControllerFactory, mDumpManager, mMetricsLogger, mUiEventLogger,
|
||||||
mQSLogger, mBrightnessControllerFactory, mToggleSliderViewControllerFactory,
|
mQSLogger, mBrightnessControllerFactory, mToggleSliderViewControllerFactory,
|
||||||
mFalsingManager
|
mFalsingManager, mCommandQueue
|
||||||
);
|
);
|
||||||
|
|
||||||
mController.init();
|
mController.init();
|
||||||
|
|||||||
Reference in New Issue
Block a user