From b816bedf6f1e6c81fd497df98aaae68a9ce546b0 Mon Sep 17 00:00:00 2001 From: Craig Mautner Date: Tue, 23 Jul 2013 10:26:17 -0700 Subject: [PATCH] Limit TYPE_SYSTEM_ERROR to system decor bounds. Because windows of TYPE_SYTEM_ERROR lie in a layer above the Navigation Bar they cannot be allowed to extend into the Navigation Bar area or it will block touches to the Home button. Fixes bug 9626315 Change-Id: Ib5e4a2d2954cb79adc98d69e3c43108cb1389cc9 --- .../com/android/internal/policy/impl/PhoneWindowManager.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java index bd56ee0ea2961..1ea7a7c6cf420 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java @@ -3229,7 +3229,8 @@ public class PhoneWindowManager implements WindowManagerPolicy { } } - if ((fl & FLAG_LAYOUT_NO_LIMITS) != 0) { + // TYPE_SYSTEM_ERROR is above the NavigationBar so it can't be allowed to extend over it. + if ((fl & FLAG_LAYOUT_NO_LIMITS) != 0 && attrs.type != TYPE_SYSTEM_ERROR) { df.left = df.top = of.left = of.top = cf.left = cf.top = vf.left = vf.top = -10000; df.right = df.bottom = of.right = of.bottom = cf.right = cf.bottom = vf.right = vf.bottom = 10000;