summaryrefslogtreecommitdiff
Unidiff
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
@@ -53,32 +53,32 @@ SOURCES += server.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
@@ -3,49 +3,50 @@
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
@@ -329,48 +330,49 @@ ServerApplication::ServerApplication( int& argc, char **argv, Type t )
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 }
@@ -474,53 +476,53 @@ void ServerApplication::launcherMessage( const QCString & msg, const QByteArray
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" );
@@ -531,49 +533,49 @@ namespace {
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;