Loading core/java/android/app/Presentation.java +4 −2 Original line number Diff line number Diff line Loading @@ -116,7 +116,9 @@ import android.view.WindowManagerImpl; * The display manager keeps track of all displays in the system. However, not all * displays are appropriate for showing presentations. For example, if an activity * attempted to show a presentation on the main display it might obscure its own content * (it's like opening a dialog on top of your activity). * (it's like opening a dialog on top of your activity). Creating a presentation on the main * display will result in {@link android.view.WindowManager.InvalidDisplayException} being thrown * when invoking {@link #show()}. * </p><p> * Here's how to identify suitable displays for showing presentations using * {@link DisplayManager#getDisplays(String)} and the Loading Loading @@ -243,7 +245,7 @@ public class Presentation extends Dialog { /** * Inherited from {@link Dialog#show}. Will throw * {@link android.view.WindowManager.InvalidDisplayException} if the specified secondary * {@link Display} can't be found. * {@link Display} can't be found or if it does not have {@link Display#FLAG_PRESENTATION} set. */ @Override public void show() { Loading data/etc/services.core.protolog.json +6 −0 Original line number Diff line number Diff line Loading @@ -223,6 +223,12 @@ "group": "WM_DEBUG_ADD_REMOVE", "at": "com\/android\/server\/wm\/ActivityRecord.java" }, "-1670695197": { "message": "Attempted to add presentation window to a non-suitable display. Aborting.", "level": "WARN", "group": "WM_ERROR", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "-1661704580": { "message": "Attempted to set replacing window on non-existing app token %s", "level": "WARN", Loading services/core/java/com/android/server/wm/WindowManagerService.java +8 −0 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD; import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD_DIALOG; import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR; import static android.view.WindowManager.LayoutParams.TYPE_NOTIFICATION_SHADE; import static android.view.WindowManager.LayoutParams.TYPE_PRESENTATION; import static android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION; import static android.view.WindowManager.LayoutParams.TYPE_QS_DIALOG; import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR; Loading Loading @@ -1396,6 +1397,13 @@ public class WindowManagerService extends IWindowManager.Stub return WindowManagerGlobal.ADD_PERMISSION_DENIED; } if (type == TYPE_PRESENTATION && !displayContent.getDisplay().isPublicPresentation()) { ProtoLog.w(WM_ERROR, "Attempted to add presentation window to a non-suitable display. " + "Aborting."); return WindowManagerGlobal.ADD_INVALID_DISPLAY; } ActivityRecord activity = null; final boolean hasParent = parentWindow != null; // Use existing parent window token for child windows since they go in the same token Loading Loading
core/java/android/app/Presentation.java +4 −2 Original line number Diff line number Diff line Loading @@ -116,7 +116,9 @@ import android.view.WindowManagerImpl; * The display manager keeps track of all displays in the system. However, not all * displays are appropriate for showing presentations. For example, if an activity * attempted to show a presentation on the main display it might obscure its own content * (it's like opening a dialog on top of your activity). * (it's like opening a dialog on top of your activity). Creating a presentation on the main * display will result in {@link android.view.WindowManager.InvalidDisplayException} being thrown * when invoking {@link #show()}. * </p><p> * Here's how to identify suitable displays for showing presentations using * {@link DisplayManager#getDisplays(String)} and the Loading Loading @@ -243,7 +245,7 @@ public class Presentation extends Dialog { /** * Inherited from {@link Dialog#show}. Will throw * {@link android.view.WindowManager.InvalidDisplayException} if the specified secondary * {@link Display} can't be found. * {@link Display} can't be found or if it does not have {@link Display#FLAG_PRESENTATION} set. */ @Override public void show() { Loading
data/etc/services.core.protolog.json +6 −0 Original line number Diff line number Diff line Loading @@ -223,6 +223,12 @@ "group": "WM_DEBUG_ADD_REMOVE", "at": "com\/android\/server\/wm\/ActivityRecord.java" }, "-1670695197": { "message": "Attempted to add presentation window to a non-suitable display. Aborting.", "level": "WARN", "group": "WM_ERROR", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "-1661704580": { "message": "Attempted to set replacing window on non-existing app token %s", "level": "WARN", Loading
services/core/java/com/android/server/wm/WindowManagerService.java +8 −0 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD; import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD_DIALOG; import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR; import static android.view.WindowManager.LayoutParams.TYPE_NOTIFICATION_SHADE; import static android.view.WindowManager.LayoutParams.TYPE_PRESENTATION; import static android.view.WindowManager.LayoutParams.TYPE_PRIVATE_PRESENTATION; import static android.view.WindowManager.LayoutParams.TYPE_QS_DIALOG; import static android.view.WindowManager.LayoutParams.TYPE_STATUS_BAR; Loading Loading @@ -1396,6 +1397,13 @@ public class WindowManagerService extends IWindowManager.Stub return WindowManagerGlobal.ADD_PERMISSION_DENIED; } if (type == TYPE_PRESENTATION && !displayContent.getDisplay().isPublicPresentation()) { ProtoLog.w(WM_ERROR, "Attempted to add presentation window to a non-suitable display. " + "Aborting."); return WindowManagerGlobal.ADD_INVALID_DISPLAY; } ActivityRecord activity = null; final boolean hasParent = parentWindow != null; // Use existing parent window token for child windows since they go in the same token Loading