Loading services/core/java/com/android/server/wm/DisplayContent.java +11 −6 Original line number Diff line number Diff line Loading @@ -719,16 +719,21 @@ class DisplayContent { boolean canAddToastWindowForUid(int uid) { // We allow one toast window per UID being shown at a time. WindowList windows = getWindowList(); final int windowCount = windows.size(); // Also if the app is focused adding more than one toast at // a time for better backwards compatibility. boolean alreadyHasToastWindow = false; final int windowCount = mWindows.size(); for (int i = 0; i < windowCount; i++) { WindowState window = windows.get(i); if (window.mAttrs.type == TYPE_TOAST && window.mOwnerUid == uid final WindowState window = mWindows.get(i); if (window.isFocused() && window.getOwningUid() == uid) { return true; } if (window.mAttrs.type == TYPE_TOAST && window.getOwningUid() == uid && !window.isRemovedOrHidden()) { return false; alreadyHasToastWindow = true; } } return true; return !alreadyHasToastWindow; } void scheduleToastWindowsTimeoutIfNeededLocked(WindowState oldFocus, Loading Loading
services/core/java/com/android/server/wm/DisplayContent.java +11 −6 Original line number Diff line number Diff line Loading @@ -719,16 +719,21 @@ class DisplayContent { boolean canAddToastWindowForUid(int uid) { // We allow one toast window per UID being shown at a time. WindowList windows = getWindowList(); final int windowCount = windows.size(); // Also if the app is focused adding more than one toast at // a time for better backwards compatibility. boolean alreadyHasToastWindow = false; final int windowCount = mWindows.size(); for (int i = 0; i < windowCount; i++) { WindowState window = windows.get(i); if (window.mAttrs.type == TYPE_TOAST && window.mOwnerUid == uid final WindowState window = mWindows.get(i); if (window.isFocused() && window.getOwningUid() == uid) { return true; } if (window.mAttrs.type == TYPE_TOAST && window.getOwningUid() == uid && !window.isRemovedOrHidden()) { return false; alreadyHasToastWindow = true; } } return true; return !alreadyHasToastWindow; } void scheduleToastWindowsTimeoutIfNeededLocked(WindowState oldFocus, Loading