summaryrefslogtreecommitdiffstats
path: root/services/java/com/android/server/wm/WindowManagerService.java
diff options
context:
space:
mode:
authorJeff Brown <jeffbrown@google.com>2012-09-30 18:58:59 -0700
committerJeff Brown <jeffbrown@google.com>2012-10-01 14:27:34 -0700
commit1e3b98d47df596d0c4eadbdf60143709f8465b28 (patch)
treeed63fa39f6d2db3b3a3fd9caf61174129198c6cc /services/java/com/android/server/wm/WindowManagerService.java
parent1f7a09b5df9f859781d9cfa0053fad44c72c2168 (diff)
downloadframeworks_base-1e3b98d47df596d0c4eadbdf60143709f8465b28.zip
frameworks_base-1e3b98d47df596d0c4eadbdf60143709f8465b28.tar.gz
frameworks_base-1e3b98d47df596d0c4eadbdf60143709f8465b28.tar.bz2
New internal API to eliminate poke locks.
Added a new WindowManager.LayoutParams inputFeatures flag to disable automatic user activity behavior when an input event is sent to a window. Added a new WindowManager.LayoutParams field userActivityTimeout. Bug: 7165399 Change-Id: I204eafa37ef26aacc2c52a1ba1ecce1eebb0e0d9
Diffstat (limited to 'services/java/com/android/server/wm/WindowManagerService.java')
-rwxr-xr-xservices/java/com/android/server/wm/WindowManagerService.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java
index d530f47..3f7b67b 100755
--- a/services/java/com/android/server/wm/WindowManagerService.java
+++ b/services/java/com/android/server/wm/WindowManagerService.java
@@ -598,6 +598,7 @@ public class WindowManagerService extends IWindowManager.Stub
private boolean mSyswin = false;
private float mScreenBrightness = -1;
private float mButtonBrightness = -1;
+ private long mUserActivityTimeout = -1;
private boolean mUpdateRotation = false;
private static final int DISPLAY_CONTENT_UNKNOWN = 0;
@@ -8775,6 +8776,11 @@ public class WindowManagerService extends IWindowManager.Stub
&& mInnerFields.mButtonBrightness < 0) {
mInnerFields.mButtonBrightness = w.mAttrs.buttonBrightness;
}
+ if (!mInnerFields.mSyswin && w.mAttrs.userActivityTimeout >= 0
+ && mInnerFields.mUserActivityTimeout < 0) {
+ mInnerFields.mUserActivityTimeout = w.mAttrs.userActivityTimeout;
+ }
+
final int type = attrs.type;
if (canBeSeen
&& (type == TYPE_SYSTEM_DIALOG
@@ -8874,7 +8880,9 @@ public class WindowManagerService extends IWindowManager.Stub
mInnerFields.mHoldScreen = null;
mInnerFields.mScreenBrightness = -1;
mInnerFields.mButtonBrightness = -1;
+ mInnerFields.mUserActivityTimeout = -1;
mInnerFields.mDisplayHasContent = LayoutFields.DISPLAY_CONTENT_UNKNOWN;
+
mTransactionSequence++;
final DisplayContent defaultDisplay = getDefaultDisplayContentLocked();
@@ -9349,6 +9357,8 @@ public class WindowManagerService extends IWindowManager.Stub
mPowerManager.setButtonBrightnessOverrideFromWindowManager(
toBrightnessOverride(mInnerFields.mButtonBrightness));
}
+ mPowerManager.setUserActivityTimeoutOverrideFromWindowManager(
+ mInnerFields.mUserActivityTimeout);
}
if (mTurnOnScreen) {