diff options
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 | 226 |
1 files changed, 167 insertions, 59 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 adff973..7df8346 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -17,14 +17,11 @@ package com.android.systemui.statusbar.phone; -import static com.android.systemui.settings.BrightnessController.BRIGHTNESS_ADJ_RESOLUTION; - import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.annotation.NonNull; import android.app.ActivityManager; import android.app.ActivityManagerNative; -import android.app.ActivityOptions; import android.app.IActivityManager; import android.app.Notification; import android.app.PendingIntent; @@ -103,13 +100,13 @@ import android.view.ViewGroup.LayoutParams; import android.view.ViewStub; import android.view.ViewTreeObserver; import android.view.WindowManager; -import android.view.WindowManagerGlobal; import android.view.accessibility.AccessibilityEvent; import android.view.animation.AccelerateDecelerateInterpolator; import android.view.animation.AccelerateInterpolator; import android.view.animation.Interpolator; import android.view.animation.LinearInterpolator; import android.view.animation.PathInterpolator; +import android.widget.AdapterView; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.TextView; @@ -136,10 +133,7 @@ import com.android.systemui.doze.DozeHost; import com.android.systemui.doze.DozeLog; import com.android.systemui.keyguard.KeyguardViewMediator; import com.android.systemui.qs.QSDragPanel; -import com.android.systemui.qs.QSPanel; -import com.android.systemui.qs.QSTile; import com.android.systemui.recents.ScreenPinningRequest; -import com.android.systemui.settings.BrightnessController; import com.android.systemui.statusbar.ActivatableNotificationView; import com.android.systemui.statusbar.BackDropView; import com.android.systemui.statusbar.BaseStatusBar; @@ -150,6 +144,7 @@ import com.android.systemui.statusbar.EmptyShadeView; import com.android.systemui.statusbar.ExpandableNotificationRow; import com.android.systemui.statusbar.GestureRecorder; import com.android.systemui.statusbar.KeyguardIndicationController; +import com.android.systemui.statusbar.MediaExpandableNotificationRow; import com.android.systemui.statusbar.NotificationData; import com.android.systemui.statusbar.NotificationData.Entry; import com.android.systemui.statusbar.NotificationOverflowContainer; @@ -173,6 +168,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; @@ -321,6 +317,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, WeatherControllerImpl mWeatherController; SuControllerImpl mSuController; FingerprintUnlockController mFingerprintUnlockController; + LiveLockScreenController mLiveLockScreenController; int mNaturalBarHeight = -1; @@ -329,7 +326,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, StatusBarWindowView mStatusBarWindow; FrameLayout mStatusBarWindowContent; - PhoneStatusBarView mStatusBarView; + private PhoneStatusBarView mStatusBarView; private int mStatusBarWindowState = WINDOW_STATE_SHOWING; private StatusBarWindowManager mStatusBarWindowManager; private UnlockMethodCache mUnlockMethodCache; @@ -497,6 +494,10 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } } + public void setStatusBarViewVisibility(boolean visible) { + mStatusBarView.setVisibility(visible ? View.VISIBLE : View.INVISIBLE); + } + class DevForceNavbarObserver extends UserContentObserver { DevForceNavbarObserver(Handler handler) { super(handler); @@ -506,14 +507,14 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, protected void observe() { super.observe(); ContentResolver resolver = mContext.getContentResolver(); - resolver.registerContentObserver(CMSettings.Secure.getUriFor( - CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR), false, this, UserHandle.USER_ALL); + resolver.registerContentObserver(CMSettings.Global.getUriFor( + CMSettings.Global.DEV_FORCE_SHOW_NAVBAR), false, this, UserHandle.USER_ALL); } @Override public void update() { - boolean visible = CMSettings.Secure.getIntForUser(mContext.getContentResolver(), - CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1; + boolean visible = CMSettings.Global.getIntForUser(mContext.getContentResolver(), + CMSettings.Global.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1; if (visible) { forceAddNavigationBar(); @@ -539,7 +540,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mNavigationBarView.setDisabledFlags(mDisabled1); mNavigationBarView.setBar(this); - addNavigationBar(); + addNavigationBar(true); // dynamically adding nav bar, reset System UI visibility! } // ensure quick settings is disabled until the current user makes it through the setup wizard @@ -792,6 +793,10 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, private RankingMap mLatestRankingMap; private boolean mNoAnimationOnNextBarModeChange; + public ScrimController getScrimController() { + return mScrimController; + } + @Override public void start() { mDisplay = ((WindowManager)mContext.getSystemService(Context.WINDOW_SERVICE)) @@ -809,7 +814,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mStatusBarWindow = new StatusBarWindowView(mContext, null); mStatusBarWindow.setService(this); - + super.start(); // calls createAndAddWindows() mMediaSessionManager @@ -817,7 +822,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, // TODO: use MediaSessionManager.SessionListener to hook us up to future updates // in session state - addNavigationBar(); + addNavigationBar(false); // Developer options - Force Navigation bar try { @@ -882,9 +887,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, Resources res = context.getResources(); - mScreenWidth = (float) context.getResources().getDisplayMetrics().widthPixels; - mMinBrightness = context.getResources().getInteger( - com.android.internal.R.integer.config_screenBrightnessDim); + mScreenWidth = (float) res.getDisplayMetrics().widthPixels; + mMinBrightness = res.getInteger(com.android.internal.R.integer.config_screenBrightnessDim); updateDisplaySize(); // populates mDisplayMetrics updateResources(null); @@ -920,6 +924,12 @@ 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); + mNotificationPanel.setLiveController(mLiveLockScreenController); + if (mStatusBarWindowManager != null) { + mStatusBarWindowManager.setLiveLockscreenController(mLiveLockScreenController); + } if (mHeadsUpManager == null) { mHeadsUpManager = new HeadsUpManager(context, mStatusBarWindow); @@ -1032,12 +1042,12 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mHeader.setActivityStarter(this); mKeyguardStatusBar = (KeyguardStatusBarView) mStatusBarWindowContent.findViewById(R.id.keyguard_header); mKeyguardStatusView = mStatusBarWindowContent.findViewById(R.id.keyguard_status_view); - mKeyguardBottomArea = - (KeyguardBottomAreaView) mStatusBarWindowContent.findViewById(R.id.keyguard_bottom_area); + mKeyguardBottomArea = mNotificationPanel.getKeyguardBottomArea(); + mKeyguardBottomArea.setActivityStarter(this); mKeyguardBottomArea.setAssistManager(mAssistManager); mKeyguardIndicationController = new KeyguardIndicationController(mContext, - (KeyguardIndicationTextView) mStatusBarWindowContent.findViewById( + (KeyguardIndicationTextView) mKeyguardBottomArea.findViewById( R.id.keyguard_indication_text), mKeyguardBottomArea.getLockIcon()); mKeyguardBottomArea.setKeyguardIndicationController(mKeyguardIndicationController); @@ -1181,7 +1191,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mNetworkController, mZenModeController, mHotspotController, mCastController, mFlashlightController, mUserSwitcherController, mKeyguardMonitor, - mSecurityController); + mSecurityController, mBatteryController); } mQSPanel.setHost(mQSTileHost); if (mBrightnessMirrorController == null) { @@ -1315,10 +1325,11 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } } - mVisualizerView.setKeyguardMonitor(mKeyguardMonitor); mHeader.setNextAlarmController(mNextAlarmController); mHeader.setWeatherController(mWeatherController); + mNotificationPanel.setWeatherController(mWeatherController); + PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); mBroadcastReceiver.onReceive(mContext, new Intent(pm.isScreenOn() ? Intent.ACTION_SCREEN_ON : Intent.ACTION_SCREEN_OFF)); @@ -1490,7 +1501,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, @Override public void run() { boolean isUpdate = mQSPanel.getHost().getCustomTileData() - .get(sbc.getKey()) != null; + .get(sbc.persistableKey()) != null; if (isUpdate) { mQSPanel.getHost().updateCustomTile(sbc); } else { @@ -1506,7 +1517,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mHandler.post(new Runnable() { @Override public void run() { - mQSPanel.getHost().removeCustomTileSysUi(sbc.getKey()); + mQSPanel.getHost().removeCustomTileSysUi(sbc.persistableKey()); } }); } @@ -1568,16 +1579,26 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } } - private void prepareNavigationBarView() { + private void prepareNavigationBarView(boolean forceReset) { mNavigationBarView.reorient(); mNavigationBarView.setListeners(mRecentsClickListener, mRecentsPreloadOnTouchListener, mLongPressBackRecentsListener, mHomeActionListener, mLongPressHomeListener); mAssistManager.onConfigurationChanged(); + if (forceReset) { + // Nav Bar was added dynamically - we need to reset the mSystemUiVisibility and call + // setSystemUiVisibility so that mNavigationBarMode is set to the correct value + int newVal = mSystemUiVisibility; + mSystemUiVisibility = 0; + setSystemUiVisibility(newVal, SYSTEM_UI_VISIBILITY_MASK); + checkBarMode(mNavigationBarMode, + mNavigationBarWindowState, mNavigationBarView.getBarTransitions(), + mNoAnimationOnNextBarModeChange); + } } // For small-screen devices (read: phones) that lack hardware navigation buttons - private void addNavigationBar() { + private void addNavigationBar(boolean forceReset) { if (DEBUG) Log.v(TAG, "addNavigationBar: about to add " + mNavigationBarView); if (mNavigationBarView == null) return; @@ -1588,7 +1609,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return; } - prepareNavigationBarView(); + prepareNavigationBarView(forceReset); mWindowManager.addView(mNavigationBarView, getNavigationBarLayoutParams()); } @@ -1604,7 +1625,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, private void repositionNavigationBar() { if (mNavigationBarView == null || !mNavigationBarView.isAttachedToWindow()) return; - prepareNavigationBarView(); + prepareNavigationBarView(false); mWindowManager.updateViewLayout(mNavigationBarView, getNavigationBarLayoutParams()); } @@ -1966,7 +1987,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } @Override - protected void updateRowStates() { + public void updateRowStates() { super.updateRowStates(); mNotificationPanel.notifyVisibleChildrenChanged(); } @@ -2080,6 +2101,12 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, Log.v(TAG, "DEBUG_MEDIA: insert listener, receive metadata: " + mMediaMetadata); } + if (mediaNotification != null + && mediaNotification.row != null + && mediaNotification.row instanceof MediaExpandableNotificationRow) { + ((MediaExpandableNotificationRow) mediaNotification.row) + .setMediaController(controller); + } if (mediaNotification != null) { mMediaNotificationKey = mediaNotification.notification.getKey(); @@ -2195,7 +2222,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } // apply user lockscreen image - if (backdropBitmap == null && !mNotificationPanel.hasExternalKeyguardView()) { + if (backdropBitmap == null && !mLiveLockScreenController.isShowingLiveLockScreenView()) { backdropBitmap = mKeyguardWallpaper; } @@ -2476,6 +2503,11 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return mMediaNotificationKey; } + @Override + protected MediaController getCurrentMediaController() { + return mMediaController; + } + public boolean isScrimSrcModeEnabled() { return mScrimSrcModeEnabled; } @@ -2938,7 +2970,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, setInteracting(StatusBarManager.WINDOW_STATUS_BAR, true); } } - if (mBrightnessChanged && upOrCancel) { + if (mBrightnessChanged && upOrCancel && !isQsExpanded()) { mBrightnessChanged = false; if (mJustPeeked && mExpandedVisible) { mNotificationPanel.fling(10, false); @@ -3433,6 +3465,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mStatusBarWindowManager = new StatusBarWindowManager(mContext, mKeyguardMonitor); mStatusBarWindowManager.setShowingMedia(mKeyguardShowingMedia); mStatusBarWindowManager.add(mStatusBarWindow, getStatusBarHeight()); + if (mLiveLockScreenController != null) { + mStatusBarWindowManager.setLiveLockscreenController(mLiveLockScreenController); + } } // called by makeStatusbar and also by PhoneStatusBarView @@ -3565,10 +3600,12 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } else if (cyanogenmod.content.Intent.ACTION_SCREEN_CAMERA_GESTURE.equals(action)) { boolean userSetupComplete = Settings.Secure.getInt(mContext.getContentResolver(), Settings.Secure.USER_SETUP_COMPLETE, 0) != 0; - if (!userSetupComplete) { - if (DEBUG) Log.d(TAG, String.format( - "userSetupComplete = %s, ignoring camera launch gesture.", - userSetupComplete)); + if (!userSetupComplete || !isDeviceProvisioned()) { + if (DEBUG) { + Log.d(TAG, String.format("userSetupComplete = $1%s, " + + "deviceProvisioned = $2%s, ignoring camera launch gesture.", + userSetupComplete, isDeviceProvisioned())); + } return; } @@ -3661,6 +3698,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mIconController.updateResources(); mScreenPinningRequest.onConfigurationChanged(); mNetworkController.onConfigurationChanged(); + mStatusBarWindowManager.onConfigurationChanged(newConfig); } @Override @@ -3686,6 +3724,12 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } } + public void hideHeadsUp() { + if (mUseHeadsUp && mHeadsUpManager != null) { + mHeadsUpManager.releaseAllImmediately(); + } + } + private void setControllerUsers() { if (mZenModeController != null) { mZenModeController.setUserId(mCurrentUserId); @@ -3753,7 +3797,11 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, if (mKeyguardIndicationController != null) { mKeyguardIndicationController.cleanup(); } + if (mLiveLockScreenController != null) { + mLiveLockScreenController.cleanup(); + } + mKeyguardBottomArea.cleanup(); mStatusBarWindow.removeContent(mStatusBarWindowContent); mStatusBarWindow.clearDisappearingChildren(); @@ -3836,6 +3884,10 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, if (mState == StatusBarState.KEYGUARD) { // this will make sure the keyguard is showing showKeyguard(); + // make sure to hide the notification icon area and system iconography + // to avoid overlap (CYNGNOS-2253) + mIconController.hideNotificationIconArea(false); + mIconController.hideSystemIconArea(false); } // update mLastThemeChangeTime @@ -3854,7 +3906,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, removeAllViews((ViewGroup) child); } } - parent.removeAllViews(); + + // AdapterView does not support removeAllViews so check before calling + if (!(parent instanceof AdapterView)) parent.removeAllViews(); } /** @@ -4307,8 +4361,16 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mDraggedDownRow = null; } mAssistManager.onLockscreenShown(); - if (mNotificationPanel.hasExternalKeyguardView()) { - mNotificationPanel.getExternalKeyguardView().onKeyguardShowing( + mKeyguardBottomArea.requestFocus(); + try { + WindowManagerGlobal.getWindowManagerService() + .setLiveLockscreenEdgeDetector(false); + } catch (RemoteException e){ + e.printStackTrace(); + } + if (mLiveLockScreenController.isShowingLiveLockScreenView()) { + mLiveLockScreenController.onLiveLockScreenFocusChanged(false); + mLiveLockScreenController.getLiveLockScreenView().onKeyguardShowing( mStatusBarKeyguardViewManager.isScreenTurnedOn()); } } @@ -4461,8 +4523,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; } @@ -4477,6 +4539,10 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return mStatusBarKeyguardViewManager != null && mStatusBarKeyguardViewManager.isSecure(); } + public boolean isKeyguardInputRestricted() { + return mStatusBarKeyguardViewManager != null && mStatusBarKeyguardViewManager.isInputRestricted(); + } + public long calculateGoingToFullShadeDelay() { return mKeyguardFadingAwayDelay + mKeyguardFadingAwayDuration; } @@ -4552,6 +4618,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, mIconPolicy.setKeyguardShowing(false); } mNotificationPanel.setBarState(mState, mKeyguardFadingAway, goingToFullShade); + mLiveLockScreenController.setBarState(mState); updateDozingState(); updatePublicMode(); updateStackScrollerState(goingToFullShade); @@ -4640,24 +4707,28 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return false; } - protected void showBouncer() { - if (!mRecreating && - (mState == StatusBarState.KEYGUARD || mState == StatusBarState.SHADE_LOCKED)) { + public void showBouncer() { + if (!mRecreating && mNotificationPanel.mCanDismissKeyguard + && (mState != StatusBarState.SHADE || mLiveLockScreenController.getLiveLockScreenHasFocus())) { mWaitingForKeyguardExit = mStatusBarKeyguardViewManager.isShowing(); mStatusBarKeyguardViewManager.dismiss(); } } protected void showBouncerOrFocusKeyguardExternalView() { - if (mNotificationPanel.hasExternalKeyguardView() && !isKeyguardShowingMedia() && - mNotificationPanel.isExternalKeyguardViewInteractive()) { + if (mLiveLockScreenController.isShowingLiveLockScreenView() && !isKeyguardShowingMedia() && + mLiveLockScreenController.isLiveLockScreenInteractive()) { focusKeyguardExternalView(); } else { showBouncer(); } } - protected void focusKeyguardExternalView() { + protected void unfocusKeyguardExternalView() { + mStatusBarKeyguardViewManager.setKeyguardExternalViewFocus(false); + } + + public void focusKeyguardExternalView() { mStatusBarView.collapseAllPanels(/*animate=*/ false, false /* delayed*/, 1.0f /* speedUpFactor */); mStatusBarKeyguardViewManager.setKeyguardExternalViewFocus(true); @@ -4701,6 +4772,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, clearNotificationEffects(); } mState = state; + mVisualizerView.setStatusBarState(state); mGroupManager.setStatusBarState(state); mStatusBarWindowManager.setStatusBarState(state); updateDozing(); @@ -4723,12 +4795,33 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } public void onUnlockHintStarted() { - mKeyguardIndicationController.showTransientIndication(R.string.keyguard_unlock); + mKeyguardIndicationController.showTransientIndication(R.string.keyguard_unlock, + mNotificationPanel.shouldShowScreenOnHints() ? + KeyguardIndicationController.IndicationDirection.UP : + KeyguardIndicationController.IndicationDirection.NONE); + } + + public void onLlsHintStarted() { + String llsName = mLiveLockScreenController.getLiveLockScreenName(); + mKeyguardIndicationController.showTransientIndication( + mContext.getString(R.string.swipe_left_hint, llsName), + KeyguardIndicationController.IndicationDirection.LEFT); + } + + public void onExpandHintStarted() { + mKeyguardIndicationController.showTransientIndication(R.string.expand_hint, + KeyguardIndicationController.IndicationDirection.DOWN); + } + + public void onNotificationsHintStarted() { + mKeyguardIndicationController.showTransientIndication(R.string.swipe_right_hint, + KeyguardIndicationController.IndicationDirection.RIGHT); } public void onHintFinished() { // Delay the reset a bit so the user can read the text. mKeyguardIndicationController.hideTransientIndicationDelayed(HINT_RESET_DELAY_MS); + mKeyguardBottomArea.expand(false); } public void onCameraHintStarted(String hint) { @@ -4741,19 +4834,22 @@ 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())) { - showBouncerOrFocusKeyguardExternalView(); + if (!expand && !mUnlockMethodCache.canSkipBouncer()) { + showBouncer(); } - } else if (expand && mStatusBarWindowManager.keyguardExternalViewHasFocus()) { - mStatusBarKeyguardViewManager.setKeyguardExternalViewFocus(false); - setBarState(StatusBarState.KEYGUARD); } } @Override protected int getMaxKeyguardNotifications() { - return mKeyguardMaxNotificationCount; + int max = mKeyguardMaxNotificationCount; + // When an interactive live lockscreen is showing + // we want to limit the number of maximum notifications + // by 1 so there is additional space for the user to dismiss keygard + if (mLiveLockScreenController.isLiveLockScreenInteractive()) { + max--; + } + return max; } public NavigationBarView getNavigationBarView() { @@ -4911,15 +5007,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.onScreenTurnedOn(); } } public void onScreenTurnedOff() { mVisualizerView.setVisible(false); - if (mNotificationPanel.hasExternalKeyguardView()) { - mNotificationPanel.getExternalKeyguardView().onScreenTurnedOff(); + if (mLiveLockScreenController.isShowingLiveLockScreenView()) { + mLiveLockScreenController.onScreenTurnedOff(); } } @@ -5326,6 +5422,14 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return mVisualizerView; } + public boolean isShowingLiveLockScreenView() { + return mLiveLockScreenController.isShowingLiveLockScreenView(); + } + + public void slideNotificationPanelIn() { + mNotificationPanel.slideLockScreenIn(); + } + private final class ShadeUpdates { private final ArraySet<String> mVisibleNotifications = new ArraySet<String>(); private final ArraySet<String> mNewVisibleNotifications = new ArraySet<String>(); @@ -5478,4 +5582,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } } } + + public boolean isAffordanceSwipeInProgress() { + return mNotificationPanel.isAffordanceSwipeInProgress(); + } } |