Merge "Ignore virtual presentation windows - RESTRICT AUTOMERGE" into rvc-dev
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java
index cf23c20..6927586 100644
--- a/services/core/java/com/android/server/wm/WindowState.java
+++ b/services/core/java/com/android/server/wm/WindowState.java
@@ -61,7 +61,6 @@
import static android.view.WindowManager.LayoutParams.SOFT_INPUT_MASK_ADJUST;
import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS;
import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS;
-import static android.view.WindowManager.LayoutParams.TYPE_ACCESSIBILITY_MAGNIFICATION_OVERLAY;
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION;
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA;
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION_MEDIA_OVERLAY;
@@ -5820,7 +5819,8 @@
*/
boolean isNonToastOrStartingOrPrivatePresentation() {
return mAttrs.type != TYPE_TOAST && mAttrs.type != TYPE_APPLICATION_STARTING
- && mAttrs.type != TYPE_PRIVATE_PRESENTATION;
+ && mAttrs.type != TYPE_PRIVATE_PRESENTATION
+ && !(mAttrs.type == TYPE_PRESENTATION && isOnVirtualDisplay());
}
boolean isNonToastWindowVisibleForUid(int callingUid) {
@@ -5833,6 +5833,10 @@
&& isVisibleNow();
}
+ private boolean isOnVirtualDisplay() {
+ return getDisplayContent().mDisplay.getType() == Display.TYPE_VIRTUAL;
+ }
+
void setViewVisibility(int viewVisibility) {
mViewVisibility = viewVisibility;
// The viewVisibility is set to GONE with a client request to relayout. If this occurs and