diff options
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindowManager.java | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java index aa872a4..dfc5a77 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java @@ -2679,7 +2679,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { voiceIntent = new Intent(RecognizerIntent.ACTION_VOICE_SEARCH_HANDS_FREE); voiceIntent.putExtra(RecognizerIntent.EXTRA_SECURE, true); } - mContext.startActivityAsUser(voiceIntent, UserHandle.CURRENT_OR_SELF); + startActivityAsUser(voiceIntent, UserHandle.CURRENT_OR_SELF); } } else if (keyCode == KeyEvent.KEYCODE_SYSRQ) { if (down && repeatCount == 0) { @@ -2719,7 +2719,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { Settings.System.putIntForUser(mContext.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, brightness, UserHandle.USER_CURRENT_OR_SELF); - mContext.startActivityAsUser(new Intent(Intent.ACTION_SHOW_BRIGHTNESS_DIALOG), + startActivityAsUser(new Intent(Intent.ACTION_SHOW_BRIGHTNESS_DIALOG), UserHandle.CURRENT_OR_SELF); } return -1; @@ -2747,7 +2747,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (shortcutIntent != null) { shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { - mContext.startActivityAsUser(shortcutIntent, UserHandle.CURRENT); + startActivityAsUser(shortcutIntent, UserHandle.CURRENT); } catch (ActivityNotFoundException ex) { Slog.w(TAG, "Dropping shortcut key combination because " + "the activity to which it is registered was not found: " @@ -2773,7 +2773,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (shortcutIntent != null) { shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { - mContext.startActivityAsUser(shortcutIntent, UserHandle.CURRENT); + startActivityAsUser(shortcutIntent, UserHandle.CURRENT); } catch (ActivityNotFoundException ex) { Slog.w(TAG, "Dropping shortcut key combination because " + "the activity to which it is registered was not found: " @@ -2791,7 +2791,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { Intent intent = Intent.makeMainSelectorActivity(Intent.ACTION_MAIN, category); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { - mContext.startActivityAsUser(intent, UserHandle.CURRENT); + startActivityAsUser(intent, UserHandle.CURRENT); } catch (ActivityNotFoundException ex) { Slog.w(TAG, "Dropping application launch key because " + "the activity to which it is registered was not found: " @@ -2941,7 +2941,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (searchManager != null) { searchManager.stopSearch(); } - mContext.startActivityAsUser(intent, UserHandle.CURRENT); + startActivityAsUser(intent, UserHandle.CURRENT); } catch (ActivityNotFoundException e) { Slog.w(TAG, "No activity to handle assist long press action.", e); } @@ -2963,13 +2963,21 @@ public class PhoneWindowManager implements WindowManagerPolicy { | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP); try { - mContext.startActivityAsUser(intent, UserHandle.CURRENT); + startActivityAsUser(intent, UserHandle.CURRENT); } catch (ActivityNotFoundException e) { Slog.w(TAG, "No activity to handle assist action.", e); } } } + private void startActivityAsUser(Intent intent, UserHandle handle) { + if (isUserSetupComplete()) { + mContext.startActivityAsUser(intent, handle); + } else { + Slog.i(TAG, "Not starting activity because user setup is in progress: " + intent); + } + } + private SearchManager getSearchManager() { if (mSearchManager == null) { mSearchManager = (SearchManager) mContext.getSystemService(Context.SEARCH_SERVICE); @@ -4441,7 +4449,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA); } wakeUp(whenNanos / 1000000, mAllowTheaterModeWakeFromCameraLens); - mContext.startActivityAsUser(intent, UserHandle.CURRENT_OR_SELF); + startActivityAsUser(intent, UserHandle.CURRENT_OR_SELF); } mCameraLensCoverState = lensCoverState; } @@ -4995,7 +5003,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { Intent voiceIntent = new Intent(RecognizerIntent.ACTION_VOICE_SEARCH_HANDS_FREE); voiceIntent.putExtra(RecognizerIntent.EXTRA_SECURE, keyguardActive); - mContext.startActivityAsUser(voiceIntent, UserHandle.CURRENT_OR_SELF); + startActivityAsUser(voiceIntent, UserHandle.CURRENT_OR_SELF); mBroadcastWakeLock.release(); } @@ -5920,7 +5928,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (fromHomeKey) { dock.putExtra(WindowManagerPolicy.EXTRA_FROM_HOME_KEY, fromHomeKey); } - mContext.startActivityAsUser(dock, UserHandle.CURRENT); + startActivityAsUser(dock, UserHandle.CURRENT); return; } catch (ActivityNotFoundException e) { } @@ -5935,7 +5943,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { intent = mHomeIntent; } - mContext.startActivityAsUser(intent, UserHandle.CURRENT); + startActivityAsUser(mHomeIntent, UserHandle.CURRENT); } /** @@ -5943,6 +5951,10 @@ public class PhoneWindowManager implements WindowManagerPolicy { * @return whether it did anything */ boolean goHome() { + if (!isUserSetupComplete()) { + Slog.i(TAG, "Not going home because user setup is in progress."); + return false; + } if (false) { // This code always brings home to the front. try { |