diff options
author | Colin Cross <ccross@android.com> | 2012-05-03 17:56:47 -0700 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2012-05-03 21:25:41 -0700 |
commit | 51d81f3c3e0ca2c04da68e93b7f4981843b74604 (patch) | |
tree | af4c0d54b172f8f5bbb8445caa46103a730de994 /core | |
parent | 1c87360918c81f1cabc7be0760d7e059f2cfa178 (diff) | |
download | frameworks_base-51d81f3c3e0ca2c04da68e93b7f4981843b74604.zip frameworks_base-51d81f3c3e0ca2c04da68e93b7f4981843b74604.tar.gz frameworks_base-51d81f3c3e0ca2c04da68e93b7f4981843b74604.tar.bz2 |
Use libsuspend to trigger suspend
Calling to libsuspend to trigger suspend instead of letting
the power hal do it.
Change-Id: I3cf51fea4d288f9fc19ce5aae39cdd581e8b44cb
Diffstat (limited to 'core')
-rw-r--r-- | core/jni/Android.mk | 1 | ||||
-rw-r--r-- | core/jni/android_os_Power.cpp | 11 |
2 files changed, 10 insertions, 2 deletions
diff --git a/core/jni/Android.mk b/core/jni/Android.mk index 523b2d5..cd0959b 100644 --- a/core/jni/Android.mk +++ b/core/jni/Android.mk @@ -218,6 +218,7 @@ LOCAL_SHARED_LIBRARIES := \ libusbhost \ libharfbuzz \ libz \ + libsuspend \ ifeq ($(USE_OPENGL_RENDERER),true) LOCAL_SHARED_LIBRARIES += libhwui diff --git a/core/jni/android_os_Power.cpp b/core/jni/android_os_Power.cpp index 48845f6..a201d8b 100644 --- a/core/jni/android_os_Power.cpp +++ b/core/jni/android_os_Power.cpp @@ -24,6 +24,7 @@ #include <hardware/power.h> #include <hardware_legacy/power.h> #include <cutils/android_reboot.h> +#include <suspend/autosuspend.h> static struct power_module *sPowerModule; @@ -70,8 +71,14 @@ setLastUserActivityTimeout(JNIEnv *env, jobject clazz, jlong timeMS) static int setScreenState(JNIEnv *env, jobject clazz, jboolean on) { - if (sPowerModule) - sPowerModule->setInteractive(sPowerModule, on); + if (on) { + autosuspend_disable(); + sPowerModule->setInteractive(sPowerModule, true); + } else { + sPowerModule->setInteractive(sPowerModule, false); + autosuspend_enable(); + } + return 0; } |