Loading quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +8 −12 Original line number Diff line number Diff line Loading @@ -82,7 +82,6 @@ public class LauncherTaskbarUIController extends TaskbarUIController { }; // Initialized in init. private TaskbarKeyguardController mKeyguardController; private final TaskbarLauncherStateController mTaskbarLauncherStateController = new TaskbarLauncherStateController(); Loading @@ -97,11 +96,12 @@ public class LauncherTaskbarUIController extends TaskbarUIController { mTaskbarLauncherStateController.init(mControllers, mLauncher); mLauncher.setTaskbarUIController(this); mKeyguardController = taskbarControllers.taskbarKeyguardController; onLauncherResumedOrPaused(mLauncher.hasBeenResumed(), true /* fromInit */); onStashedInAppChanged(mLauncher.getDeviceProfile()); mTaskbarLauncherStateController.onChangeScreenState( mControllers.getSharedState().sysuiStateFlags, true /* fromInit */); mLauncher.addOnDeviceProfileChangeListener(mOnDeviceProfileChangeListener); } Loading @@ -119,7 +119,7 @@ public class LauncherTaskbarUIController extends TaskbarUIController { @Override protected boolean isTaskbarTouchable() { return !(mTaskbarLauncherStateController.isAnimatingToLauncher() && mTaskbarLauncherStateController.goingToAlignedLauncherState()); && mTaskbarLauncherStateController.isTaskbarAlignedWithHotseat()); } public void setShouldDelayLauncherStateAnim(boolean shouldDelayLauncherStateAnim) { Loading Loading @@ -167,15 +167,6 @@ public class LauncherTaskbarUIController extends TaskbarUIController { @Nullable private Animator onLauncherResumedOrPaused( boolean isResumed, boolean fromInit, boolean startAnimation, int duration) { if (mKeyguardController.isScreenOff()) { if (!isResumed) { return null; } else { // Resuming implicitly means device unlocked mKeyguardController.setScreenOn(); } } // Launcher is resumed during the swipe-to-overview gesture under shell-transitions, so // avoid updating taskbar state in that situation (when it's non-interactive -- or // "background") to avoid premature animations. Loading Loading @@ -327,6 +318,11 @@ public class LauncherTaskbarUIController extends TaskbarUIController { mTaskbarLauncherStateController.applyState(); } @Override public void onChangeScreenState(int screenState) { mTaskbarLauncherStateController.onChangeScreenState(screenState, false /* fromInit */); } @Override public boolean isIconAlignedWithHotseat() { return mTaskbarLauncherStateController.isIconAlignedWithHotseat(); Loading quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +4 −1 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import static com.android.launcher3.taskbar.TaskbarManager.FLAG_HIDE_NAVBAR_WIND import static com.android.launcher3.testing.shared.ResourceUtils.getBoolByName; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SETTINGS_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_STATE_MASK; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING; import android.animation.AnimatorSet; Loading @@ -56,7 +57,6 @@ import android.view.Gravity; import android.view.RoundedCorner; import android.view.View; import android.view.WindowManager; import android.view.WindowManagerGlobal; import android.widget.FrameLayout; import android.widget.Toast; Loading Loading @@ -579,6 +579,9 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mControllers.taskbarForceVisibleImmersiveController.updateSysuiFlags(systemUiStateFlags); mControllers.voiceInteractionWindowController.setIsVoiceInteractionWindowVisible( (systemUiStateFlags & SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING) != 0, fromInit); mControllers.uiController.onChangeScreenState( systemUiStateFlags & SYSUI_STATE_SCREEN_STATE_MASK); } /** Loading quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java +0 −1 Original line number Diff line number Diff line Loading @@ -209,7 +209,6 @@ public class TaskbarControllers { uiController.onDestroy(); rotationButtonController.onDestroy(); taskbarDragLayerController.onDestroy(); taskbarKeyguardController.onDestroy(); taskbarUnfoldAnimationController.onDestroy(); taskbarViewController.onDestroy(); stashedHandleViewController.onDestroy(); Loading quickstep/src/com/android/launcher3/taskbar/TaskbarKeyguardController.java +23 −34 Original line number Diff line number Diff line package com.android.launcher3.taskbar; import static com.android.launcher3.AbstractFloatingView.TYPE_ALL; import static com.android.systemui.shared.system.QuickStepContract.SCREEN_STATE_OFF; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BACK_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BOUNCER_SHOWING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_DEVICE_DOZING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_OVERVIEW_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_ON; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_STATE_MASK; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED; import android.app.KeyguardManager; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.util.ScreenOnTracker; import com.android.launcher3.util.ScreenOnTracker.ScreenOnListener; import com.android.systemui.shared.system.QuickStepContract; import java.io.PrintWriter; Loading @@ -23,36 +24,35 @@ import java.io.PrintWriter; */ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTaskbarController { private static final int KEYGUARD_SYSUI_FLAGS = SYSUI_STATE_BOUNCER_SHOWING | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING | SYSUI_STATE_DEVICE_DOZING | SYSUI_STATE_OVERVIEW_DISABLED | SYSUI_STATE_HOME_DISABLED | SYSUI_STATE_BACK_DISABLED | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED; private static final int KEYGUARD_SYSUI_FLAGS = SYSUI_STATE_BOUNCER_SHOWING | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING | SYSUI_STATE_DEVICE_DOZING | SYSUI_STATE_OVERVIEW_DISABLED | SYSUI_STATE_HOME_DISABLED | SYSUI_STATE_BACK_DISABLED | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED | SYSUI_STATE_SCREEN_STATE_MASK; private final ScreenOnListener mScreenOnListener; private final TaskbarActivityContext mContext; private int mKeyguardSysuiFlags; private boolean mBouncerShowing; private NavbarButtonsViewController mNavbarButtonsViewController; private final KeyguardManager mKeyguardManager; private boolean mIsScreenOff; public TaskbarKeyguardController(TaskbarActivityContext context) { mContext = context; mScreenOnListener = isOn -> { if (!isOn) { mIsScreenOff = true; AbstractFloatingView.closeOpenViews(mContext, false, TYPE_ALL); } }; mKeyguardManager = mContext.getSystemService(KeyguardManager.class); } public void init(NavbarButtonsViewController navbarButtonUIController) { mNavbarButtonsViewController = navbarButtonUIController; ScreenOnTracker.INSTANCE.get(mContext).addListener(mScreenOnListener); } public void updateStateForSysuiFlags(int systemUiStateFlags) { int interestingKeyguardFlags = systemUiStateFlags & KEYGUARD_SYSUI_FLAGS; if (interestingKeyguardFlags == mKeyguardSysuiFlags) { // No change in keyguard relevant flags return; } mKeyguardSysuiFlags = interestingKeyguardFlags; boolean bouncerShowing = (systemUiStateFlags & SYSUI_STATE_BOUNCER_SHOWING) != 0; boolean keyguardShowing = (systemUiStateFlags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING) != 0; Loading @@ -60,11 +60,6 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas (systemUiStateFlags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED) != 0; boolean dozing = (systemUiStateFlags & SYSUI_STATE_DEVICE_DOZING) != 0; int interestingKeyguardFlags = systemUiStateFlags & KEYGUARD_SYSUI_FLAGS; if (interestingKeyguardFlags == mKeyguardSysuiFlags) { return; } mKeyguardSysuiFlags = interestingKeyguardFlags; mBouncerShowing = bouncerShowing; Loading @@ -72,17 +67,15 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas keyguardOccluded); updateIconsForBouncer(); if (keyguardShowing) { AbstractFloatingView.closeOpenViews(mContext, true, TYPE_ALL); } } boolean screenOffOrTransitioningOff = (systemUiStateFlags & SYSUI_STATE_SCREEN_ON) == 0; boolean closeFloatingViews = keyguardShowing || screenOffOrTransitioningOff; public boolean isScreenOff() { return mIsScreenOff; if (closeFloatingViews) { // animate the closing of the views, unless the screen is already fully turned off. boolean animateViewClosing = (systemUiStateFlags & SYSUI_STATE_SCREEN_STATE_MASK) != SCREEN_STATE_OFF; AbstractFloatingView.closeOpenViews(mContext, animateViewClosing, TYPE_ALL); } public void setScreenOn() { mIsScreenOff = false; } /** Loading @@ -95,9 +88,6 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas mNavbarButtonsViewController.setBackForBouncer(showBackForBouncer); } public void onDestroy() { ScreenOnTracker.INSTANCE.get(mContext).removeListener(mScreenOnListener); } @Override public void dumpLogs(String prefix, PrintWriter pw) { Loading @@ -106,6 +96,5 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas pw.println(prefix + "\tmKeyguardSysuiFlags=" + QuickStepContract.getSystemUiStateString( mKeyguardSysuiFlags)); pw.println(prefix + "\tmBouncerShowing=" + mBouncerShowing); pw.println(prefix + "\tmIsScreenOff=" + mIsScreenOff); } } quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java +131 −61 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +8 −12 Original line number Diff line number Diff line Loading @@ -82,7 +82,6 @@ public class LauncherTaskbarUIController extends TaskbarUIController { }; // Initialized in init. private TaskbarKeyguardController mKeyguardController; private final TaskbarLauncherStateController mTaskbarLauncherStateController = new TaskbarLauncherStateController(); Loading @@ -97,11 +96,12 @@ public class LauncherTaskbarUIController extends TaskbarUIController { mTaskbarLauncherStateController.init(mControllers, mLauncher); mLauncher.setTaskbarUIController(this); mKeyguardController = taskbarControllers.taskbarKeyguardController; onLauncherResumedOrPaused(mLauncher.hasBeenResumed(), true /* fromInit */); onStashedInAppChanged(mLauncher.getDeviceProfile()); mTaskbarLauncherStateController.onChangeScreenState( mControllers.getSharedState().sysuiStateFlags, true /* fromInit */); mLauncher.addOnDeviceProfileChangeListener(mOnDeviceProfileChangeListener); } Loading @@ -119,7 +119,7 @@ public class LauncherTaskbarUIController extends TaskbarUIController { @Override protected boolean isTaskbarTouchable() { return !(mTaskbarLauncherStateController.isAnimatingToLauncher() && mTaskbarLauncherStateController.goingToAlignedLauncherState()); && mTaskbarLauncherStateController.isTaskbarAlignedWithHotseat()); } public void setShouldDelayLauncherStateAnim(boolean shouldDelayLauncherStateAnim) { Loading Loading @@ -167,15 +167,6 @@ public class LauncherTaskbarUIController extends TaskbarUIController { @Nullable private Animator onLauncherResumedOrPaused( boolean isResumed, boolean fromInit, boolean startAnimation, int duration) { if (mKeyguardController.isScreenOff()) { if (!isResumed) { return null; } else { // Resuming implicitly means device unlocked mKeyguardController.setScreenOn(); } } // Launcher is resumed during the swipe-to-overview gesture under shell-transitions, so // avoid updating taskbar state in that situation (when it's non-interactive -- or // "background") to avoid premature animations. Loading Loading @@ -327,6 +318,11 @@ public class LauncherTaskbarUIController extends TaskbarUIController { mTaskbarLauncherStateController.applyState(); } @Override public void onChangeScreenState(int screenState) { mTaskbarLauncherStateController.onChangeScreenState(screenState, false /* fromInit */); } @Override public boolean isIconAlignedWithHotseat() { return mTaskbarLauncherStateController.isIconAlignedWithHotseat(); Loading
quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +4 −1 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import static com.android.launcher3.taskbar.TaskbarManager.FLAG_HIDE_NAVBAR_WIND import static com.android.launcher3.testing.shared.ResourceUtils.getBoolByName; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SETTINGS_EXPANDED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_STATE_MASK; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING; import android.animation.AnimatorSet; Loading @@ -56,7 +57,6 @@ import android.view.Gravity; import android.view.RoundedCorner; import android.view.View; import android.view.WindowManager; import android.view.WindowManagerGlobal; import android.widget.FrameLayout; import android.widget.Toast; Loading Loading @@ -579,6 +579,9 @@ public class TaskbarActivityContext extends BaseTaskbarContext { mControllers.taskbarForceVisibleImmersiveController.updateSysuiFlags(systemUiStateFlags); mControllers.voiceInteractionWindowController.setIsVoiceInteractionWindowVisible( (systemUiStateFlags & SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING) != 0, fromInit); mControllers.uiController.onChangeScreenState( systemUiStateFlags & SYSUI_STATE_SCREEN_STATE_MASK); } /** Loading
quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java +0 −1 Original line number Diff line number Diff line Loading @@ -209,7 +209,6 @@ public class TaskbarControllers { uiController.onDestroy(); rotationButtonController.onDestroy(); taskbarDragLayerController.onDestroy(); taskbarKeyguardController.onDestroy(); taskbarUnfoldAnimationController.onDestroy(); taskbarViewController.onDestroy(); stashedHandleViewController.onDestroy(); Loading
quickstep/src/com/android/launcher3/taskbar/TaskbarKeyguardController.java +23 −34 Original line number Diff line number Diff line package com.android.launcher3.taskbar; import static com.android.launcher3.AbstractFloatingView.TYPE_ALL; import static com.android.systemui.shared.system.QuickStepContract.SCREEN_STATE_OFF; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BACK_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BOUNCER_SHOWING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_DEVICE_DOZING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_OVERVIEW_DISABLED; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_ON; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_SCREEN_STATE_MASK; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING; import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED; import android.app.KeyguardManager; import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.util.ScreenOnTracker; import com.android.launcher3.util.ScreenOnTracker.ScreenOnListener; import com.android.systemui.shared.system.QuickStepContract; import java.io.PrintWriter; Loading @@ -23,36 +24,35 @@ import java.io.PrintWriter; */ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTaskbarController { private static final int KEYGUARD_SYSUI_FLAGS = SYSUI_STATE_BOUNCER_SHOWING | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING | SYSUI_STATE_DEVICE_DOZING | SYSUI_STATE_OVERVIEW_DISABLED | SYSUI_STATE_HOME_DISABLED | SYSUI_STATE_BACK_DISABLED | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED; private static final int KEYGUARD_SYSUI_FLAGS = SYSUI_STATE_BOUNCER_SHOWING | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING | SYSUI_STATE_DEVICE_DOZING | SYSUI_STATE_OVERVIEW_DISABLED | SYSUI_STATE_HOME_DISABLED | SYSUI_STATE_BACK_DISABLED | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED | SYSUI_STATE_SCREEN_STATE_MASK; private final ScreenOnListener mScreenOnListener; private final TaskbarActivityContext mContext; private int mKeyguardSysuiFlags; private boolean mBouncerShowing; private NavbarButtonsViewController mNavbarButtonsViewController; private final KeyguardManager mKeyguardManager; private boolean mIsScreenOff; public TaskbarKeyguardController(TaskbarActivityContext context) { mContext = context; mScreenOnListener = isOn -> { if (!isOn) { mIsScreenOff = true; AbstractFloatingView.closeOpenViews(mContext, false, TYPE_ALL); } }; mKeyguardManager = mContext.getSystemService(KeyguardManager.class); } public void init(NavbarButtonsViewController navbarButtonUIController) { mNavbarButtonsViewController = navbarButtonUIController; ScreenOnTracker.INSTANCE.get(mContext).addListener(mScreenOnListener); } public void updateStateForSysuiFlags(int systemUiStateFlags) { int interestingKeyguardFlags = systemUiStateFlags & KEYGUARD_SYSUI_FLAGS; if (interestingKeyguardFlags == mKeyguardSysuiFlags) { // No change in keyguard relevant flags return; } mKeyguardSysuiFlags = interestingKeyguardFlags; boolean bouncerShowing = (systemUiStateFlags & SYSUI_STATE_BOUNCER_SHOWING) != 0; boolean keyguardShowing = (systemUiStateFlags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING) != 0; Loading @@ -60,11 +60,6 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas (systemUiStateFlags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED) != 0; boolean dozing = (systemUiStateFlags & SYSUI_STATE_DEVICE_DOZING) != 0; int interestingKeyguardFlags = systemUiStateFlags & KEYGUARD_SYSUI_FLAGS; if (interestingKeyguardFlags == mKeyguardSysuiFlags) { return; } mKeyguardSysuiFlags = interestingKeyguardFlags; mBouncerShowing = bouncerShowing; Loading @@ -72,17 +67,15 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas keyguardOccluded); updateIconsForBouncer(); if (keyguardShowing) { AbstractFloatingView.closeOpenViews(mContext, true, TYPE_ALL); } } boolean screenOffOrTransitioningOff = (systemUiStateFlags & SYSUI_STATE_SCREEN_ON) == 0; boolean closeFloatingViews = keyguardShowing || screenOffOrTransitioningOff; public boolean isScreenOff() { return mIsScreenOff; if (closeFloatingViews) { // animate the closing of the views, unless the screen is already fully turned off. boolean animateViewClosing = (systemUiStateFlags & SYSUI_STATE_SCREEN_STATE_MASK) != SCREEN_STATE_OFF; AbstractFloatingView.closeOpenViews(mContext, animateViewClosing, TYPE_ALL); } public void setScreenOn() { mIsScreenOff = false; } /** Loading @@ -95,9 +88,6 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas mNavbarButtonsViewController.setBackForBouncer(showBackForBouncer); } public void onDestroy() { ScreenOnTracker.INSTANCE.get(mContext).removeListener(mScreenOnListener); } @Override public void dumpLogs(String prefix, PrintWriter pw) { Loading @@ -106,6 +96,5 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas pw.println(prefix + "\tmKeyguardSysuiFlags=" + QuickStepContract.getSystemUiStateString( mKeyguardSysuiFlags)); pw.println(prefix + "\tmBouncerShowing=" + mBouncerShowing); pw.println(prefix + "\tmIsScreenOff=" + mIsScreenOff); } }
quickstep/src/com/android/launcher3/taskbar/TaskbarLauncherStateController.java +131 −61 File changed.Preview size limit exceeded, changes collapsed. Show changes