author | alwin <alwin> | 2004-02-26 22:26:20 (UTC) |
---|---|---|
committer | alwin <alwin> | 2004-02-26 22:26:20 (UTC) |
commit | cb7a0156d641e96dfb6fe1cea6ca3a26e54ce6b2 (patch) (side-by-side diff) | |
tree | 90b117bd6df3cc7ead72d191e618655725f84dc2 | |
parent | 303b5a8e72fe319e6123b01f104b7cb049599f6f (diff) | |
download | opie-cb7a0156d641e96dfb6fe1cea6ca3a26e54ce6b2.zip opie-cb7a0156d641e96dfb6fe1cea6ca3a26e54ce6b2.tar.gz opie-cb7a0156d641e96dfb6fe1cea6ca3a26e54ce6b2.tar.bz2 |
flag ms_is_starting
it will be set true until the main eventloop is reached.
Check it with ServerApp::isStarting()
-rw-r--r-- | core/launcher/serverapp.cpp | 14 | ||||
-rw-r--r-- | core/launcher/serverapp.h | 4 |
2 files changed, 17 insertions, 1 deletions
diff --git a/core/launcher/serverapp.cpp b/core/launcher/serverapp.cpp index 11381e6..f7c2341 100644 --- a/core/launcher/serverapp.cpp +++ b/core/launcher/serverapp.cpp @@ -233,87 +233,88 @@ bool KeyFilter::checkButtonAction(bool db, int keycode, int press, int autoRepe return TRUE; } if ( keycode == Key_F31 ) { if ( press ) emit symbol(); QWSServer::screenSaverActivate(FALSE); return TRUE; } if ( keycode == Key_NumLock ) if ( press ) emit numLockStateToggle(); if ( keycode == Key_CapsLock ) if ( press ) emit capsLockStateToggle(); if ( serverApp ) serverApp->keyClick(keycode,press,autoRepeat); return FALSE; } enum MemState { MemUnknown, MemVeryLow, MemLow, MemNormal } memstate=MemUnknown; #if defined(QPE_HAVE_MEMALERTER) QPE_MEMALERTER_IMPL #endif //--------------------------------------------------------------------------- bool ServerApplication::doRestart = FALSE; bool ServerApplication::allowRestart = TRUE; +bool ServerApplication::ms_is_starting = TRUE; void ServerApplication::switchLCD( bool on ) { if ( !qApp ) return; ServerApplication *dapp = ServerApplication::me() ; if ( !dapp-> m_screensaver ) return; if ( on ) { dapp-> m_screensaver-> setDisplayState ( true ); dapp-> m_screensaver-> setBacklight ( -3 ); }else dapp-> m_screensaver-> setDisplayState ( false ); } ServerApplication::ServerApplication( int& argc, char **argv, Type t ) : QPEApplication( argc, argv, t ) { - + ms_is_starting = true; // We know we'll have lots of cached pixmaps due to App/DocLnks QPixmapCache::setCacheLimit(512); m_ps = new PowerStatus; m_ps_last = new PowerStatus; pa = new DesktopPowerAlerter( 0 ); m_apm_timer = new QTimer( this ); connect(m_apm_timer, SIGNAL( timeout() ), this, SLOT( apmTimeout() ) ); reloadPowerWarnSettings(); QCopChannel *channel = new QCopChannel( "QPE/System", this ); connect(channel, SIGNAL(received( const QCString&, const QByteArray& ) ), this, SLOT(systemMessage(const QCString&, const QByteArray& ) ) ); channel = new QCopChannel("QPE/Launcher", this ); connect(channel, SIGNAL(received( const QCString&, const QByteArray& ) ), this, SLOT(launcherMessage( const QCString&, const QByteArray& ) ) ); m_screensaver = new OpieScreenSaver(); m_screensaver->setInterval( -1 ); QWSServer::setScreenSaver( m_screensaver ); connect( qApp, SIGNAL( volumeChanged( bool ) ), this, SLOT( rereadVolumes() ) ); /* ### PluginLoader libqtopia SafeMode */ #if 0 @@ -817,34 +818,45 @@ void ServerApplication::checkMemory() existingMessage = FALSE; #endif } bool ServerApplication::recoverMemory() { return FALSE; } void ServerApplication::keyClick(int , bool press, bool ) { if ( press && m_keyclick_sound ) ODevice::inst() -> playKeySound(); } void ServerApplication::screenClick(bool press) { if ( press && m_screentap_sound ) ODevice::inst() -> playTouchSound(); } void ServerApplication::soundAlarm() { if ( me ()->m_alarm_sound ) ODevice::inst()->playAlarmSound(); } ServerApplication *ServerApplication::me ( ) { return static_cast<ServerApplication*>( qApp ); } +bool ServerApplication::isStarting() +{ + return ms_is_starting; +} + +int ServerApplication::exec() +{ + ms_is_starting = true; + qDebug("Serverapp - exec"); + return QPEApplication::exec(); +} #include "serverapp.moc" diff --git a/core/launcher/serverapp.h b/core/launcher/serverapp.h index fe3f24a..4d9f808 100644 --- a/core/launcher/serverapp.h +++ b/core/launcher/serverapp.h @@ -65,101 +65,105 @@ public: protected: void timerEvent(QTimerEvent*); signals: void launch(); void power(); void backlight(); void symbol(); void numLockStateToggle(); void capsLockStateToggle(); void activate(const Opie::ODeviceButton*,bool); private: bool keyRegistered( int key ); int held_tid; const Opie::ODeviceButton* heldButton; KeyRegisterList m_keys; }; class ServerApplication : public QPEApplication { Q_OBJECT public: ServerApplication( int& argc, char **argv, Type t ); ~ServerApplication(); static bool doRestart; static bool allowRestart; static bool screenLocked(); static void login(bool at_poweron); + + static bool isStarting(); static void switchLCD ( bool on ); // only for togglePower in Desktop static void soundAlarm(); // only because QCop soundAlarm() is defined in QPE/TaskBar void restart(); + int exec(); signals: void menu(); void home(); void launch(); void power(); void backlight(); void symbol(); void numLockStateToggle(); void capsLockStateToggle(); void prepareForRestart(); void activate(const Opie::ODeviceButton*,bool); public slots: virtual void systemMessage( const QCString& msg, const QByteArray& ); virtual void launcherMessage( const QCString& msg, const QByteArray& ); void rereadVolumes(); protected: bool eventFilter( QObject*, QEvent* ); #ifdef Q_WS_QWS bool qwsEventFilter( QWSEvent * ); #endif void shutdown(); void checkMemory(); bool recoverMemory(); void keyClick(int keycode, bool press, bool repeat); void screenClick(bool press); protected slots: void shutdown(ShutdownImpl::Type); void apmTimeout(); void showSafeMode(); void clearSafeMode(); void togglePower(); void toggleLight(); private: static ServerApplication *me (); void reloadPowerWarnSettings(); KeyFilter *kf; private: DesktopPowerAlerter *pa; PowerStatus *m_ps, *m_ps_last; OpieScreenSaver *m_screensaver; QTimer *m_apm_timer; QDateTime m_suspendTime; int m_powerVeryLow; int m_powerCritical; int m_currentPowerLevel; bool m_keyclick_sound : 1; bool m_screentap_sound : 1; bool m_alarm_sound : 1; + static bool ms_is_starting; friend class KeyFilter; }; #endif // SERVERAPP_H |