diff options
author | d34d <clark@cyngn.com> | 2016-03-14 09:56:03 -0700 |
---|---|---|
committer | d34d <clark@cyngn.com> | 2016-03-30 09:57:03 -0700 |
commit | 5d7282dd4ee5efd5beee4dd22b32a1e114336021 (patch) | |
tree | 5b533261585e0f71bbbf5e148d3cfb95c622c171 /packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java | |
parent | 015241cc33e40843064307534eef4cc8b6c22f9a (diff) | |
download | frameworks_base-5d7282dd4ee5efd5beee4dd22b32a1e114336021.zip frameworks_base-5d7282dd4ee5efd5beee4dd22b32a1e114336021.tar.gz frameworks_base-5d7282dd4ee5efd5beee4dd22b32a1e114336021.tar.bz2 |
LLS: Add LiveLockScreenController
LiveLockScreenController uses the new LiveLockScreenManagerService
to coordinate displaying live lock screens.
Change-Id: I1549b4420f5d95bfbe0cc90cb4938efa65f1dfc4
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java | 40 |
1 files changed, 26 insertions, 14 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index 3e04ccc..3189d60 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -174,6 +174,7 @@ import com.android.systemui.statusbar.policy.HotspotControllerImpl; import com.android.systemui.statusbar.policy.KeyButtonView; import com.android.systemui.statusbar.policy.KeyguardMonitor; import com.android.systemui.statusbar.policy.KeyguardUserSwitcher; +import com.android.systemui.statusbar.policy.LiveLockScreenController; import com.android.systemui.statusbar.policy.LocationControllerImpl; import com.android.systemui.statusbar.policy.NetworkController; import com.android.systemui.statusbar.policy.NetworkControllerImpl; @@ -322,6 +323,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, WeatherControllerImpl mWeatherController; SuControllerImpl mSuController; FingerprintUnlockController mFingerprintUnlockController; + LiveLockScreenController mLiveLockScreenController; int mNaturalBarHeight = -1; @@ -921,6 +923,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mNotificationPanel.setBackground(new FastColorDrawable(context.getColor( R.color.notification_panel_solid_background))); } + mLiveLockScreenController = new LiveLockScreenController(mContext, this, + mNotificationPanel); if (mHeadsUpManager == null) { mHeadsUpManager = new HeadsUpManager(context, mStatusBarWindow); @@ -2202,7 +2206,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } // apply user lockscreen image - if (backdropBitmap == null && !mNotificationPanel.hasExternalKeyguardView()) { + if (backdropBitmap == null && !mLiveLockScreenController.isShowingLiveLockScreenView()) { backdropBitmap = mKeyguardWallpaper; } @@ -3765,6 +3769,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, if (mKeyguardIndicationController != null) { mKeyguardIndicationController.cleanup(); } + if (mLiveLockScreenController != null) { + mLiveLockScreenController.cleanup(); + } mStatusBarWindow.removeContent(mStatusBarWindowContent); mStatusBarWindow.clearDisappearingChildren(); @@ -4323,8 +4330,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mDraggedDownRow = null; } mAssistManager.onLockscreenShown(); - if (mNotificationPanel.hasExternalKeyguardView()) { - mNotificationPanel.getExternalKeyguardView().onKeyguardShowing( + if (mLiveLockScreenController.isShowingLiveLockScreenView()) { + mLiveLockScreenController.getLiveLockScreenView().onKeyguardShowing( mStatusBarKeyguardViewManager.isScreenTurnedOn()); } } @@ -4477,8 +4484,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mNotificationPanel.onAffordanceLaunchEnded(); mNotificationPanel.animate().cancel(); mNotificationPanel.setAlpha(1f); - if ( mNotificationPanel.getExternalKeyguardView() != null) { - mNotificationPanel.getExternalKeyguardView().onKeyguardDismissed(); + if (mLiveLockScreenController.isShowingLiveLockScreenView()) { + mLiveLockScreenController.getLiveLockScreenView().onKeyguardDismissed(); } return staying; } @@ -4568,6 +4575,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mIconPolicy.setKeyguardShowing(false); } mNotificationPanel.setBarState(mState, mKeyguardFadingAway, goingToFullShade); + mLiveLockScreenController.setBarState(mState); updateDozingState(); updatePublicMode(); updateStackScrollerState(goingToFullShade); @@ -4656,7 +4664,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return false; } - protected void showBouncer() { + public void showBouncer() { if (!mRecreating && (mState == StatusBarState.KEYGUARD || mState == StatusBarState.SHADE_LOCKED)) { mWaitingForKeyguardExit = mStatusBarKeyguardViewManager.isShowing(); @@ -4665,15 +4673,15 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } protected void showBouncerOrFocusKeyguardExternalView() { - if (mNotificationPanel.hasExternalKeyguardView() && !isKeyguardShowingMedia() && - mNotificationPanel.isExternalKeyguardViewInteractive()) { + if (mLiveLockScreenController.isShowingLiveLockScreenView() && !isKeyguardShowingMedia() && + mLiveLockScreenController.isLiveLockScreenInteractive()) { focusKeyguardExternalView(); } else { showBouncer(); } } - protected void focusKeyguardExternalView() { + public void focusKeyguardExternalView() { mStatusBarView.collapseAllPanels(/*animate=*/ false, false /* delayed*/, 1.0f /* speedUpFactor */); mStatusBarKeyguardViewManager.setKeyguardExternalViewFocus(true); @@ -4758,7 +4766,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, public void onTrackingStopped(boolean expand) { if (mState == StatusBarState.KEYGUARD || mState == StatusBarState.SHADE_LOCKED) { if (!expand && (!mUnlockMethodCache.canSkipBouncer() || - mNotificationPanel.hasExternalKeyguardView())) { + mLiveLockScreenController.isShowingLiveLockScreenView())) { showBouncerOrFocusKeyguardExternalView(); } } else if (expand && mStatusBarWindowManager.keyguardExternalViewHasFocus()) { @@ -4927,15 +4935,15 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mScreenTurningOn = false; mDozeScrimController.onScreenTurnedOn(); mVisualizerView.setVisible(true); - if (mNotificationPanel.hasExternalKeyguardView()) { - mNotificationPanel.getExternalKeyguardView().onScreenTurnedOn(); + if (mLiveLockScreenController.isShowingLiveLockScreenView()) { + mLiveLockScreenController.getLiveLockScreenView().onScreenTurnedOn(); } } public void onScreenTurnedOff() { mVisualizerView.setVisible(false); - if (mNotificationPanel.hasExternalKeyguardView()) { - mNotificationPanel.getExternalKeyguardView().onScreenTurnedOff(); + if (mLiveLockScreenController.isShowingLiveLockScreenView()) { + mLiveLockScreenController.getLiveLockScreenView().onScreenTurnedOff(); } } @@ -5342,6 +5350,10 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return mVisualizerView; } + public boolean isShowingLiveLockScreenView() { + return mLiveLockScreenController.isShowingLiveLockScreenView(); + } + private final class ShadeUpdates { private final ArraySet<String> mVisibleNotifications = new ArraySet<String>(); private final ArraySet<String> mNewVisibleNotifications = new ArraySet<String>(); |