summaryrefslogtreecommitdiff
authorzecke <zecke>2004-07-17 17:51:32 (UTC)
committer zecke <zecke>2004-07-17 17:51:32 (UTC)
commit9b5be1aa88f98bfe939563898e8fa340dbb7fa3f (patch) (unidiff)
treedf938b8250e003b44f75c0fc0dedac2dbc782ddf
parent0f64024dc631d9043d2f6f4f6bcafaac7eddd545 (diff)
downloadopie-9b5be1aa88f98bfe939563898e8fa340dbb7fa3f.zip
opie-9b5be1aa88f98bfe939563898e8fa340dbb7fa3f.tar.gz
opie-9b5be1aa88f98bfe939563898e8fa340dbb7fa3f.tar.bz2
-Add depedenncy on OMAF
-Link against OMAF -Finally use OMAF
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/config.in2
-rw-r--r--core/launcher/server.pro2
-rw-r--r--core/launcher/serverapp.cpp14
3 files changed, 10 insertions, 8 deletions
diff --git a/core/launcher/config.in b/core/launcher/config.in
index 31da148..a11fed4 100644
--- a/core/launcher/config.in
+++ b/core/launcher/config.in
@@ -1,4 +1,4 @@
1 config LAUNCHER 1 config LAUNCHER
2 boolean "opie-taskbar (program launcher qpe for Opie)" 2 boolean "opie-taskbar (program launcher qpe for Opie)"
3 default "y" 3 default "y"
4 depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE2CORE && LIBOPIE2UI && LIBQRSYNC 4 depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE2CORE && LIBOPIE2UI && LIBOPIE2SECURITY && LIBQRSYNC
diff --git a/core/launcher/server.pro b/core/launcher/server.pro
index 4e6a581..f366f54 100644
--- a/core/launcher/server.pro
+++ b/core/launcher/server.pro
@@ -13,72 +13,72 @@ HEADERS += server.h \
13 runningappbar.h \ 13 runningappbar.h \
14 applauncher.h \ 14 applauncher.h \
15 stabmon.h \ 15 stabmon.h \
16 inputmethods.h \ 16 inputmethods.h \
17 systray.h \ 17 systray.h \
18 wait.h \ 18 wait.h \
19 shutdownimpl.h \ 19 shutdownimpl.h \
20 launcher.h \ 20 launcher.h \
21 launcherview.h \ 21 launcherview.h \
22 $$(OPIEDIR)/core/apps/calibrate/calibrate.h \ 22 $$(OPIEDIR)/core/apps/calibrate/calibrate.h \
23 startmenu.h \ 23 startmenu.h \
24 transferserver.h \ 24 transferserver.h \
25 qcopbridge.h \ 25 qcopbridge.h \
26 packageslave.h \ 26 packageslave.h \
27 irserver.h \ 27 irserver.h \
28 firstuse.h \ 28 firstuse.h \
29 syncdialog.h \ 29 syncdialog.h \
30 serverapp.h \ 30 serverapp.h \
31 qprocess.h \ 31 qprocess.h \
32 screensaver.h \ 32 screensaver.h \
33 $$(OPIEDIR)/noncore/settings/mediummount/mediumwidget.h \ 33 $$(OPIEDIR)/noncore/settings/mediummount/mediumwidget.h \
34 mediadlg.h 34 mediadlg.h
35 35
36 SOURCES += server.cpp \ 36 SOURCES += server.cpp \
37 serverinterface.cpp \ 37 serverinterface.cpp \
38 launchertab.cpp \ 38 launchertab.cpp \
39 documentlist.cpp \ 39 documentlist.cpp \
40 appicons.cpp \ 40 appicons.cpp \
41 taskbar.cpp \ 41 taskbar.cpp \
42 runningappbar.cpp \ 42 runningappbar.cpp \
43 applauncher.cpp \ 43 applauncher.cpp \
44 stabmon.cpp \ 44 stabmon.cpp \
45 inputmethods.cpp \ 45 inputmethods.cpp \
46 systray.cpp \ 46 systray.cpp \
47 wait.cpp \ 47 wait.cpp \
48 shutdownimpl.cpp \ 48 shutdownimpl.cpp \
49 launcher.cpp \ 49 launcher.cpp \
50 launcherview.cpp \ 50 launcherview.cpp \
51 $$(OPIEDIR)/core/apps/calibrate/calibrate.cpp \ 51 $$(OPIEDIR)/core/apps/calibrate/calibrate.cpp \
52 transferserver.cpp \ 52 transferserver.cpp \
53 packageslave.cpp \ 53 packageslave.cpp \
54 irserver.cpp \ 54 irserver.cpp \
55 qcopbridge.cpp \ 55 qcopbridge.cpp \
56 startmenu.cpp \ 56 startmenu.cpp \
57 main.cpp \ 57 main.cpp \
58 firstuse.cpp \ 58 firstuse.cpp \
59 syncdialog.cpp \ 59 syncdialog.cpp \
60 serverapp.cpp \ 60 serverapp.cpp \
61 qprocess.cpp \ 61 qprocess.cpp \
62 qprocess_unix.cpp \ 62 qprocess_unix.cpp \
63 screensaver.cpp \ 63 screensaver.cpp \
64 $$(OPIEDIR)/noncore/settings/mediummount/mediumwidget.cc \ 64 $$(OPIEDIR)/noncore/settings/mediummount/mediumwidget.cc \
65 mediadlg.cpp 65 mediadlg.cpp
66 66
67 67
68INCLUDEPATH += $(OPIEDIR)/core/apps/calibrate 68INCLUDEPATH += $(OPIEDIR)/core/apps/calibrate
69 DEPENDPATH+= $(OPIEDIR)/core/apps/calibrate 69 DEPENDPATH+= $(OPIEDIR)/core/apps/calibrate
70 70
71INCLUDEPATH += $(OPIEDIR)/include $(OPIEDIR)/rsync 71INCLUDEPATH += $(OPIEDIR)/include $(OPIEDIR)/rsync
72 DEPENDPATH+= $(OPIEDIR)/rsync 72 DEPENDPATH+= $(OPIEDIR)/rsync
73 73
74INCLUDEPATH += $(OPIEDIR)/noncore/settings/mediummount 74INCLUDEPATH += $(OPIEDIR)/noncore/settings/mediummount
75DEPENDPATH += $(OPIEDIR)/noncore/settings/mediummount 75DEPENDPATH += $(OPIEDIR)/noncore/settings/mediummount
76 76
77LIBS += -lqpe -lopiecore2 -lopieui2 -lqrsync 77LIBS += -lqpe -lopiecore2 -lopieui2 -lopiesecurity2 -lqrsync
78TARGET = qpe 78TARGET = qpe
79 79
80contains( $(CONFIG_TARGET_MACOSX), y ) { 80contains( $(CONFIG_TARGET_MACOSX), y ) {
81 LIBS += -lcrypt 81 LIBS += -lcrypt
82} 82}
83 83
84include ( $(OPIEDIR)/include.pro ) 84include ( $(OPIEDIR)/include.pro )
diff --git a/core/launcher/serverapp.cpp b/core/launcher/serverapp.cpp
index 3d88873..f1bce40 100644
--- a/core/launcher/serverapp.cpp
+++ b/core/launcher/serverapp.cpp
@@ -1,91 +1,92 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2003 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2003 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#include "serverapp.h" 21#include "serverapp.h"
22#include "screensaver.h" 22#include "screensaver.h"
23 23
24/* OPIE */ 24/* OPIE */
25#include <opie2/odebug.h> 25#include <opie2/odebug.h>
26#include <opie2/odevice.h> 26#include <opie2/odevice.h>
27#include <qtopia/password.h> 27#include <opie2/multiauthpassword.h>
28
28#include <qtopia/config.h> 29#include <qtopia/config.h>
29#include <qtopia/power.h> 30#include <qtopia/power.h>
30 31
31#ifdef Q_WS_QWS 32#ifdef Q_WS_QWS
32#include <qtopia/qcopenvelope_qws.h> 33#include <qtopia/qcopenvelope_qws.h>
33#endif 34#endif
34#include <qtopia/global.h> 35#include <qtopia/global.h>
35using namespace Opie::Core; 36using namespace Opie::Core;
36 37
37/* QT */ 38/* QT */
38#ifdef Q_WS_QWS 39#ifdef Q_WS_QWS
39#include <qgfx_qws.h> 40#include <qgfx_qws.h>
40#endif 41#endif
41#include <qmessagebox.h> 42#include <qmessagebox.h>
42#include <qtimer.h> 43#include <qtimer.h>
43#include <qpainter.h> 44#include <qpainter.h>
44#include <qfile.h> 45#include <qfile.h>
45#include <qpixmapcache.h> 46#include <qpixmapcache.h>
46 47
47/* STD */ 48/* STD */
48#ifdef Q_OS_WIN32 49#ifdef Q_OS_WIN32
49#include <io.h> 50#include <io.h>
50#include <process.h> 51#include <process.h>
51#else 52#else
52#include <unistd.h> 53#include <unistd.h>
53#endif 54#endif
54#include <stdlib.h> 55#include <stdlib.h>
55 56
56static ServerApplication *serverApp = 0; 57static ServerApplication *serverApp = 0;
57static int loggedin=0; 58static int loggedin=0;
58 59
59QCopKeyRegister::QCopKeyRegister() 60QCopKeyRegister::QCopKeyRegister()
60 : m_keyCode( 0 ) { 61 : m_keyCode( 0 ) {
61} 62}
62 63
63QCopKeyRegister::QCopKeyRegister( int k, const QCString& c, const QCString& m ) 64QCopKeyRegister::QCopKeyRegister( int k, const QCString& c, const QCString& m )
64 :m_keyCode( k ), m_channel( c ), m_message( m ) { 65 :m_keyCode( k ), m_channel( c ), m_message( m ) {
65} 66}
66 67
67int QCopKeyRegister::keyCode()const { 68int QCopKeyRegister::keyCode()const {
68 return m_keyCode; 69 return m_keyCode;
69} 70}
70 71
71QCString QCopKeyRegister::channel()const { 72QCString QCopKeyRegister::channel()const {
72 return m_channel; 73 return m_channel;
73} 74}
74 75
75QCString QCopKeyRegister::message()const { 76QCString QCopKeyRegister::message()const {
76 return m_message; 77 return m_message;
77} 78}
78 79
79bool QCopKeyRegister::send() { 80bool QCopKeyRegister::send() {
80 if (m_channel.isNull() ) 81 if (m_channel.isNull() )
81 return false; 82 return false;
82 83
83 QCopEnvelope( m_channel, m_message ); 84 QCopEnvelope( m_channel, m_message );
84 85
85 return true; 86 return true;
86} 87}
87 88
88//--------------------------------------------------------------------------- 89//---------------------------------------------------------------------------
89 90
90/* 91/*
91 Priority is number of alerts that are needed to pop up 92 Priority is number of alerts that are needed to pop up
@@ -289,128 +290,129 @@ ServerApplication::ServerApplication( int& argc, char **argv, Type t )
289 ms_is_starting = true; 290 ms_is_starting = true;
290 291
291 // We know we'll have lots of cached pixmaps due to App/DocLnks 292 // We know we'll have lots of cached pixmaps due to App/DocLnks
292 QPixmapCache::setCacheLimit(512); 293 QPixmapCache::setCacheLimit(512);
293 294
294 m_ps = new PowerStatus; 295 m_ps = new PowerStatus;
295 m_ps_last = new PowerStatus; 296 m_ps_last = new PowerStatus;
296 pa = new DesktopPowerAlerter( 0 ); 297 pa = new DesktopPowerAlerter( 0 );
297 298
298 m_apm_timer = new QTimer( this ); 299 m_apm_timer = new QTimer( this );
299 connect(m_apm_timer, SIGNAL( timeout() ), 300 connect(m_apm_timer, SIGNAL( timeout() ),
300 this, SLOT( apmTimeout() ) ); 301 this, SLOT( apmTimeout() ) );
301 302
302 reloadPowerWarnSettings(); 303 reloadPowerWarnSettings();
303 304
304 QCopChannel *channel = new QCopChannel( "QPE/System", this ); 305 QCopChannel *channel = new QCopChannel( "QPE/System", this );
305 connect(channel, SIGNAL(received(const QCString&,const QByteArray&) ), 306 connect(channel, SIGNAL(received(const QCString&,const QByteArray&) ),
306 this, SLOT(systemMessage(const QCString&,const QByteArray&) ) ); 307 this, SLOT(systemMessage(const QCString&,const QByteArray&) ) );
307 308
308 channel = new QCopChannel("QPE/Launcher", this ); 309 channel = new QCopChannel("QPE/Launcher", this );
309 connect(channel, SIGNAL(received(const QCString&,const QByteArray&) ), 310 connect(channel, SIGNAL(received(const QCString&,const QByteArray&) ),
310 this, SLOT(launcherMessage(const QCString&,const QByteArray&) ) ); 311 this, SLOT(launcherMessage(const QCString&,const QByteArray&) ) );
311 312
312 m_screensaver = new OpieScreenSaver(); 313 m_screensaver = new OpieScreenSaver();
313 m_screensaver->setInterval( -1 ); 314 m_screensaver->setInterval( -1 );
314 QWSServer::setScreenSaver( m_screensaver ); 315 QWSServer::setScreenSaver( m_screensaver );
315 316
316 connect( qApp, SIGNAL( volumeChanged(bool) ), 317 connect( qApp, SIGNAL( volumeChanged(bool) ),
317 this, SLOT( rereadVolumes() ) ); 318 this, SLOT( rereadVolumes() ) );
318 319
319 320
320 /* ### PluginLoader libqtopia SafeMode */ 321 /* ### PluginLoader libqtopia SafeMode */
321#if 0 322#if 0
322 if ( PluginLoader::inSafeMode() ) 323 if ( PluginLoader::inSafeMode() )
323 QTimer::singleShot(500, this, SLOT(showSafeMode()) ); 324 QTimer::singleShot(500, this, SLOT(showSafeMode()) );
324 QTimer::singleShot(20*1000, this, SLOT(clearSafeMode()) ); 325 QTimer::singleShot(20*1000, this, SLOT(clearSafeMode()) );
325#endif 326#endif
326 327
327 kf = new KeyFilter(this); 328 kf = new KeyFilter(this);
328 329
329 connect( kf, SIGNAL(launch()), this, SIGNAL(launch()) ); 330 connect( kf, SIGNAL(launch()), this, SIGNAL(launch()) );
330 connect( kf, SIGNAL(power()), this, SIGNAL(power()) ); 331 connect( kf, SIGNAL(power()), this, SIGNAL(power()) );
331 connect( kf, SIGNAL(backlight()), this, SIGNAL(backlight()) ); 332 connect( kf, SIGNAL(backlight()), this, SIGNAL(backlight()) );
332 connect( kf, SIGNAL(symbol()), this, SIGNAL(symbol())); 333 connect( kf, SIGNAL(symbol()), this, SIGNAL(symbol()));
333 connect( kf, SIGNAL(numLockStateToggle()), this,SIGNAL(numLockStateToggle())); 334 connect( kf, SIGNAL(numLockStateToggle()), this,SIGNAL(numLockStateToggle()));
334 connect( kf, SIGNAL(capsLockStateToggle()), this,SIGNAL(capsLockStateToggle())); 335 connect( kf, SIGNAL(capsLockStateToggle()), this,SIGNAL(capsLockStateToggle()));
335 connect( kf, SIGNAL(activate(const Opie::Core::ODeviceButton*,bool)), 336 connect( kf, SIGNAL(activate(const Opie::Core::ODeviceButton*,bool)),
336 this,SIGNAL(activate(const Opie::Core::ODeviceButton*,bool))); 337 this,SIGNAL(activate(const Opie::Core::ODeviceButton*,bool)));
337 338
338 339
339 connect( kf, SIGNAL(backlight()), this, SLOT(toggleLight()) ); 340 connect( kf, SIGNAL(backlight()), this, SLOT(toggleLight()) );
340 341
341 connect( this, SIGNAL(power() ), 342 connect( this, SIGNAL(power() ),
342 SLOT(togglePower() ) ); 343 SLOT(togglePower() ) );
343 344
344 rereadVolumes(); 345 rereadVolumes();
345 346
346 serverApp = this; 347 serverApp = this;
347 348
348 apmTimeout(); 349 apmTimeout();
349 grabKeyboard(); 350 grabKeyboard();
350 351
351 /* make sure the event filter is installed */ 352 /* make sure the event filter is installed */
352 const ODeviceButton* but = ODevice::inst()->buttonForKeycode( -1 ); 353 const ODeviceButton* but = ODevice::inst()->buttonForKeycode( -1 );
354 Q_CONST_UNUSED( but )
353} 355}
354 356
355 357
356ServerApplication::~ServerApplication() 358ServerApplication::~ServerApplication()
357{ 359{
358 ungrabKeyboard(); 360 ungrabKeyboard();
359 361
360 362
361 delete pa; 363 delete pa;
362 delete m_ps; 364 delete m_ps;
363 delete m_ps_last; 365 delete m_ps_last;
364} 366}
365 367
366void ServerApplication::apmTimeout() { 368void ServerApplication::apmTimeout() {
367 serverApp-> checkMemory( ); // in case no events are generated 369 serverApp-> checkMemory( ); // in case no events are generated
368 *m_ps_last = *m_ps; 370 *m_ps_last = *m_ps;
369 *m_ps = PowerStatusManager::readStatus(); 371 *m_ps = PowerStatusManager::readStatus();
370 372
371 if ( m_ps->acStatus() != m_ps_last-> acStatus() ) 373 if ( m_ps->acStatus() != m_ps_last-> acStatus() )
372 m_screensaver-> powerStatusChanged( *m_ps ); 374 m_screensaver-> powerStatusChanged( *m_ps );
373 375
374 if ( m_ps->acStatus() == PowerStatus::Online ) { 376 if ( m_ps->acStatus() == PowerStatus::Online ) {
375 return; 377 return;
376 } 378 }
377 379
378 int bat = m_ps-> batteryPercentRemaining(); 380 int bat = m_ps-> batteryPercentRemaining();
379 381
380 if ( bat < m_ps_last-> batteryPercentRemaining() ) { 382 if ( bat < m_ps_last-> batteryPercentRemaining() ) {
381 if ( bat <= m_powerCritical ) { 383 if ( bat <= m_powerCritical ) {
382 QMessageBox battlow( 384 QMessageBox battlow(
383 tr("WARNING"), 385 tr("WARNING"),
384 tr("<p>The battery level is critical!" 386 tr("<p>The battery level is critical!"
385 "<p>Keep power off until AC is restored"), 387 "<p>Keep power off until AC is restored"),
386 QMessageBox::Warning, 388 QMessageBox::Warning,
387 QMessageBox::Cancel, QMessageBox::NoButton, QMessageBox::NoButton, 389 QMessageBox::Cancel, QMessageBox::NoButton, QMessageBox::NoButton,
388 0, QString::null, TRUE, WStyle_StaysOnTop); 390 0, QString::null, TRUE, WStyle_StaysOnTop);
389 battlow.setButtonText(QMessageBox::Cancel, tr("Ok")); 391 battlow.setButtonText(QMessageBox::Cancel, tr("Ok"));
390 battlow.exec(); 392 battlow.exec();
391 } else if ( bat <= m_powerVeryLow ) 393 } else if ( bat <= m_powerVeryLow )
392 pa->alert( tr( "The battery is running very low. "), 2 ); 394 pa->alert( tr( "The battery is running very low. "), 2 );
393 } 395 }
394 396
395 if ( m_ps-> backupBatteryStatus() == PowerStatus::VeryLow ) { 397 if ( m_ps-> backupBatteryStatus() == PowerStatus::VeryLow ) {
396 QMessageBox battlow( 398 QMessageBox battlow(
397 tr("WARNING"), 399 tr("WARNING"),
398 tr("<p>The Back-up battery is very low" 400 tr("<p>The Back-up battery is very low"
399 "<p>Please charge the back-up battery"), 401 "<p>Please charge the back-up battery"),
400 QMessageBox::Warning, 402 QMessageBox::Warning,
401 QMessageBox::Cancel, QMessageBox::NoButton, QMessageBox::NoButton, 403 QMessageBox::Cancel, QMessageBox::NoButton, QMessageBox::NoButton,
402 0, QString::null, TRUE, WStyle_StaysOnTop); 404 0, QString::null, TRUE, WStyle_StaysOnTop);
403 battlow.setButtonText(QMessageBox::Cancel, tr("Ok")); 405 battlow.setButtonText(QMessageBox::Cancel, tr("Ok"));
404 battlow.exec(); 406 battlow.exec();
405 } 407 }
406} 408}
407 409
408void ServerApplication::systemMessage( const QCString& msg, 410void ServerApplication::systemMessage( const QCString& msg,
409 const QByteArray& data ) { 411 const QByteArray& data ) {
410 QDataStream stream ( data, IO_ReadOnly ); 412 QDataStream stream ( data, IO_ReadOnly );
411 413
412 if ( msg == "setScreenSaverInterval(int)" ) { 414 if ( msg == "setScreenSaverInterval(int)" ) {
413 int time; 415 int time;
414 stream >> time; 416 stream >> time;
415 m_screensaver-> setInterval( time ); 417 m_screensaver-> setInterval( time );
416 } 418 }
@@ -434,186 +436,186 @@ void ServerApplication::systemMessage( const QCString& msg,
434 } 436 }
435 else if ( msg == "setDisplayState(int)" ) { 437 else if ( msg == "setDisplayState(int)" ) {
436 int state; 438 int state;
437 stream >> state; 439 stream >> state;
438 m_screensaver-> setDisplayState ( state != 0 ); 440 m_screensaver-> setDisplayState ( state != 0 );
439 } 441 }
440 else if ( msg == "suspend()" ) { 442 else if ( msg == "suspend()" ) {
441 emit power(); 443 emit power();
442 } 444 }
443 else if ( msg == "sendBusinessCard()" ) { 445 else if ( msg == "sendBusinessCard()" ) {
444 QString card = ::getenv ( "HOME" ); 446 QString card = ::getenv ( "HOME" );
445 card += "/Applications/addressbook/businesscard.vcf"; 447 card += "/Applications/addressbook/businesscard.vcf";
446 448
447 if ( QFile::exists( card ) ) { 449 if ( QFile::exists( card ) ) {
448 QCopEnvelope e ( "QPE/Obex", "send(QString,QString,QString)" ); 450 QCopEnvelope e ( "QPE/Obex", "send(QString,QString,QString)" );
449 QString mimetype = "text/x-vCard"; 451 QString mimetype = "text/x-vCard";
450 e << tr( "business card" ) << card << mimetype; 452 e << tr( "business card" ) << card << mimetype;
451 } 453 }
452 } 454 }
453} 455}
454 456
455void ServerApplication::reloadPowerWarnSettings ( ) 457void ServerApplication::reloadPowerWarnSettings ( )
456{ 458{
457 Config cfg ( "apm" ); 459 Config cfg ( "apm" );
458 cfg. setGroup ( "Warnings" ); 460 cfg. setGroup ( "Warnings" );
459 461
460 int iv = cfg. readNumEntry ( "checkinterval", 10000 ); 462 int iv = cfg. readNumEntry ( "checkinterval", 10000 );
461 463
462 m_apm_timer-> stop ( ); 464 m_apm_timer-> stop ( );
463 if ( iv ) 465 if ( iv )
464 m_apm_timer-> start ( iv ); 466 m_apm_timer-> start ( iv );
465 467
466 m_powerVeryLow = cfg. readNumEntry ( "powerverylow", 10 ); 468 m_powerVeryLow = cfg. readNumEntry ( "powerverylow", 10 );
467 m_powerCritical = cfg. readNumEntry ( "powervcritical", 5 ); 469 m_powerCritical = cfg. readNumEntry ( "powervcritical", 5 );
468} 470}
469 471
470void ServerApplication::launcherMessage( const QCString & msg, const QByteArray & data ) 472void ServerApplication::launcherMessage( const QCString & msg, const QByteArray & data )
471{ 473{
472 QDataStream stream ( data, IO_ReadOnly ); 474 QDataStream stream ( data, IO_ReadOnly );
473 475
474 if ( msg == "deviceButton(int,int,int)" ) { 476 if ( msg == "deviceButton(int,int,int)" ) {
475 int keycode, press, autoRepeat; 477 int keycode, press, autoRepeat;
476 stream >> keycode >> press >> autoRepeat; 478 stream >> keycode >> press >> autoRepeat;
477 479
478 kf->checkButtonAction ( true, keycode, press, autoRepeat ); 480 kf->checkButtonAction ( true, keycode, press, autoRepeat );
479 } 481 }
480 else if ( msg == "keyRegister(int,QCString,QCString)" ) { 482 else if ( msg == "keyRegister(int,QCString,QCString)" ) {
481 int k; 483 int k;
482 QCString c, m; 484 QCString c, m;
483 stream >> k >> c >> m; 485 stream >> k >> c >> m;
484 486
485 kf -> registerKey( QCopKeyRegister(k, c, m) ); 487 kf -> registerKey( QCopKeyRegister(k, c, m) );
486 } 488 }
487} 489}
488 490
489 491
490bool ServerApplication::screenLocked() 492bool ServerApplication::screenLocked()
491{ 493{
492 return loggedin == 0; 494 return loggedin == 0;
493} 495}
494 496
495void ServerApplication::login(bool at_poweron) 497void ServerApplication::login(bool at_poweron)
496{ 498{
497 if ( !loggedin ) { 499 if ( !loggedin ) {
498 Global::terminateBuiltin("calibrate"); // No tr 500 Global::terminateBuiltin("calibrate"); // No tr
499 Password::authenticate(at_poweron); 501 Opie::Security::MultiauthPassword::authenticate(at_poweron);
500 loggedin=1; 502 loggedin=1;
501#ifndef QT_NO_COP 503#ifndef QT_NO_COP
502 QCopEnvelope e( "QPE/Desktop", "unlocked()" ); 504 QCopEnvelope e( "QPE/Desktop", "unlocked()" );
503#endif 505#endif
504 } 506 }
505} 507}
506 508
507#if defined(QPE_HAVE_TOGGLELIGHT) 509#if defined(QPE_HAVE_TOGGLELIGHT)
508#include <qtopia/config.h> 510#include <qtopia/config.h>
509 511
510#include <sys/ioctl.h> 512#include <sys/ioctl.h>
511#include <sys/types.h> 513#include <sys/types.h>
512#include <fcntl.h> 514#include <fcntl.h>
513#include <unistd.h> 515#include <unistd.h>
514#include <errno.h> 516#include <errno.h>
515#include <linux/ioctl.h> 517#include <linux/ioctl.h>
516#include <time.h> 518#include <time.h>
517#endif 519#endif
518 520
519namespace { 521namespace {
520 void execAutoStart(const QDateTime& suspendTime ) { 522 void execAutoStart(const QDateTime& suspendTime ) {
521 QString appName; 523 QString appName;
522 int delay; 524 int delay;
523 QDateTime now = QDateTime::currentDateTime(); 525 QDateTime now = QDateTime::currentDateTime();
524 526
525 Config cfg( "autostart" ); 527 Config cfg( "autostart" );
526 cfg.setGroup( "AutoStart" ); 528 cfg.setGroup( "AutoStart" );
527 appName = cfg.readEntry( "Apps", "" ); 529 appName = cfg.readEntry( "Apps", "" );
528 delay = cfg.readNumEntry( "Delay", 0 ); 530 delay = cfg.readNumEntry( "Delay", 0 );
529 531
530 // If the time between suspend and resume was longer then the 532 // If the time between suspend and resume was longer then the
531 // value saved as delay, start the app 533 // value saved as delay, start the app
532 if ( suspendTime.secsTo( now ) >= ( delay * 60 ) && !appName.isEmpty() ) { 534 if ( suspendTime.secsTo( now ) >= ( delay * 60 ) && !appName.isEmpty() ) {
533 QCopEnvelope e( "QPE/System", "execute(QString)" ); 535 QCopEnvelope e( "QPE/System", "execute(QString)" );
534 e << QString( appName ); 536 e << QString( appName );
535 } 537 }
536 } 538 }
537} 539}
538 540
539 541
540void ServerApplication::togglePower() 542void ServerApplication::togglePower()
541{ 543{
542 static bool excllock = false; 544 static bool excllock = false;
543 545
544 if ( excllock ) 546 if ( excllock )
545 return ; 547 return ;
546 548
547 excllock = true; 549 excllock = true;
548 550
549 bool wasloggedin = loggedin; 551 bool wasloggedin = loggedin;
550 loggedin = 0; 552 loggedin = 0;
551 m_suspendTime = QDateTime::currentDateTime(); 553 m_suspendTime = QDateTime::currentDateTime();
552 554
553#ifdef QWS 555#ifdef QWS
554 556
555 if ( Password::needToAuthenticate ( true ) && qt_screen ) { 557 if ( Opie::Security::MultiauthPassword::needToAuthenticate ( true ) && qt_screen ) {
556 // Should use a big black window instead. 558 // Should use a big black window instead.
557 // But this would not show up fast enough 559 // But this would not show up fast enough
558 QGfx *g = qt_screen-> screenGfx ( ); 560 QGfx *g = qt_screen-> screenGfx ( );
559 g-> fillRect ( 0, 0, qt_screen-> width ( ), qt_screen-> height ( )); 561 g-> fillRect ( 0, 0, qt_screen-> width ( ), qt_screen-> height ( ));
560 delete g; 562 delete g;
561 } 563 }
562#endif 564#endif
563 565
564 ODevice::inst ( )-> suspend ( ); 566 ODevice::inst ( )-> suspend ( );
565 567
566 ServerApplication::switchLCD ( true ); // force LCD on without slow qcop call 568 ServerApplication::switchLCD ( true ); // force LCD on without slow qcop call
567 QWSServer::screenSaverActivate ( false ); 569 QWSServer::screenSaverActivate ( false );
568 570
569 { 571 {
570 QCopEnvelope( "QPE/Card", "mtabChanged()" ); // might have changed while asleep 572 QCopEnvelope( "QPE/Card", "mtabChanged()" ); // might have changed while asleep
571 } 573 }
572 574
573 if ( wasloggedin ) 575 if ( wasloggedin )
574 login ( true ); 576 login ( true );
575 577
576 execAutoStart(m_suspendTime); 578 execAutoStart(m_suspendTime);
577 //qcopBridge->closeOpenConnections(); 579 //qcopBridge->closeOpenConnections();
578 580
579 excllock = false; 581 excllock = false;
580} 582}
581 583
582void ServerApplication::toggleLight() 584void ServerApplication::toggleLight()
583{ 585{
584#ifndef QT_NO_COP 586#ifndef QT_NO_COP
585 QCopEnvelope e("QPE/System", "setBacklight(int)"); 587 QCopEnvelope e("QPE/System", "setBacklight(int)");
586 e << -2; // toggle 588 e << -2; // toggle
587#endif 589#endif
588} 590}
589 591
590 592
591/* 593/*
592 * We still listen to key events but handle them in 594 * We still listen to key events but handle them in
593 * a special class 595 * a special class
594 */ 596 */
595 597
596bool ServerApplication::eventFilter( QObject *o, QEvent *e) { 598bool ServerApplication::eventFilter( QObject *o, QEvent *e) {
597 if ( e->type() != QEvent::KeyPress && 599 if ( e->type() != QEvent::KeyPress &&
598 e->type() != QEvent::KeyRelease ) 600 e->type() != QEvent::KeyRelease )
599 return QPEApplication::eventFilter( o, e ); 601 return QPEApplication::eventFilter( o, e );
600 602
601 QKeyEvent *ke = static_cast<QKeyEvent*>( e ); 603 QKeyEvent *ke = static_cast<QKeyEvent*>( e );
602 if ( kf->checkButtonAction( true, ke->key(), 604 if ( kf->checkButtonAction( true, ke->key(),
603 e->type() == QEvent::KeyPress, 605 e->type() == QEvent::KeyPress,
604 ke-> isAutoRepeat() )) 606 ke-> isAutoRepeat() ))
605 return true; 607 return true;
606 608
607 return QPEApplication::eventFilter( o, e ); 609 return QPEApplication::eventFilter( o, e );
608 610
609} 611}
610 612
611#ifdef Q_WS_QWS 613#ifdef Q_WS_QWS
612bool ServerApplication::qwsEventFilter( QWSEvent *e ) 614bool ServerApplication::qwsEventFilter( QWSEvent *e )
613{ 615{
614 checkMemory(); 616 checkMemory();
615 617
616 if ( e->type == QWSEvent::Mouse ) { 618 if ( e->type == QWSEvent::Mouse ) {
617 QWSMouseEvent *me = (QWSMouseEvent *)e; 619 QWSMouseEvent *me = (QWSMouseEvent *)e;
618 static bool up = TRUE; 620 static bool up = TRUE;
619 if ( me->simpleData.state&LeftButton ) { 621 if ( me->simpleData.state&LeftButton ) {