From b2dd57b05867e3b3ad54c480adb812b965796125 Mon Sep 17 00:00:00 2001 From: Kyrylo Mikos Date: Mon, 17 Nov 2014 13:56:05 +0200 Subject: PhoneWindowmanager: disable panic mechanism when PolicyControl activated. Change-Id: I5cf5f681237bbd17ec0fe2d041dd782cfb4b72f0 --- services/core/java/com/android/server/policy/PhoneWindowManager.java | 2 +- services/core/java/com/android/server/policy/PolicyControl.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java index 4fc535c..e7354d5 100644 --- a/services/core/java/com/android/server/policy/PhoneWindowManager.java +++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java @@ -1061,7 +1061,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { // taken over the whole screen. boolean panic = mImmersiveModeConfirmation.onPowerKeyDown(interactive, SystemClock.elapsedRealtime(), isImmersiveMode(mLastSystemUiFlags)); - if (panic) { + if (panic && !PolicyControl.isImmersiveFiltersActive()) { mHandler.post(mHiddenNavPanic); } diff --git a/services/core/java/com/android/server/policy/PolicyControl.java b/services/core/java/com/android/server/policy/PolicyControl.java index dbafc42..0f6fc58 100644 --- a/services/core/java/com/android/server/policy/PolicyControl.java +++ b/services/core/java/com/android/server/policy/PolicyControl.java @@ -125,6 +125,10 @@ public class PolicyControl { } } + public static boolean isImmersiveFiltersActive() { + return sImmersiveStatusFilter != null || sImmersiveNavigationFilter != null; + } + public static void dump(String prefix, PrintWriter pw) { dump("sImmersiveStatusFilter", sImmersiveStatusFilter, prefix, pw); dump("sImmersiveNavigationFilter", sImmersiveNavigationFilter, prefix, pw); -- cgit v1.1