diff options
| author | Jeff Brown <jeffbrown@google.com> | 2010-10-15 00:54:27 -0700 |
|---|---|---|
| committer | Jeff Brown <jeffbrown@google.com> | 2010-10-15 17:10:55 -0700 |
| commit | 3b2b354ec1ba070eae13391d004d97a3e1403050 (patch) | |
| tree | e2647c9a8797a4b3542deab7d1cb766967b35879 /core/java/android/view/WindowManager.java | |
| parent | 1edb2bda37726ba6bc6feeafad25ea51b1cacaee (diff) | |
Add support for secure system overlays.
Manual merge from Gingerbread.
This change adds a new window type for secure system overlays
created by the system itself from non-secure system overlays that
might be created by applications that have the system alert permission.
Secure views ignore the presence of secure system overlays.
Bug: 3098519
Change-Id: Id876736fd8bf332ff9a5428bde59f5268aa49c3a
Diffstat (limited to 'core/java/android/view/WindowManager.java')
| -rw-r--r-- | core/java/android/view/WindowManager.java | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java index 7cb4671b4ae2..0b2d0f66b340 100644 --- a/core/java/android/view/WindowManager.java +++ b/core/java/android/view/WindowManager.java @@ -167,7 +167,8 @@ public interface WindowManager extends ViewManager { @ViewDebug.IntToString(from = TYPE_KEYGUARD_DIALOG, to = "TYPE_KEYGUARD_DIALOG"), @ViewDebug.IntToString(from = TYPE_SYSTEM_ERROR, to = "TYPE_SYSTEM_ERROR"), @ViewDebug.IntToString(from = TYPE_INPUT_METHOD, to = "TYPE_INPUT_METHOD"), - @ViewDebug.IntToString(from = TYPE_INPUT_METHOD_DIALOG, to = "TYPE_INPUT_METHOD_DIALOG") + @ViewDebug.IntToString(from = TYPE_INPUT_METHOD_DIALOG, to = "TYPE_INPUT_METHOD_DIALOG"), + @ViewDebug.IntToString(from = TYPE_SECURE_SYSTEM_OVERLAY, to = "TYPE_SECURE_SYSTEM_OVERLAY") }) public int type; @@ -345,13 +346,25 @@ public interface WindowManager extends ViewManager { * Window type: panel that slides out from the status bar */ public static final int TYPE_STATUS_BAR_PANEL = FIRST_SYSTEM_WINDOW+14; - + + /** + * Window type: secure system overlay windows, which need to be displayed + * on top of everything else. These windows must not take input + * focus, or they will interfere with the keyguard. + * + * This is exactly like {@link #TYPE_SYSTEM_OVERLAY} except that only the + * system itself is allowed to create these overlays. Applications cannot + * obtain permission to create secure system overlays. + * @hide + */ + public static final int TYPE_SECURE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW+15; + /** * Window type: the drag-and-drop pseudowindow. There is only one * drag layer (at most), and it is placed on top of all other windows. * @hide */ - public static final int TYPE_DRAG = FIRST_SYSTEM_WINDOW+15; + public static final int TYPE_DRAG = FIRST_SYSTEM_WINDOW+16; /** * End of types of system windows. |
