summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/desktop.cpp12
-rw-r--r--libopie/odevice.cpp4
2 files changed, 11 insertions, 5 deletions
diff --git a/core/launcher/desktop.cpp b/core/launcher/desktop.cpp
index 7f24259..552c7c3 100644
--- a/core/launcher/desktop.cpp
+++ b/core/launcher/desktop.cpp
@@ -606,2 +606,4 @@ void Desktop::togglePower()
{
+ extern void qpe_setBacklight ( int ); // We need to toggle the LCD fast - no time to send a QCop
+
static bool excllock = false;
@@ -616,3 +618,5 @@ void Desktop::togglePower()
suspendTime = QDateTime::currentDateTime();
- darkScreen();
+
+ qpe_setBacklight ( 0 ); // force LCD off
+
if ( wasloggedin )
@@ -622,3 +626,5 @@ void Desktop::togglePower()
- QWSServer::screenSaverActivate( FALSE );
+ QWSServer::screenSaverActivate ( false );
+
+ qpe_setBacklight ( -3 ); // force LCD on
@@ -626,4 +632,2 @@ void Desktop::togglePower()
QCopEnvelope("QPE/Card", "mtabChanged()" ); // might have changed while asleep
- QCopEnvelope e("QPE/System", "setBacklight(int)");
- e << -3; // Force on
}
diff --git a/libopie/odevice.cpp b/libopie/odevice.cpp
index 057c344..bf64676 100644
--- a/libopie/odevice.cpp
+++ b/libopie/odevice.cpp
@@ -308,3 +308,4 @@ bool ODeviceIPAQ::suspend ( )
- if (( fd = ::open ( "/dev/apm_bios", O_RDWR )) >= 0 ) {
+ if ((( fd = ::open ( "/dev/apm_bios", O_RDWR )) >= 0 ) ||
+ (( fd = ::open ( "/dev/misc/apm_bios",O_RDWR )) >= 0 )) {
struct timeval tvs, tvn;
@@ -330,2 +331,3 @@ bool ODeviceIPAQ::suspend ( )
}
+
return res;