Loading core/java/android/view/WindowManagerPolicy.java +8 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package android.view; import android.annotation.IntDef; import android.annotation.SystemApi; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.CompatibilityInfo; Loading Loading @@ -104,6 +105,13 @@ public interface WindowManagerPolicy { */ public final static String EXTRA_HDMI_PLUGGED_STATE = "state"; /** * Set to {@code true} when intent was invoked from pressing the home key. * @hide */ @SystemApi public static final String EXTRA_FROM_HOME_KEY = "android.intent.extra.FROM_HOME_KEY"; /** * Pass this event to the user / app. To be returned from * {@link #interceptKeyBeforeQueueing}. Loading policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +21 −5 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { static final int SHORT_PRESS_POWER_GO_TO_SLEEP = 1; static final int SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP = 2; static final int SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP_AND_GO_HOME = 3; static final int SHORT_PRESS_POWER_GO_HOME = 4; static final int LONG_PRESS_POWER_NOTHING = 0; static final int LONG_PRESS_POWER_GLOBAL_ACTIONS = 1; Loading Loading @@ -971,6 +972,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { PowerManager.GO_TO_SLEEP_FLAG_NO_DOZE); launchHomeFromHotKey(); break; case SHORT_PRESS_POWER_GO_HOME: launchHomeFromHotKey(); break; } } } Loading Loading @@ -2991,7 +2995,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { } catch (RemoteException e) { } sendCloseSystemWindows(SYSTEM_DIALOG_REASON_HOME_KEY); startDockOrHome(); startDockOrHome(true /*fromHomeKey*/); } } }); Loading @@ -3009,7 +3013,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { } else { // Otherwise, just launch Home sendCloseSystemWindows(SYSTEM_DIALOG_REASON_HOME_KEY); startDockOrHome(); startDockOrHome(true /*fromHomeKey*/); } } } Loading Loading @@ -5821,19 +5825,31 @@ public class PhoneWindowManager implements WindowManagerPolicy { return null; } void startDockOrHome() { void startDockOrHome(boolean fromHomeKey) { awakenDreams(); Intent dock = createHomeDockIntent(); if (dock != null) { try { if (fromHomeKey) { dock.putExtra(WindowManagerPolicy.EXTRA_FROM_HOME_KEY, fromHomeKey); } mContext.startActivityAsUser(dock, UserHandle.CURRENT); return; } catch (ActivityNotFoundException e) { } } mContext.startActivityAsUser(mHomeIntent, UserHandle.CURRENT); Intent intent; if (fromHomeKey) { intent = new Intent(mHomeIntent); intent.putExtra(WindowManagerPolicy.EXTRA_FROM_HOME_KEY, fromHomeKey); } else { intent = mHomeIntent; } mContext.startActivityAsUser(intent, UserHandle.CURRENT); } /** Loading @@ -5848,7 +5864,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { } catch (RemoteException e) { } sendCloseSystemWindows(); startDockOrHome(); startDockOrHome(false /*fromHomeKey*/); } else { // This code brings home to the front or, if it is already // at the front, puts the device to sleep. Loading Loading
core/java/android/view/WindowManagerPolicy.java +8 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package android.view; import android.annotation.IntDef; import android.annotation.SystemApi; import android.content.Context; import android.content.pm.ActivityInfo; import android.content.res.CompatibilityInfo; Loading Loading @@ -104,6 +105,13 @@ public interface WindowManagerPolicy { */ public final static String EXTRA_HDMI_PLUGGED_STATE = "state"; /** * Set to {@code true} when intent was invoked from pressing the home key. * @hide */ @SystemApi public static final String EXTRA_FROM_HOME_KEY = "android.intent.extra.FROM_HOME_KEY"; /** * Pass this event to the user / app. To be returned from * {@link #interceptKeyBeforeQueueing}. Loading
policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +21 −5 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { static final int SHORT_PRESS_POWER_GO_TO_SLEEP = 1; static final int SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP = 2; static final int SHORT_PRESS_POWER_REALLY_GO_TO_SLEEP_AND_GO_HOME = 3; static final int SHORT_PRESS_POWER_GO_HOME = 4; static final int LONG_PRESS_POWER_NOTHING = 0; static final int LONG_PRESS_POWER_GLOBAL_ACTIONS = 1; Loading Loading @@ -971,6 +972,9 @@ public class PhoneWindowManager implements WindowManagerPolicy { PowerManager.GO_TO_SLEEP_FLAG_NO_DOZE); launchHomeFromHotKey(); break; case SHORT_PRESS_POWER_GO_HOME: launchHomeFromHotKey(); break; } } } Loading Loading @@ -2991,7 +2995,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { } catch (RemoteException e) { } sendCloseSystemWindows(SYSTEM_DIALOG_REASON_HOME_KEY); startDockOrHome(); startDockOrHome(true /*fromHomeKey*/); } } }); Loading @@ -3009,7 +3013,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { } else { // Otherwise, just launch Home sendCloseSystemWindows(SYSTEM_DIALOG_REASON_HOME_KEY); startDockOrHome(); startDockOrHome(true /*fromHomeKey*/); } } } Loading Loading @@ -5821,19 +5825,31 @@ public class PhoneWindowManager implements WindowManagerPolicy { return null; } void startDockOrHome() { void startDockOrHome(boolean fromHomeKey) { awakenDreams(); Intent dock = createHomeDockIntent(); if (dock != null) { try { if (fromHomeKey) { dock.putExtra(WindowManagerPolicy.EXTRA_FROM_HOME_KEY, fromHomeKey); } mContext.startActivityAsUser(dock, UserHandle.CURRENT); return; } catch (ActivityNotFoundException e) { } } mContext.startActivityAsUser(mHomeIntent, UserHandle.CURRENT); Intent intent; if (fromHomeKey) { intent = new Intent(mHomeIntent); intent.putExtra(WindowManagerPolicy.EXTRA_FROM_HOME_KEY, fromHomeKey); } else { intent = mHomeIntent; } mContext.startActivityAsUser(intent, UserHandle.CURRENT); } /** Loading @@ -5848,7 +5864,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { } catch (RemoteException e) { } sendCloseSystemWindows(); startDockOrHome(); startDockOrHome(false /*fromHomeKey*/); } else { // This code brings home to the front or, if it is already // at the front, puts the device to sleep. Loading