diff options
-rw-r--r-- | services/java/com/android/server/wm/WindowManagerService.java | 11 | ||||
-rw-r--r-- | services/jni/com_android_server_input_InputManagerService.cpp | 3 |
2 files changed, 7 insertions, 7 deletions
diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 6f7852d..a7af8fb 100644 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -4807,10 +4807,13 @@ public class WindowManagerService extends IWindowManager.Stub final int SW_LID = 0x00; int sw = mInputManager.getSwitchState(-1, InputDevice.SOURCE_ANY, SW_LID); if (sw > 0) { - return LID_OPEN; - } else if (sw == 0) { + // Switch state: AKEY_STATE_DOWN or AKEY_STATE_VIRTUAL. return LID_CLOSED; + } else if (sw == 0) { + // Switch state: AKEY_STATE_UP. + return LID_OPEN; } else { + // Switch state: AKEY_STATE_UNKNOWN. return LID_ABSENT; } } @@ -4818,10 +4821,6 @@ public class WindowManagerService extends IWindowManager.Stub // Called by window manager policy. Not exposed externally. @Override public InputChannel monitorInput(String inputChannelName) { - if (!checkCallingPermission(android.Manifest.permission.READ_INPUT_STATE, - "monitorInput()")) { - throw new SecurityException("Requires READ_INPUT_STATE permission"); - } return mInputManager.monitorInput(inputChannelName); } diff --git a/services/jni/com_android_server_input_InputManagerService.cpp b/services/jni/com_android_server_input_InputManagerService.cpp index 75c20f3..c137a78 100644 --- a/services/jni/com_android_server_input_InputManagerService.cpp +++ b/services/jni/com_android_server_input_InputManagerService.cpp @@ -510,8 +510,9 @@ void NativeInputManager::notifySwitch(nsecs_t when, int32_t switchCode, switch (switchCode) { case SW_LID: + // When switch value is set indicates lid is closed. env->CallVoidMethod(mServiceObj, gServiceClassInfo.notifyLidSwitchChanged, - when, switchValue == 0); + when, switchValue == 0 /*lidOpen*/); checkAndClearExceptionFromCallback(env, "notifyLidSwitchChanged"); break; } |