Loading packages/Keyguard/src/com/android/keyguard/KeyguardViewBase.java +1 −15 Original line number Original line Diff line number Diff line Loading @@ -107,7 +107,6 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa mSecurityContainer.setSecurityCallback(this); mSecurityContainer.setSecurityCallback(this); mSecurityContainer.showPrimarySecurityScreen(false); mSecurityContainer.showPrimarySecurityScreen(false); // mSecurityContainer.updateSecurityViews(false /* not bouncing */); // mSecurityContainer.updateSecurityViews(false /* not bouncing */); setBackButtonEnabled(false); } } /** /** Loading @@ -127,12 +126,6 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa return dismiss(false); return dismiss(false); } } private void setBackButtonEnabled(boolean enabled) { setSystemUiVisibility(enabled ? getSystemUiVisibility() & ~View.STATUS_BAR_DISABLE_BACK : getSystemUiVisibility() | View.STATUS_BAR_DISABLE_BACK); } protected void showBouncer(boolean show) { protected void showBouncer(boolean show) { CharSequence what = getContext().getResources().getText( CharSequence what = getContext().getResources().getText( show ? R.string.keyguard_accessibility_show_bouncer show ? R.string.keyguard_accessibility_show_bouncer Loading @@ -143,8 +136,7 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa public boolean handleBackKey() { public boolean handleBackKey() { if (mSecurityContainer.getCurrentSecuritySelection() == SecurityMode.Account) { if (mSecurityContainer.getCurrentSecuritySelection() == SecurityMode.Account) { // go back to primary screen and re-disable back // go back to primary screen setBackButtonEnabled(false); mSecurityContainer.showPrimarySecurityScreen(false /*turningOff*/); mSecurityContainer.showPrimarySecurityScreen(false /*turningOff*/); return true; return true; } } Loading Loading @@ -207,12 +199,6 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa @Override @Override public void onSecurityModeChanged(SecurityMode securityMode, boolean needsInput) { public void onSecurityModeChanged(SecurityMode securityMode, boolean needsInput) { // Enable or disable the back button based on security mode if (securityMode == SecurityMode.Account && !mLockPatternUtils.isPermanentlyLocked()) { // we're showing account as a backup, provide a way to get back to primary setBackButtonEnabled(true); } if (mViewMediatorCallback != null) { if (mViewMediatorCallback != null) { mViewMediatorCallback.setNeedsInput(needsInput); mViewMediatorCallback.setNeedsInput(needsInput); } } Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -105,6 +105,10 @@ public class KeyguardBouncer { return KeyguardViewMediator.AWAKE_INTERVAL_DEFAULT_MS; return KeyguardViewMediator.AWAKE_INTERVAL_DEFAULT_MS; } } public boolean isShowing() { return mRoot != null && mRoot.getVisibility() == View.VISIBLE; } private void ensureView() { private void ensureView() { if (mRoot == null) { if (mRoot == null) { inflateView(); inflateView(); Loading @@ -128,4 +132,8 @@ public class KeyguardBouncer { mRoot = null; mRoot = null; } } } } public boolean onBackPressed() { return mKeyguardView != null && mKeyguardView.handleBackKey(); } } } packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +9 −0 Original line number Original line Diff line number Diff line Loading @@ -2858,6 +2858,15 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { } } } } public boolean onBackPressed() { if (mOnKeyguard) { return mStatusBarKeyguardViewManager.onBackPressed(); } else { animateCollapsePanels(); return true; } } private void showBouncer() { private void showBouncer() { if (mOnKeyguard) { if (mOnKeyguard) { mStatusBarKeyguardViewManager.dismiss(); mStatusBarKeyguardViewManager.dismiss(); Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +27 −1 Original line number Original line Diff line number Diff line Loading @@ -62,7 +62,6 @@ public class StatusBarKeyguardViewManager { mContext = context; mContext = context; mViewMediatorCallback = callback; mViewMediatorCallback = callback; mLockPatternUtils = lockPatternUtils; mLockPatternUtils = lockPatternUtils; } } public void registerStatusBar(PhoneStatusBar phoneStatusBar, public void registerStatusBar(PhoneStatusBar phoneStatusBar, Loading @@ -83,10 +82,12 @@ public class StatusBarKeyguardViewManager { mStatusBarWindowManager.setKeyguardShowing(true); mStatusBarWindowManager.setKeyguardShowing(true); mPhoneStatusBar.showKeyguard(); mPhoneStatusBar.showKeyguard(); mBouncer.prepare(); mBouncer.prepare(); updateBackButtonState(); } } public void showBouncer() { public void showBouncer() { mBouncer.show(); mBouncer.show(); updateBackButtonState(); } } /** /** Loading @@ -95,6 +96,7 @@ public class StatusBarKeyguardViewManager { public void reset() { public void reset() { mBouncer.reset(); mBouncer.reset(); mPhoneStatusBar.showKeyguard(); mPhoneStatusBar.showKeyguard(); updateBackButtonState(); } } public void onScreenTurnedOff() { public void onScreenTurnedOff() { Loading Loading @@ -165,4 +167,28 @@ public class StatusBarKeyguardViewManager { public boolean isShowing() { public boolean isShowing() { return mShowing; return mShowing; } } /** * Notifies this manager that the back button has been pressed. * * @return whether the back press has been handled */ public boolean onBackPressed() { if (mBouncer.isShowing()) { mBouncer.hide(); mPhoneStatusBar.showKeyguard(); updateBackButtonState(); return true; } return false; } private void updateBackButtonState() { int vis = mContainer.getSystemUiVisibility(); if (mBouncer.isShowing()) { mContainer.setSystemUiVisibility(vis & ~View.STATUS_BAR_DISABLE_BACK); } else { mContainer.setSystemUiVisibility(vis | View.STATUS_BAR_DISABLE_BACK); } } } } packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -79,7 +79,7 @@ public class StatusBarWindowView extends FrameLayout switch (event.getKeyCode()) { switch (event.getKeyCode()) { case KeyEvent.KEYCODE_BACK: case KeyEvent.KEYCODE_BACK: if (!down) { if (!down) { mService.animateCollapsePanels(); mService.onBackPressed(); } } return true; return true; } } Loading Loading
packages/Keyguard/src/com/android/keyguard/KeyguardViewBase.java +1 −15 Original line number Original line Diff line number Diff line Loading @@ -107,7 +107,6 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa mSecurityContainer.setSecurityCallback(this); mSecurityContainer.setSecurityCallback(this); mSecurityContainer.showPrimarySecurityScreen(false); mSecurityContainer.showPrimarySecurityScreen(false); // mSecurityContainer.updateSecurityViews(false /* not bouncing */); // mSecurityContainer.updateSecurityViews(false /* not bouncing */); setBackButtonEnabled(false); } } /** /** Loading @@ -127,12 +126,6 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa return dismiss(false); return dismiss(false); } } private void setBackButtonEnabled(boolean enabled) { setSystemUiVisibility(enabled ? getSystemUiVisibility() & ~View.STATUS_BAR_DISABLE_BACK : getSystemUiVisibility() | View.STATUS_BAR_DISABLE_BACK); } protected void showBouncer(boolean show) { protected void showBouncer(boolean show) { CharSequence what = getContext().getResources().getText( CharSequence what = getContext().getResources().getText( show ? R.string.keyguard_accessibility_show_bouncer show ? R.string.keyguard_accessibility_show_bouncer Loading @@ -143,8 +136,7 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa public boolean handleBackKey() { public boolean handleBackKey() { if (mSecurityContainer.getCurrentSecuritySelection() == SecurityMode.Account) { if (mSecurityContainer.getCurrentSecuritySelection() == SecurityMode.Account) { // go back to primary screen and re-disable back // go back to primary screen setBackButtonEnabled(false); mSecurityContainer.showPrimarySecurityScreen(false /*turningOff*/); mSecurityContainer.showPrimarySecurityScreen(false /*turningOff*/); return true; return true; } } Loading Loading @@ -207,12 +199,6 @@ public abstract class KeyguardViewBase extends FrameLayout implements SecurityCa @Override @Override public void onSecurityModeChanged(SecurityMode securityMode, boolean needsInput) { public void onSecurityModeChanged(SecurityMode securityMode, boolean needsInput) { // Enable or disable the back button based on security mode if (securityMode == SecurityMode.Account && !mLockPatternUtils.isPermanentlyLocked()) { // we're showing account as a backup, provide a way to get back to primary setBackButtonEnabled(true); } if (mViewMediatorCallback != null) { if (mViewMediatorCallback != null) { mViewMediatorCallback.setNeedsInput(needsInput); mViewMediatorCallback.setNeedsInput(needsInput); } } Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -105,6 +105,10 @@ public class KeyguardBouncer { return KeyguardViewMediator.AWAKE_INTERVAL_DEFAULT_MS; return KeyguardViewMediator.AWAKE_INTERVAL_DEFAULT_MS; } } public boolean isShowing() { return mRoot != null && mRoot.getVisibility() == View.VISIBLE; } private void ensureView() { private void ensureView() { if (mRoot == null) { if (mRoot == null) { inflateView(); inflateView(); Loading @@ -128,4 +132,8 @@ public class KeyguardBouncer { mRoot = null; mRoot = null; } } } } public boolean onBackPressed() { return mKeyguardView != null && mKeyguardView.handleBackKey(); } } }
packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +9 −0 Original line number Original line Diff line number Diff line Loading @@ -2858,6 +2858,15 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { } } } } public boolean onBackPressed() { if (mOnKeyguard) { return mStatusBarKeyguardViewManager.onBackPressed(); } else { animateCollapsePanels(); return true; } } private void showBouncer() { private void showBouncer() { if (mOnKeyguard) { if (mOnKeyguard) { mStatusBarKeyguardViewManager.dismiss(); mStatusBarKeyguardViewManager.dismiss(); Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java +27 −1 Original line number Original line Diff line number Diff line Loading @@ -62,7 +62,6 @@ public class StatusBarKeyguardViewManager { mContext = context; mContext = context; mViewMediatorCallback = callback; mViewMediatorCallback = callback; mLockPatternUtils = lockPatternUtils; mLockPatternUtils = lockPatternUtils; } } public void registerStatusBar(PhoneStatusBar phoneStatusBar, public void registerStatusBar(PhoneStatusBar phoneStatusBar, Loading @@ -83,10 +82,12 @@ public class StatusBarKeyguardViewManager { mStatusBarWindowManager.setKeyguardShowing(true); mStatusBarWindowManager.setKeyguardShowing(true); mPhoneStatusBar.showKeyguard(); mPhoneStatusBar.showKeyguard(); mBouncer.prepare(); mBouncer.prepare(); updateBackButtonState(); } } public void showBouncer() { public void showBouncer() { mBouncer.show(); mBouncer.show(); updateBackButtonState(); } } /** /** Loading @@ -95,6 +96,7 @@ public class StatusBarKeyguardViewManager { public void reset() { public void reset() { mBouncer.reset(); mBouncer.reset(); mPhoneStatusBar.showKeyguard(); mPhoneStatusBar.showKeyguard(); updateBackButtonState(); } } public void onScreenTurnedOff() { public void onScreenTurnedOff() { Loading Loading @@ -165,4 +167,28 @@ public class StatusBarKeyguardViewManager { public boolean isShowing() { public boolean isShowing() { return mShowing; return mShowing; } } /** * Notifies this manager that the back button has been pressed. * * @return whether the back press has been handled */ public boolean onBackPressed() { if (mBouncer.isShowing()) { mBouncer.hide(); mPhoneStatusBar.showKeyguard(); updateBackButtonState(); return true; } return false; } private void updateBackButtonState() { int vis = mContainer.getSystemUiVisibility(); if (mBouncer.isShowing()) { mContainer.setSystemUiVisibility(vis & ~View.STATUS_BAR_DISABLE_BACK); } else { mContainer.setSystemUiVisibility(vis | View.STATUS_BAR_DISABLE_BACK); } } } }
packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -79,7 +79,7 @@ public class StatusBarWindowView extends FrameLayout switch (event.getKeyCode()) { switch (event.getKeyCode()) { case KeyEvent.KEYCODE_BACK: case KeyEvent.KEYCODE_BACK: if (!down) { if (!down) { mService.animateCollapsePanels(); mService.onBackPressed(); } } return true; return true; } } Loading