Loading core/java/com/android/internal/widget/LockPatternUtils.java +5 −15 Original line number Original line Diff line number Diff line Loading @@ -110,6 +110,11 @@ public class LockPatternUtils { */ */ public static final String KEYGUARD_SHOW_SECURITY_CHALLENGE = "showsecuritychallenge"; public static final String KEYGUARD_SHOW_SECURITY_CHALLENGE = "showsecuritychallenge"; /** * Tells the keyguard to show the widget with the specified id when the keyguard is created. */ public static final String KEYGUARD_SHOW_APPWIDGET = "showappwidget"; /** /** * Options used to lock the device upon user switch. * Options used to lock the device upon user switch. */ */ Loading Loading @@ -1183,21 +1188,6 @@ public class LockPatternUtils { return true; return true; } } public int getStickyAppWidgetIndex() { return Settings.Secure.getIntForUser( mContentResolver, Settings.Secure.LOCK_SCREEN_STICKY_APPWIDGET, -1, UserHandle.USER_CURRENT); } public void setStickyAppWidgetIndex(int value) { Settings.Secure.putIntForUser(mContentResolver, Settings.Secure.LOCK_SCREEN_STICKY_APPWIDGET, value, UserHandle.USER_CURRENT); } private long getLong(String secureSettingKey, long defaultValue) { private long getLong(String secureSettingKey, long defaultValue) { try { try { return getLockSettings().getLong(secureSettingKey, defaultValue, return getLockSettings().getLong(secureSettingKey, defaultValue, Loading policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java +30 −54 Original line number Original line Diff line number Diff line Loading @@ -37,8 +37,6 @@ import android.os.Looper; import android.os.Parcel; import android.os.Parcel; import android.os.Parcelable; import android.os.Parcelable; import android.os.SystemClock; import android.os.SystemClock; import android.os.SystemProperties; import android.os.UserHandle; import android.os.UserManager; import android.os.UserManager; import android.util.AttributeSet; import android.util.AttributeSet; import android.util.Log; import android.util.Log; Loading Loading @@ -75,6 +73,7 @@ public class KeyguardHostView extends KeyguardViewBase { private boolean mIsVerifyUnlockOnly; private boolean mIsVerifyUnlockOnly; private boolean mEnableFallback; // TODO: This should get the value from KeyguardPatternView private boolean mEnableFallback; // TODO: This should get the value from KeyguardPatternView private SecurityMode mCurrentSecuritySelection = SecurityMode.Invalid; private SecurityMode mCurrentSecuritySelection = SecurityMode.Invalid; private int mAppWidgetToShow; protected Runnable mLaunchRunnable; protected Runnable mLaunchRunnable; Loading @@ -84,7 +83,6 @@ public class KeyguardHostView extends KeyguardViewBase { private KeyguardSecurityModel mSecurityModel; private KeyguardSecurityModel mSecurityModel; private KeyguardViewStateManager mViewStateManager; private KeyguardViewStateManager mViewStateManager; int mLocalStickyWidget = -1; boolean mPersitentStickyWidgetLoaded = false; boolean mPersitentStickyWidgetLoaded = false; private Rect mTempRect = new Rect(); private Rect mTempRect = new Rect(); Loading Loading @@ -768,7 +766,6 @@ public class KeyguardHostView extends KeyguardViewBase { // Once the screen turns off, we no longer consider this to be first boot and we want the // Once the screen turns off, we no longer consider this to be first boot and we want the // biometric unlock to start next time keyguard is shown. // biometric unlock to start next time keyguard is shown. KeyguardUpdateMonitor.getInstance(mContext).setAlternateUnlockEnabled(true); KeyguardUpdateMonitor.getInstance(mContext).setAlternateUnlockEnabled(true); saveStickyWidgetIndex(); checkAppWidgetConsistency(); checkAppWidgetConsistency(); showPrimarySecurityScreen(true); showPrimarySecurityScreen(true); getSecurityView(mCurrentSecuritySelection).onPause(); getSecurityView(mCurrentSecuritySelection).onPause(); Loading Loading @@ -967,7 +964,7 @@ public class KeyguardHostView extends KeyguardViewBase { initializeTransportControl(); initializeTransportControl(); } } private void removeTransportFromWidgetPager() { private boolean removeTransportFromWidgetPager() { int page = getWidgetPosition(R.id.keyguard_transport_control); int page = getWidgetPosition(R.id.keyguard_transport_control); if (page != -1) { if (page != -1) { mAppWidgetContainer.removeWidget(mTransportControl); mAppWidgetContainer.removeWidget(mTransportControl); Loading @@ -976,8 +973,9 @@ public class KeyguardHostView extends KeyguardViewBase { KeyguardHostView.this.addView(mTransportControl); KeyguardHostView.this.addView(mTransportControl); mTransportControl.setVisibility(View.GONE); mTransportControl.setVisibility(View.GONE); mViewStateManager.setTransportState(KeyguardViewStateManager.TRANSPORT_GONE); mViewStateManager.setTransportState(KeyguardViewStateManager.TRANSPORT_GONE); mTransportControl.post(mSwitchPageRunnable); return true; } } return false; } } private void addTransportToWidgetPager() { private void addTransportToWidgetPager() { Loading Loading @@ -1006,9 +1004,10 @@ public class KeyguardHostView extends KeyguardViewBase { mTransportControl.setKeyguardCallback(new TransportCallback() { mTransportControl.setKeyguardCallback(new TransportCallback() { @Override @Override public void onListenerDetached() { public void onListenerDetached() { removeTransportFromWidgetPager(); if (removeTransportFromWidgetPager()) { mTransportControl.post(mSwitchPageRunnable); mTransportControl.post(mSwitchPageRunnable); } } } @Override @Override public void onListenerAttached() { public void onListenerAttached() { Loading Loading @@ -1183,7 +1182,6 @@ public class KeyguardHostView extends KeyguardViewBase { @Override @Override public Parcelable onSaveInstanceState() { public Parcelable onSaveInstanceState() { if (DEBUG) Log.d(TAG, "onSaveInstanceState"); if (DEBUG) Log.d(TAG, "onSaveInstanceState"); saveStickyWidgetIndex(); Parcelable superState = super.onSaveInstanceState(); Parcelable superState = super.onSaveInstanceState(); SavedState ss = new SavedState(superState); SavedState ss = new SavedState(superState); ss.transportState = mViewStateManager.getTransportState(); ss.transportState = mViewStateManager.getTransportState(); Loading @@ -1207,9 +1205,7 @@ public class KeyguardHostView extends KeyguardViewBase { public void onWindowFocusChanged(boolean hasWindowFocus) { public void onWindowFocusChanged(boolean hasWindowFocus) { super.onWindowFocusChanged(hasWindowFocus); super.onWindowFocusChanged(hasWindowFocus); if (DEBUG) Log.d(TAG, "Window is " + (hasWindowFocus ? "focused" : "unfocused")); if (DEBUG) Log.d(TAG, "Window is " + (hasWindowFocus ? "focused" : "unfocused")); if (!hasWindowFocus) { if (hasWindowFocus && mShowSecurityWhenReturn) { saveStickyWidgetIndex(); } else if (mShowSecurityWhenReturn) { SlidingChallengeLayout slider = SlidingChallengeLayout slider = (SlidingChallengeLayout) findViewById(R.id.sliding_layout); (SlidingChallengeLayout) findViewById(R.id.sliding_layout); if (slider != null) { if (slider != null) { Loading Loading @@ -1243,31 +1239,13 @@ public class KeyguardHostView extends KeyguardViewBase { return null; return null; } } private int getStickyWidget() { private boolean isWidgetPage(int pageIndex) { // The first time we query the persistent state. From that point, we use a locally updated View v = mAppWidgetContainer.getChildAt(pageIndex); // notion of the sticky widget page. if (v != null && v instanceof KeyguardWidgetFrame) { if (!mPersitentStickyWidgetLoaded) { KeyguardWidgetFrame kwf = (KeyguardWidgetFrame) v; mLocalStickyWidget = mLockPatternUtils.getStickyAppWidgetIndex(); return kwf.getContentAppWidgetId() != AppWidgetManager.INVALID_APPWIDGET_ID; mPersitentStickyWidgetLoaded = true; } return mLocalStickyWidget; } public void updateStickyWidget(int index) { if (index < 0 || index >= mAppWidgetContainer.getChildCount()) { return; } } if (mAppWidgetContainer.isAddPage(index)) { return false; return; } if (mAppWidgetContainer.isCameraPage(index)) { return; } if (isMusicPage(index)) { return; } mLocalStickyWidget = index; } } boolean isMusicPage(int pageIndex) { boolean isMusicPage(int pageIndex) { Loading @@ -1276,23 +1254,23 @@ public class KeyguardHostView extends KeyguardViewBase { private int getAppropriateWidgetPage(boolean isMusicPlaying) { private int getAppropriateWidgetPage(boolean isMusicPlaying) { // assumes at least one widget (besides camera + add) // assumes at least one widget (besides camera + add) if (mAppWidgetToShow != AppWidgetManager.INVALID_APPWIDGET_ID) { final int childCount = mAppWidgetContainer.getChildCount(); for (int i = 0; i < childCount; i++) { if (mAppWidgetContainer.getWidgetPageAt(i).getContentAppWidgetId() == mAppWidgetToShow) { mAppWidgetToShow = AppWidgetManager.INVALID_APPWIDGET_ID; return i; } } mAppWidgetToShow = AppWidgetManager.INVALID_APPWIDGET_ID; } // if music playing, show transport // if music playing, show transport if (isMusicPlaying) { if (isMusicPlaying) { if (DEBUG) Log.d(TAG, "Music playing, show transport"); if (DEBUG) Log.d(TAG, "Music playing, show transport"); return mAppWidgetContainer.getWidgetPageIndex(mTransportControl); return mAppWidgetContainer.getWidgetPageIndex(mTransportControl); } } // if we have a valid sticky widget, show it int stickyWidgetIndex = getStickyWidget(); if (stickyWidgetIndex > -1 && stickyWidgetIndex < mAppWidgetContainer.getChildCount() && !mAppWidgetContainer.isAddPage(stickyWidgetIndex) && !mAppWidgetContainer.isCameraPage(stickyWidgetIndex)) { if (DEBUG) Log.d(TAG, "Valid sticky widget found, show page " + stickyWidgetIndex); return stickyWidgetIndex; } // else show the right-most widget (except for camera) // else show the right-most widget (except for camera) int rightMost = mAppWidgetContainer.getChildCount() - 1; int rightMost = mAppWidgetContainer.getChildCount() - 1; if (mAppWidgetContainer.isCameraPage(rightMost)) { if (mAppWidgetContainer.isCameraPage(rightMost)) { Loading @@ -1302,13 +1280,6 @@ public class KeyguardHostView extends KeyguardViewBase { return rightMost; return rightMost; } } private void saveStickyWidgetIndex() { if (DEBUG) Log.d(TAG, "saveStickyWidgetIndex: " + mLocalStickyWidget); if (mPersitentStickyWidgetLoaded && mLocalStickyWidget >= 0) { mLockPatternUtils.setStickyAppWidgetIndex(mLocalStickyWidget); } } private void enableUserSelectorIfNecessary() { private void enableUserSelectorIfNecessary() { if (!UserManager.supportsMultipleUsers()) { if (!UserManager.supportsMultipleUsers()) { return; // device doesn't support multi-user mode return; // device doesn't support multi-user mode Loading Loading @@ -1380,6 +1351,11 @@ public class KeyguardHostView extends KeyguardViewBase { mAppWidgetContainer.setCurrentPage(getWidgetPosition(R.id.keyguard_multi_user_selector)); mAppWidgetContainer.setCurrentPage(getWidgetPosition(R.id.keyguard_multi_user_selector)); } } public void goToWidget(int appWidgetId) { mAppWidgetToShow = appWidgetId; mSwitchPageRunnable.run(); } public boolean handleMenuKey() { public boolean handleMenuKey() { // The following enables the MENU key to work for testing automation // The following enables the MENU key to work for testing automation if (shouldEnableMenuKey()) { if (shouldEnableMenuKey()) { Loading policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java +6 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.internal.policy.impl.keyguard; import android.app.Activity; import android.app.Activity; import android.app.ActivityManager; import android.app.ActivityManager; import android.appwidget.AppWidgetManager; import android.content.Context; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.pm.ActivityInfo; import android.content.res.Configuration; import android.content.res.Configuration; Loading Loading @@ -240,6 +241,11 @@ public class KeyguardViewManager { if (options.getBoolean(LockPatternUtils.KEYGUARD_SHOW_SECURITY_CHALLENGE)) { if (options.getBoolean(LockPatternUtils.KEYGUARD_SHOW_SECURITY_CHALLENGE)) { mKeyguardView.showNextSecurityScreenIfPresent(); mKeyguardView.showNextSecurityScreenIfPresent(); } } int widgetToShow = options.getInt(LockPatternUtils.KEYGUARD_SHOW_APPWIDGET, AppWidgetManager.INVALID_APPWIDGET_ID); if (widgetToShow != AppWidgetManager.INVALID_APPWIDGET_ID) { mKeyguardView.goToWidget(widgetToShow); } } } } } Loading policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java +0 −4 Original line number Original line Diff line number Diff line Loading @@ -147,10 +147,6 @@ public class KeyguardViewStateManager implements // We only modify the page state if it is not currently under control by the slider. // We only modify the page state if it is not currently under control by the slider. // This prevents conflicts. // This prevents conflicts. if (mKeyguardHostView != null) { mKeyguardHostView.updateStickyWidget(newPageIndex); } // If the page hasn't switched, don't bother with any of this // If the page hasn't switched, don't bother with any of this if (mCurrentPage == newPageIndex) return; if (mCurrentPage == newPageIndex) return; Loading Loading
core/java/com/android/internal/widget/LockPatternUtils.java +5 −15 Original line number Original line Diff line number Diff line Loading @@ -110,6 +110,11 @@ public class LockPatternUtils { */ */ public static final String KEYGUARD_SHOW_SECURITY_CHALLENGE = "showsecuritychallenge"; public static final String KEYGUARD_SHOW_SECURITY_CHALLENGE = "showsecuritychallenge"; /** * Tells the keyguard to show the widget with the specified id when the keyguard is created. */ public static final String KEYGUARD_SHOW_APPWIDGET = "showappwidget"; /** /** * Options used to lock the device upon user switch. * Options used to lock the device upon user switch. */ */ Loading Loading @@ -1183,21 +1188,6 @@ public class LockPatternUtils { return true; return true; } } public int getStickyAppWidgetIndex() { return Settings.Secure.getIntForUser( mContentResolver, Settings.Secure.LOCK_SCREEN_STICKY_APPWIDGET, -1, UserHandle.USER_CURRENT); } public void setStickyAppWidgetIndex(int value) { Settings.Secure.putIntForUser(mContentResolver, Settings.Secure.LOCK_SCREEN_STICKY_APPWIDGET, value, UserHandle.USER_CURRENT); } private long getLong(String secureSettingKey, long defaultValue) { private long getLong(String secureSettingKey, long defaultValue) { try { try { return getLockSettings().getLong(secureSettingKey, defaultValue, return getLockSettings().getLong(secureSettingKey, defaultValue, Loading
policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java +30 −54 Original line number Original line Diff line number Diff line Loading @@ -37,8 +37,6 @@ import android.os.Looper; import android.os.Parcel; import android.os.Parcel; import android.os.Parcelable; import android.os.Parcelable; import android.os.SystemClock; import android.os.SystemClock; import android.os.SystemProperties; import android.os.UserHandle; import android.os.UserManager; import android.os.UserManager; import android.util.AttributeSet; import android.util.AttributeSet; import android.util.Log; import android.util.Log; Loading Loading @@ -75,6 +73,7 @@ public class KeyguardHostView extends KeyguardViewBase { private boolean mIsVerifyUnlockOnly; private boolean mIsVerifyUnlockOnly; private boolean mEnableFallback; // TODO: This should get the value from KeyguardPatternView private boolean mEnableFallback; // TODO: This should get the value from KeyguardPatternView private SecurityMode mCurrentSecuritySelection = SecurityMode.Invalid; private SecurityMode mCurrentSecuritySelection = SecurityMode.Invalid; private int mAppWidgetToShow; protected Runnable mLaunchRunnable; protected Runnable mLaunchRunnable; Loading @@ -84,7 +83,6 @@ public class KeyguardHostView extends KeyguardViewBase { private KeyguardSecurityModel mSecurityModel; private KeyguardSecurityModel mSecurityModel; private KeyguardViewStateManager mViewStateManager; private KeyguardViewStateManager mViewStateManager; int mLocalStickyWidget = -1; boolean mPersitentStickyWidgetLoaded = false; boolean mPersitentStickyWidgetLoaded = false; private Rect mTempRect = new Rect(); private Rect mTempRect = new Rect(); Loading Loading @@ -768,7 +766,6 @@ public class KeyguardHostView extends KeyguardViewBase { // Once the screen turns off, we no longer consider this to be first boot and we want the // Once the screen turns off, we no longer consider this to be first boot and we want the // biometric unlock to start next time keyguard is shown. // biometric unlock to start next time keyguard is shown. KeyguardUpdateMonitor.getInstance(mContext).setAlternateUnlockEnabled(true); KeyguardUpdateMonitor.getInstance(mContext).setAlternateUnlockEnabled(true); saveStickyWidgetIndex(); checkAppWidgetConsistency(); checkAppWidgetConsistency(); showPrimarySecurityScreen(true); showPrimarySecurityScreen(true); getSecurityView(mCurrentSecuritySelection).onPause(); getSecurityView(mCurrentSecuritySelection).onPause(); Loading Loading @@ -967,7 +964,7 @@ public class KeyguardHostView extends KeyguardViewBase { initializeTransportControl(); initializeTransportControl(); } } private void removeTransportFromWidgetPager() { private boolean removeTransportFromWidgetPager() { int page = getWidgetPosition(R.id.keyguard_transport_control); int page = getWidgetPosition(R.id.keyguard_transport_control); if (page != -1) { if (page != -1) { mAppWidgetContainer.removeWidget(mTransportControl); mAppWidgetContainer.removeWidget(mTransportControl); Loading @@ -976,8 +973,9 @@ public class KeyguardHostView extends KeyguardViewBase { KeyguardHostView.this.addView(mTransportControl); KeyguardHostView.this.addView(mTransportControl); mTransportControl.setVisibility(View.GONE); mTransportControl.setVisibility(View.GONE); mViewStateManager.setTransportState(KeyguardViewStateManager.TRANSPORT_GONE); mViewStateManager.setTransportState(KeyguardViewStateManager.TRANSPORT_GONE); mTransportControl.post(mSwitchPageRunnable); return true; } } return false; } } private void addTransportToWidgetPager() { private void addTransportToWidgetPager() { Loading Loading @@ -1006,9 +1004,10 @@ public class KeyguardHostView extends KeyguardViewBase { mTransportControl.setKeyguardCallback(new TransportCallback() { mTransportControl.setKeyguardCallback(new TransportCallback() { @Override @Override public void onListenerDetached() { public void onListenerDetached() { removeTransportFromWidgetPager(); if (removeTransportFromWidgetPager()) { mTransportControl.post(mSwitchPageRunnable); mTransportControl.post(mSwitchPageRunnable); } } } @Override @Override public void onListenerAttached() { public void onListenerAttached() { Loading Loading @@ -1183,7 +1182,6 @@ public class KeyguardHostView extends KeyguardViewBase { @Override @Override public Parcelable onSaveInstanceState() { public Parcelable onSaveInstanceState() { if (DEBUG) Log.d(TAG, "onSaveInstanceState"); if (DEBUG) Log.d(TAG, "onSaveInstanceState"); saveStickyWidgetIndex(); Parcelable superState = super.onSaveInstanceState(); Parcelable superState = super.onSaveInstanceState(); SavedState ss = new SavedState(superState); SavedState ss = new SavedState(superState); ss.transportState = mViewStateManager.getTransportState(); ss.transportState = mViewStateManager.getTransportState(); Loading @@ -1207,9 +1205,7 @@ public class KeyguardHostView extends KeyguardViewBase { public void onWindowFocusChanged(boolean hasWindowFocus) { public void onWindowFocusChanged(boolean hasWindowFocus) { super.onWindowFocusChanged(hasWindowFocus); super.onWindowFocusChanged(hasWindowFocus); if (DEBUG) Log.d(TAG, "Window is " + (hasWindowFocus ? "focused" : "unfocused")); if (DEBUG) Log.d(TAG, "Window is " + (hasWindowFocus ? "focused" : "unfocused")); if (!hasWindowFocus) { if (hasWindowFocus && mShowSecurityWhenReturn) { saveStickyWidgetIndex(); } else if (mShowSecurityWhenReturn) { SlidingChallengeLayout slider = SlidingChallengeLayout slider = (SlidingChallengeLayout) findViewById(R.id.sliding_layout); (SlidingChallengeLayout) findViewById(R.id.sliding_layout); if (slider != null) { if (slider != null) { Loading Loading @@ -1243,31 +1239,13 @@ public class KeyguardHostView extends KeyguardViewBase { return null; return null; } } private int getStickyWidget() { private boolean isWidgetPage(int pageIndex) { // The first time we query the persistent state. From that point, we use a locally updated View v = mAppWidgetContainer.getChildAt(pageIndex); // notion of the sticky widget page. if (v != null && v instanceof KeyguardWidgetFrame) { if (!mPersitentStickyWidgetLoaded) { KeyguardWidgetFrame kwf = (KeyguardWidgetFrame) v; mLocalStickyWidget = mLockPatternUtils.getStickyAppWidgetIndex(); return kwf.getContentAppWidgetId() != AppWidgetManager.INVALID_APPWIDGET_ID; mPersitentStickyWidgetLoaded = true; } return mLocalStickyWidget; } public void updateStickyWidget(int index) { if (index < 0 || index >= mAppWidgetContainer.getChildCount()) { return; } } if (mAppWidgetContainer.isAddPage(index)) { return false; return; } if (mAppWidgetContainer.isCameraPage(index)) { return; } if (isMusicPage(index)) { return; } mLocalStickyWidget = index; } } boolean isMusicPage(int pageIndex) { boolean isMusicPage(int pageIndex) { Loading @@ -1276,23 +1254,23 @@ public class KeyguardHostView extends KeyguardViewBase { private int getAppropriateWidgetPage(boolean isMusicPlaying) { private int getAppropriateWidgetPage(boolean isMusicPlaying) { // assumes at least one widget (besides camera + add) // assumes at least one widget (besides camera + add) if (mAppWidgetToShow != AppWidgetManager.INVALID_APPWIDGET_ID) { final int childCount = mAppWidgetContainer.getChildCount(); for (int i = 0; i < childCount; i++) { if (mAppWidgetContainer.getWidgetPageAt(i).getContentAppWidgetId() == mAppWidgetToShow) { mAppWidgetToShow = AppWidgetManager.INVALID_APPWIDGET_ID; return i; } } mAppWidgetToShow = AppWidgetManager.INVALID_APPWIDGET_ID; } // if music playing, show transport // if music playing, show transport if (isMusicPlaying) { if (isMusicPlaying) { if (DEBUG) Log.d(TAG, "Music playing, show transport"); if (DEBUG) Log.d(TAG, "Music playing, show transport"); return mAppWidgetContainer.getWidgetPageIndex(mTransportControl); return mAppWidgetContainer.getWidgetPageIndex(mTransportControl); } } // if we have a valid sticky widget, show it int stickyWidgetIndex = getStickyWidget(); if (stickyWidgetIndex > -1 && stickyWidgetIndex < mAppWidgetContainer.getChildCount() && !mAppWidgetContainer.isAddPage(stickyWidgetIndex) && !mAppWidgetContainer.isCameraPage(stickyWidgetIndex)) { if (DEBUG) Log.d(TAG, "Valid sticky widget found, show page " + stickyWidgetIndex); return stickyWidgetIndex; } // else show the right-most widget (except for camera) // else show the right-most widget (except for camera) int rightMost = mAppWidgetContainer.getChildCount() - 1; int rightMost = mAppWidgetContainer.getChildCount() - 1; if (mAppWidgetContainer.isCameraPage(rightMost)) { if (mAppWidgetContainer.isCameraPage(rightMost)) { Loading @@ -1302,13 +1280,6 @@ public class KeyguardHostView extends KeyguardViewBase { return rightMost; return rightMost; } } private void saveStickyWidgetIndex() { if (DEBUG) Log.d(TAG, "saveStickyWidgetIndex: " + mLocalStickyWidget); if (mPersitentStickyWidgetLoaded && mLocalStickyWidget >= 0) { mLockPatternUtils.setStickyAppWidgetIndex(mLocalStickyWidget); } } private void enableUserSelectorIfNecessary() { private void enableUserSelectorIfNecessary() { if (!UserManager.supportsMultipleUsers()) { if (!UserManager.supportsMultipleUsers()) { return; // device doesn't support multi-user mode return; // device doesn't support multi-user mode Loading Loading @@ -1380,6 +1351,11 @@ public class KeyguardHostView extends KeyguardViewBase { mAppWidgetContainer.setCurrentPage(getWidgetPosition(R.id.keyguard_multi_user_selector)); mAppWidgetContainer.setCurrentPage(getWidgetPosition(R.id.keyguard_multi_user_selector)); } } public void goToWidget(int appWidgetId) { mAppWidgetToShow = appWidgetId; mSwitchPageRunnable.run(); } public boolean handleMenuKey() { public boolean handleMenuKey() { // The following enables the MENU key to work for testing automation // The following enables the MENU key to work for testing automation if (shouldEnableMenuKey()) { if (shouldEnableMenuKey()) { Loading
policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java +6 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.internal.policy.impl.keyguard; import android.app.Activity; import android.app.Activity; import android.app.ActivityManager; import android.app.ActivityManager; import android.appwidget.AppWidgetManager; import android.content.Context; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.pm.ActivityInfo; import android.content.res.Configuration; import android.content.res.Configuration; Loading Loading @@ -240,6 +241,11 @@ public class KeyguardViewManager { if (options.getBoolean(LockPatternUtils.KEYGUARD_SHOW_SECURITY_CHALLENGE)) { if (options.getBoolean(LockPatternUtils.KEYGUARD_SHOW_SECURITY_CHALLENGE)) { mKeyguardView.showNextSecurityScreenIfPresent(); mKeyguardView.showNextSecurityScreenIfPresent(); } } int widgetToShow = options.getInt(LockPatternUtils.KEYGUARD_SHOW_APPWIDGET, AppWidgetManager.INVALID_APPWIDGET_ID); if (widgetToShow != AppWidgetManager.INVALID_APPWIDGET_ID) { mKeyguardView.goToWidget(widgetToShow); } } } } } Loading
policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java +0 −4 Original line number Original line Diff line number Diff line Loading @@ -147,10 +147,6 @@ public class KeyguardViewStateManager implements // We only modify the page state if it is not currently under control by the slider. // We only modify the page state if it is not currently under control by the slider. // This prevents conflicts. // This prevents conflicts. if (mKeyguardHostView != null) { mKeyguardHostView.updateStickyWidget(newPageIndex); } // If the page hasn't switched, don't bother with any of this // If the page hasn't switched, don't bother with any of this if (mCurrentPage == newPageIndex) return; if (mCurrentPage == newPageIndex) return; Loading