Loading api/test-current.txt +6 −0 Original line number Diff line number Diff line Loading @@ -1636,6 +1636,12 @@ package android.view { method public boolean unregisterFrameCommitCallback(java.lang.Runnable); } public abstract interface WindowManager implements android.view.ViewManager { method public abstract void setShouldShowIme(int, boolean); method public abstract void setShouldShowWithInsecureKeyguard(int, boolean); method public abstract void setShouldShowSystemDecors(int, boolean); } public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable { field public static final int ACCESSIBILITY_TITLE_CHANGED = 33554432; // 0x2000000 field public static final int PRIVATE_FLAG_NO_MOVE_ANIMATION = 64; // 0x40 Loading core/java/android/hardware/display/DisplayManager.java +3 −0 Original line number Diff line number Diff line Loading @@ -263,6 +263,7 @@ public final class DisplayManager { * @see KeyguardManager#isDeviceLocked() * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#shouldShowWithInsecureKeyguard // TODO: Update name and documentation and un-hide the flag. Don't change the value before that. public static final int VIRTUAL_DISPLAY_FLAG_CAN_SHOW_WITH_INSECURE_KEYGUARD = 1 << 5; Loading Loading @@ -295,6 +296,7 @@ public final class DisplayManager { * @see #createVirtualDisplay * @hide */ // TODO (b/114338689): Remove the flag and use WindowManager#REMOVE_CONTENT_MODE_DESTROY public static final int VIRTUAL_DISPLAY_FLAG_DESTROY_CONTENT_ON_REMOVAL = 1 << 8; /** Loading @@ -304,6 +306,7 @@ public final class DisplayManager { * @see #createVirtualDisplay * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#setShouldShowSystemDecors public static final int VIRTUAL_DISPLAY_FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS = 1 << 9; /** @hide */ Loading core/java/android/view/Display.java +6 −0 Original line number Diff line number Diff line Loading @@ -218,6 +218,7 @@ public final class Display { * @see #getFlags * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#shouldShowWithInsecureKeyguard public static final int FLAG_CAN_SHOW_WITH_INSECURE_KEYGUARD = 1 << 5; /** Loading @@ -230,6 +231,7 @@ public final class Display { * @see #supportsSystemDecorations * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#setShouldShowSystemDecors public static final int FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS = 1 << 6; /** Loading Loading @@ -384,6 +386,7 @@ public final class Display { * * @hide */ // TODO (b/114338689): Remove the flag and use WindowManager#REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY public static final int REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY = 0; /** * Indicates that when display is removed, all its stacks and tasks will be removed, all Loading @@ -391,6 +394,7 @@ public final class Display { * * @hide */ // TODO (b/114338689): Remove the flag and use WindowManager#REMOVE_CONTENT_MODE_DESTROY public static final int REMOVE_MODE_DESTROY_CONTENT = 1; /** Loading Loading @@ -881,6 +885,7 @@ public final class Display { * @see #REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY * @see #REMOVE_MODE_DESTROY_CONTENT */ // TODO (b/114338689): Remove the method and use IWindowManager#getRemoveContentMode public int getRemoveMode() { return mDisplayInfo.removeMode; } Loading @@ -891,6 +896,7 @@ public final class Display { * @see #FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS * @hide */ // TODO (b/114338689): Remove the method and use IWindowManager#shouldShowSystemDecors public boolean supportsSystemDecorations() { return (mDisplayInfo.flags & FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS) != 0; } Loading core/java/android/view/DisplayInfo.java +1 −0 Original line number Diff line number Diff line Loading @@ -266,6 +266,7 @@ public final class DisplayInfo implements Parcelable { * * @see Display#getRemoveMode() */ // TODO (b/114338689): Remove the flag and use IWindowManager#getRemoveContentMode public int removeMode = Display.REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY; public static final Creator<DisplayInfo> CREATOR = new Creator<DisplayInfo>() { Loading core/java/android/view/IWindowManager.aidl +116 −0 Original line number Diff line number Diff line Loading @@ -432,4 +432,120 @@ interface IWindowManager * @param displayId The id of the display. */ void dontOverrideDisplayInfo(int displayId); /** * Gets the windowing mode of the display. * * @param displayId The id of the display. * @return {@link WindowConfiguration.WindowingMode} */ int getWindowingMode(int displayId); /** * Sets the windowing mode of the display. * * @param displayId The id of the display. * @param mode {@link WindowConfiguration.WindowingMode} */ void setWindowingMode(int displayId, int mode); /** * Gets current remove content mode of the display. * <p> * What actions should be performed with the display's content when it is removed. Default * behavior for public displays in this case is to move all activities to the primary display * and make it focused. For private display is to destroy all activities. * </p> * * @param displayId The id of the display. * @return The remove content mode of the display. * @see WindowManager#REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY * @see WindowManager#REMOVE_CONTENT_MODE_DESTROY */ int getRemoveContentMode(int displayId); /** * Sets the remove content mode of the display. * <p> * This mode indicates what actions should be performed with the display's content when it is * removed. * </p> * * @param displayId The id of the display. * @param mode Remove content mode. * @see WindowManager#REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY * @see WindowManager#REMOVE_CONTENT_MODE_DESTROY */ void setRemoveContentMode(int displayId, int mode); /** * Indicates that the display should show its content when non-secure keyguard is shown. * <p> * This flag identifies secondary displays that will continue showing content if keyguard can be * dismissed without entering credentials. * </p><p> * An example of usage is a virtual display which content is displayed on external hardware * display that is not visible to the system directly. * </p> * * @param displayId The id of the display. * @return {@code true} if the display should show its content when non-secure keyguard is * shown. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ boolean shouldShowWithInsecureKeyguard(int displayId); /** * Sets that the display should show its content when non-secure keyguard is shown. * * @param displayId The id of the display. * @param shouldShow Indicates that the display should show its content when non-secure keyguard * is shown. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ void setShouldShowWithInsecureKeyguard(int displayId, boolean shouldShow); /** * Indicates the display should show system decors. * <p> * System decors include status bar, navigation bar, launcher. * </p> * * @param displayId The id of the display. * @return {@code true} if the display should show system decors. */ boolean shouldShowSystemDecors(int displayId); /** * Sets that the display should show system decors. * <p> * System decors include status bar, navigation bar, launcher. * </p> * * @param displayId The id of the display. * @param shouldShow Indicates that the display should show system decors. */ void setShouldShowSystemDecors(int displayId, boolean shouldShow); /** * Indicates that the display should show IME. * * @param displayId The id of the display. * @return {@code true} if the display should show IME. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ boolean shouldShowIme(int displayId); /** * Sets that the display should show IME. * * @param displayId The id of the display. * @param shouldShow Indicates that the display should show IME. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ void setShouldShowIme(int displayId, boolean shouldShow); } Loading
api/test-current.txt +6 −0 Original line number Diff line number Diff line Loading @@ -1636,6 +1636,12 @@ package android.view { method public boolean unregisterFrameCommitCallback(java.lang.Runnable); } public abstract interface WindowManager implements android.view.ViewManager { method public abstract void setShouldShowIme(int, boolean); method public abstract void setShouldShowWithInsecureKeyguard(int, boolean); method public abstract void setShouldShowSystemDecors(int, boolean); } public static class WindowManager.LayoutParams extends android.view.ViewGroup.LayoutParams implements android.os.Parcelable { field public static final int ACCESSIBILITY_TITLE_CHANGED = 33554432; // 0x2000000 field public static final int PRIVATE_FLAG_NO_MOVE_ANIMATION = 64; // 0x40 Loading
core/java/android/hardware/display/DisplayManager.java +3 −0 Original line number Diff line number Diff line Loading @@ -263,6 +263,7 @@ public final class DisplayManager { * @see KeyguardManager#isDeviceLocked() * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#shouldShowWithInsecureKeyguard // TODO: Update name and documentation and un-hide the flag. Don't change the value before that. public static final int VIRTUAL_DISPLAY_FLAG_CAN_SHOW_WITH_INSECURE_KEYGUARD = 1 << 5; Loading Loading @@ -295,6 +296,7 @@ public final class DisplayManager { * @see #createVirtualDisplay * @hide */ // TODO (b/114338689): Remove the flag and use WindowManager#REMOVE_CONTENT_MODE_DESTROY public static final int VIRTUAL_DISPLAY_FLAG_DESTROY_CONTENT_ON_REMOVAL = 1 << 8; /** Loading @@ -304,6 +306,7 @@ public final class DisplayManager { * @see #createVirtualDisplay * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#setShouldShowSystemDecors public static final int VIRTUAL_DISPLAY_FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS = 1 << 9; /** @hide */ Loading
core/java/android/view/Display.java +6 −0 Original line number Diff line number Diff line Loading @@ -218,6 +218,7 @@ public final class Display { * @see #getFlags * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#shouldShowWithInsecureKeyguard public static final int FLAG_CAN_SHOW_WITH_INSECURE_KEYGUARD = 1 << 5; /** Loading @@ -230,6 +231,7 @@ public final class Display { * @see #supportsSystemDecorations * @hide */ // TODO (b/114338689): Remove the flag and use IWindowManager#setShouldShowSystemDecors public static final int FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS = 1 << 6; /** Loading Loading @@ -384,6 +386,7 @@ public final class Display { * * @hide */ // TODO (b/114338689): Remove the flag and use WindowManager#REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY public static final int REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY = 0; /** * Indicates that when display is removed, all its stacks and tasks will be removed, all Loading @@ -391,6 +394,7 @@ public final class Display { * * @hide */ // TODO (b/114338689): Remove the flag and use WindowManager#REMOVE_CONTENT_MODE_DESTROY public static final int REMOVE_MODE_DESTROY_CONTENT = 1; /** Loading Loading @@ -881,6 +885,7 @@ public final class Display { * @see #REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY * @see #REMOVE_MODE_DESTROY_CONTENT */ // TODO (b/114338689): Remove the method and use IWindowManager#getRemoveContentMode public int getRemoveMode() { return mDisplayInfo.removeMode; } Loading @@ -891,6 +896,7 @@ public final class Display { * @see #FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS * @hide */ // TODO (b/114338689): Remove the method and use IWindowManager#shouldShowSystemDecors public boolean supportsSystemDecorations() { return (mDisplayInfo.flags & FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS) != 0; } Loading
core/java/android/view/DisplayInfo.java +1 −0 Original line number Diff line number Diff line Loading @@ -266,6 +266,7 @@ public final class DisplayInfo implements Parcelable { * * @see Display#getRemoveMode() */ // TODO (b/114338689): Remove the flag and use IWindowManager#getRemoveContentMode public int removeMode = Display.REMOVE_MODE_MOVE_CONTENT_TO_PRIMARY; public static final Creator<DisplayInfo> CREATOR = new Creator<DisplayInfo>() { Loading
core/java/android/view/IWindowManager.aidl +116 −0 Original line number Diff line number Diff line Loading @@ -432,4 +432,120 @@ interface IWindowManager * @param displayId The id of the display. */ void dontOverrideDisplayInfo(int displayId); /** * Gets the windowing mode of the display. * * @param displayId The id of the display. * @return {@link WindowConfiguration.WindowingMode} */ int getWindowingMode(int displayId); /** * Sets the windowing mode of the display. * * @param displayId The id of the display. * @param mode {@link WindowConfiguration.WindowingMode} */ void setWindowingMode(int displayId, int mode); /** * Gets current remove content mode of the display. * <p> * What actions should be performed with the display's content when it is removed. Default * behavior for public displays in this case is to move all activities to the primary display * and make it focused. For private display is to destroy all activities. * </p> * * @param displayId The id of the display. * @return The remove content mode of the display. * @see WindowManager#REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY * @see WindowManager#REMOVE_CONTENT_MODE_DESTROY */ int getRemoveContentMode(int displayId); /** * Sets the remove content mode of the display. * <p> * This mode indicates what actions should be performed with the display's content when it is * removed. * </p> * * @param displayId The id of the display. * @param mode Remove content mode. * @see WindowManager#REMOVE_CONTENT_MODE_MOVE_TO_PRIMARY * @see WindowManager#REMOVE_CONTENT_MODE_DESTROY */ void setRemoveContentMode(int displayId, int mode); /** * Indicates that the display should show its content when non-secure keyguard is shown. * <p> * This flag identifies secondary displays that will continue showing content if keyguard can be * dismissed without entering credentials. * </p><p> * An example of usage is a virtual display which content is displayed on external hardware * display that is not visible to the system directly. * </p> * * @param displayId The id of the display. * @return {@code true} if the display should show its content when non-secure keyguard is * shown. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ boolean shouldShowWithInsecureKeyguard(int displayId); /** * Sets that the display should show its content when non-secure keyguard is shown. * * @param displayId The id of the display. * @param shouldShow Indicates that the display should show its content when non-secure keyguard * is shown. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ void setShouldShowWithInsecureKeyguard(int displayId, boolean shouldShow); /** * Indicates the display should show system decors. * <p> * System decors include status bar, navigation bar, launcher. * </p> * * @param displayId The id of the display. * @return {@code true} if the display should show system decors. */ boolean shouldShowSystemDecors(int displayId); /** * Sets that the display should show system decors. * <p> * System decors include status bar, navigation bar, launcher. * </p> * * @param displayId The id of the display. * @param shouldShow Indicates that the display should show system decors. */ void setShouldShowSystemDecors(int displayId, boolean shouldShow); /** * Indicates that the display should show IME. * * @param displayId The id of the display. * @return {@code true} if the display should show IME. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ boolean shouldShowIme(int displayId); /** * Sets that the display should show IME. * * @param displayId The id of the display. * @param shouldShow Indicates that the display should show IME. * @see KeyguardManager#isDeviceSecure() * @see KeyguardManager#isDeviceLocked() */ void setShouldShowIme(int displayId, boolean shouldShow); }