From 271ba635536db4a9f4ae1e575194d0f388b1c991 Mon Sep 17 00:00:00 2001 From: zecke Date: Sat, 04 Oct 2003 07:23:27 +0000 Subject: merges of qcopQok and QPIxmapCache 'calibration' for PDA needs --- (limited to 'library') diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp index 0e469ae..28fb13a 100644 --- a/library/qpeapplication.cpp +++ b/library/qpeapplication.cpp @@ -51,6 +51,7 @@ #include #include #include +#include #if defined(Q_WS_QWS) && !defined(QT_NO_COP) #define QTOPIA_INTERNAL_INITAPP @@ -99,7 +100,7 @@ public: QPEApplicationData ( ) : presstimer( 0 ), presswidget( 0 ), rightpressed( false ), kbgrabbed( false ), notbusysent( false ), preloaded( false ), forceshow( false ), nomaximize( false ), - keep_running( true ), qpe_main_widget( 0 ), qcopQok( false ) + keep_running( true ), qcopQok( false ), qpe_main_widget( 0 ) {} @@ -113,8 +114,8 @@ public: bool preloaded : 1; bool forceshow : 1; bool nomaximize : 1; - bool qcopQok : 1; bool keep_running : 1; + bool qcopQok : 1; QStringList langs; @@ -214,6 +215,7 @@ public: setWidgetCaptionFromAppName( mw, appName, QPEApplication::qpeDir() + "apps" ); nomaximize = nomax; qpe_main_widget = mw; + qcopQok = TRUE; #ifndef QT_NO_COP sendQCopQ(); @@ -576,6 +578,8 @@ void QPEApplication::processQCopFile() QPEApplication::QPEApplication( int & argc, char **argv, Type t ) : QApplication( hack(argc), argv, t ), pidChannel( 0 ) { + QPixmapCache::setCacheLimit(256); // sensible default for smaller devices. + d = new QPEApplicationData; d->loadTextCodecs(); d->loadImageCodecs(); @@ -1776,6 +1780,9 @@ void QPEApplication::setStylusOperation( QWidget * w, StylusMode mode ) */ bool QPEApplication::eventFilter( QObject *o, QEvent *e ) { + if ( !o->isWidgetType() ) + return FALSE; + if ( stylusDict && e->type() >= QEvent::MouseButtonPress && e->type() <= QEvent::MouseMove ) { QMouseEvent * me = ( QMouseEvent* ) e; StylusMode mode = (StylusMode)(int)stylusDict->find(o); @@ -1784,7 +1791,8 @@ bool QPEApplication::eventFilter( QObject *o, QEvent *e ) switch ( me->type() ) { case QEvent::MouseButtonPress: if ( me->button() == LeftButton ) { - d->presstimer = startTimer(500); // #### pref. + if (!d->presstimer ) + d->presstimer = startTimer(500); // #### pref. d->presswidget = (QWidget*)o; d->presspos = me->pos(); d->rightpressed = FALSE; @@ -1904,6 +1912,8 @@ int QPEApplication::exec() d->qcopQok = true; #ifndef QT_NO_COP d->sendQCopQ(); + if ( !d->keep_running ) + processEvents(); // we may have received QCop messages in the meantime. #endif if ( d->keep_running ) -- cgit v0.9.0.2