-rw-r--r-- | x11/libqpe-x11/qpe/qpeapplication.cpp | 26 | ||||
-rw-r--r-- | x11/libqpe-x11/qpe/qpeapplication.h | 9 | ||||
-rw-r--r-- | x11/libqpe-x11/qt/qwindowsystem_qws.h | 19 |
3 files changed, 53 insertions, 1 deletions
diff --git a/x11/libqpe-x11/qpe/qpeapplication.cpp b/x11/libqpe-x11/qpe/qpeapplication.cpp index 6e4a96c..8785c74 100644 --- a/x11/libqpe-x11/qpe/qpeapplication.cpp +++ b/x11/libqpe-x11/qpe/qpeapplication.cpp | |||
@@ -587,86 +587,112 @@ bool QPEApplication::eventFilter( QObject* o, QEvent* e ) { | |||
587 | if ( o->isA( "QRadioButton" ) || o->isA( "QCheckBox" ) ) { | 587 | if ( o->isA( "QRadioButton" ) || o->isA( "QCheckBox" ) ) { |
588 | postEvent( o, new QKeyEvent( e->type(), Key_Space, ' ', | 588 | postEvent( o, new QKeyEvent( e->type(), Key_Space, ' ', |
589 | ke->state(), " ", ke->isAutoRepeat(), ke->count() ) ); | 589 | ke->state(), " ", ke->isAutoRepeat(), ke->count() ) ); |
590 | return TRUE; | 590 | return TRUE; |
591 | } | 591 | } |
592 | } | 592 | } |
593 | } | 593 | } |
594 | return FALSE; | 594 | return FALSE; |
595 | } | 595 | } |
596 | 596 | ||
597 | // Quit stuff | 597 | // Quit stuff |
598 | void QPEApplication::restart() { | 598 | void QPEApplication::restart() { |
599 | 599 | ||
600 | } | 600 | } |
601 | void QPEApplication::shutdown() { | 601 | void QPEApplication::shutdown() { |
602 | 602 | ||
603 | } | 603 | } |
604 | void QPEApplication::tryQuit() { | 604 | void QPEApplication::tryQuit() { |
605 | qWarning("TryQuit!!"); | 605 | qWarning("TryQuit!!"); |
606 | if ( activeModalWidget() || strcmp( argv() [ 0 ], "embeddedkonsole" ) == 0 ) | 606 | if ( activeModalWidget() || strcmp( argv() [ 0 ], "embeddedkonsole" ) == 0 ) |
607 | return ; // Inside modal loop or konsole. Too hard to save state. | 607 | return ; // Inside modal loop or konsole. Too hard to save state. |
608 | { | 608 | { |
609 | QCopEnvelope e( "QPE/System", "closing(QString)" ); | 609 | QCopEnvelope e( "QPE/System", "closing(QString)" ); |
610 | e << d->appName; | 610 | e << d->appName; |
611 | } | 611 | } |
612 | processEvents(); | 612 | processEvents(); |
613 | 613 | ||
614 | quit(); | 614 | quit(); |
615 | } | 615 | } |
616 | void QPEApplication::hideOrQuit() { | 616 | void QPEApplication::hideOrQuit() { |
617 | qWarning("hide or close"); | 617 | qWarning("hide or close"); |
618 | processEvents(); | 618 | processEvents(); |
619 | qWarning("past processing"); | 619 | qWarning("past processing"); |
620 | 620 | ||
621 | // If we are a preloaded application we don't actually quit, so emit | 621 | // If we are a preloaded application we don't actually quit, so emit |
622 | // a System message indicating we're quasi-closing. | 622 | // a System message indicating we're quasi-closing. |
623 | if ( d->preloaded && d->qpe_main_widget ) | 623 | if ( d->preloaded && d->qpe_main_widget ) |
624 | 624 | ||
625 | { | 625 | { |
626 | qWarning("hiding"); | 626 | qWarning("hiding"); |
627 | QCopEnvelope e("QPE/System", "fastAppHiding(QString)" ); | 627 | QCopEnvelope e("QPE/System", "fastAppHiding(QString)" ); |
628 | e << d->appName; | 628 | e << d->appName; |
629 | d->qpe_main_widget->hide(); | 629 | d->qpe_main_widget->hide(); |
630 | } | 630 | } |
631 | else | 631 | else |
632 | quit(); | 632 | quit(); |
633 | } | 633 | } |
634 | 634 | ||
635 | /*! | ||
636 | \internal | ||
637 | */ | ||
638 | void QPEApplication::prepareForTermination( bool willrestart ) | ||
639 | { | ||
640 | if ( willrestart ) { | ||
641 | // Draw a big wait icon, the image can be altered in later revisions | ||
642 | // QWidget *d = QApplication::desktop(); | ||
643 | QImage img = Resource::loadImage( "launcher/new_wait" ); | ||
644 | QPixmap pix; | ||
645 | pix.convertFromImage( img.smoothScale( 1 * img.width(), 1 * img.height() ) ); | ||
646 | QLabel *lblWait = new QLabel( 0, "wait hack!", QWidget::WStyle_Customize | | ||
647 | QWidget::WStyle_NoBorder | QWidget::WStyle_Tool ); | ||
648 | lblWait->setPixmap( pix ); | ||
649 | lblWait->setAlignment( QWidget::AlignCenter ); | ||
650 | lblWait->show(); | ||
651 | lblWait->showMaximized(); | ||
652 | } | ||
653 | #ifndef SINGLE_APP | ||
654 | { QCopEnvelope envelope( "QPE/System", "forceQuit()" ); | ||
655 | } | ||
656 | processEvents(); // ensure the message goes out. | ||
657 | sleep( 1 ); // You have 1 second to comply. | ||
658 | #endif | ||
659 | } | ||
660 | |||
635 | #if defined(QT_QWS_IPAQ) || defined(QT_QWS_EBX) | 661 | #if defined(QT_QWS_IPAQ) || defined(QT_QWS_EBX) |
636 | 662 | ||
637 | // The libraries with the skiff package (and possibly others) have | 663 | // The libraries with the skiff package (and possibly others) have |
638 | // completely useless implementations of builtin new and delete that | 664 | // completely useless implementations of builtin new and delete that |
639 | // use about 50% of your CPU. Here we revert to the simple libc | 665 | // use about 50% of your CPU. Here we revert to the simple libc |
640 | // functions. | 666 | // functions. |
641 | 667 | ||
642 | void* operator new[]( size_t size ) | 668 | void* operator new[]( size_t size ) |
643 | { | 669 | { |
644 | return malloc( size ); | 670 | return malloc( size ); |
645 | } | 671 | } |
646 | 672 | ||
647 | void* operator new( size_t size ) | 673 | void* operator new( size_t size ) |
648 | { | 674 | { |
649 | return malloc( size ); | 675 | return malloc( size ); |
650 | } | 676 | } |
651 | 677 | ||
652 | void operator delete[]( void* p ) | 678 | void operator delete[]( void* p ) |
653 | { | 679 | { |
654 | free( p ); | 680 | free( p ); |
655 | } | 681 | } |
656 | 682 | ||
657 | void operator delete[]( void* p, size_t /*size*/ ) | 683 | void operator delete[]( void* p, size_t /*size*/ ) |
658 | { | 684 | { |
659 | free( p ); | 685 | free( p ); |
660 | } | 686 | } |
661 | 687 | ||
662 | void operator delete( void* p ) | 688 | void operator delete( void* p ) |
663 | { | 689 | { |
664 | free( p ); | 690 | free( p ); |
665 | } | 691 | } |
666 | 692 | ||
667 | void operator delete( void* p, size_t /*size*/ ) | 693 | void operator delete( void* p, size_t /*size*/ ) |
668 | { | 694 | { |
669 | free( p ); | 695 | free( p ); |
670 | } | 696 | } |
671 | 697 | ||
672 | #endif | 698 | #endif |
diff --git a/x11/libqpe-x11/qpe/qpeapplication.h b/x11/libqpe-x11/qpe/qpeapplication.h index 2af1c66..333f331 100644 --- a/x11/libqpe-x11/qpe/qpeapplication.h +++ b/x11/libqpe-x11/qpe/qpeapplication.h | |||
@@ -9,85 +9,94 @@ | |||
9 | #include <qevent.h> | 9 | #include <qevent.h> |
10 | 10 | ||
11 | #include <qpe/timestring.h> | 11 | #include <qpe/timestring.h> |
12 | 12 | ||
13 | class QCopChannel; | 13 | class QCopChannel; |
14 | class QPEApplication : public QApplication { | 14 | class QPEApplication : public QApplication { |
15 | Q_OBJECT | 15 | Q_OBJECT |
16 | public: | 16 | public: |
17 | QPEApplication(int& argc, char** argv, Type=GuiClient ); | 17 | QPEApplication(int& argc, char** argv, Type=GuiClient ); |
18 | ~QPEApplication(); | 18 | ~QPEApplication(); |
19 | 19 | ||
20 | 20 | ||
21 | static QString qpeDir(); | 21 | static QString qpeDir(); |
22 | static QString documentDir(); | 22 | static QString documentDir(); |
23 | void applyStyle(); | 23 | void applyStyle(); |
24 | 24 | ||
25 | static int defaultRotation(); | 25 | static int defaultRotation(); |
26 | static void setDefaultRotation( int r ); | 26 | static void setDefaultRotation( int r ); |
27 | static void grabKeyboard(); | 27 | static void grabKeyboard(); |
28 | static void ungrabKeyboard(); | 28 | static void ungrabKeyboard(); |
29 | 29 | ||
30 | enum StylusMode { | 30 | enum StylusMode { |
31 | LeftOnly, | 31 | LeftOnly, |
32 | RightOnHold | 32 | RightOnHold |
33 | }; | 33 | }; |
34 | static void setStylusOperation( QWidget*, StylusMode ); | 34 | static void setStylusOperation( QWidget*, StylusMode ); |
35 | static StylusMode stylusOperation( QWidget* ); | 35 | static StylusMode stylusOperation( QWidget* ); |
36 | 36 | ||
37 | enum InputMethodHint { | 37 | enum InputMethodHint { |
38 | Normal, | 38 | Normal, |
39 | AlwaysOff, | 39 | AlwaysOff, |
40 | AlwaysOn | 40 | AlwaysOn |
41 | }; | 41 | }; |
42 | static void setInputMethodHint( QWidget*, InputMethodHint ); | 42 | static void setInputMethodHint( QWidget*, InputMethodHint ); |
43 | static InputMethodHint inputMethodHint( QWidget* ); | 43 | static InputMethodHint inputMethodHint( QWidget* ); |
44 | 44 | ||
45 | void showMainWidget( QWidget*, bool nomax = FALSE ); | 45 | void showMainWidget( QWidget*, bool nomax = FALSE ); |
46 | void showMainDocumentWidget( QWidget*, bool nomax = FALSE ); | 46 | void showMainDocumentWidget( QWidget*, bool nomax = FALSE ); |
47 | 47 | ||
48 | static void showDialog( QDialog*, bool nomax = FALSE ); | 48 | static void showDialog( QDialog*, bool nomax = FALSE ); |
49 | static int execDialog( QDialog*, bool nomax = FALSE ); | 49 | static int execDialog( QDialog*, bool nomax = FALSE ); |
50 | 50 | ||
51 | static void setKeepRunning(); | 51 | static void setKeepRunning(); |
52 | bool keepRunning()const; | 52 | bool keepRunning()const; |
53 | 53 | ||
54 | bool keyboardGrabbed()const; | 54 | bool keyboardGrabbed()const; |
55 | int exec(); | 55 | int exec(); |
56 | 56 | ||
57 | // QWS bits | ||
58 | enum screenSaverHint { | ||
59 | Disable = 0, | ||
60 | DisableLightOff = 1, | ||
61 | DisableSuspend = 2, | ||
62 | Enable = 100 | ||
63 | }; | ||
64 | |||
57 | signals: | 65 | signals: |
58 | void clientMoused(); | 66 | void clientMoused(); |
59 | void timeChanged(); | 67 | void timeChanged(); |
60 | void clockChanged( bool pm ); | 68 | void clockChanged( bool pm ); |
61 | void micChanged( bool muted ); | 69 | void micChanged( bool muted ); |
62 | void volumeChanged( bool muted ); | 70 | void volumeChanged( bool muted ); |
63 | void appMessage( const QCString& msg, const QByteArray& data); | 71 | void appMessage( const QCString& msg, const QByteArray& data); |
64 | void weekChanged( bool startOnMonday ); | 72 | void weekChanged( bool startOnMonday ); |
65 | void dateFormatChanged( DateFormat ); | 73 | void dateFormatChanged( DateFormat ); |
66 | void flush(); | 74 | void flush(); |
67 | void reload(); | 75 | void reload(); |
68 | 76 | ||
69 | private: | 77 | private: |
70 | void initTranslations(); | 78 | void initTranslations(); |
71 | void internalSetStyle(const QString&); | 79 | void internalSetStyle(const QString&); |
72 | 80 | ||
73 | private slots: | 81 | private slots: |
74 | void hideOrQuit(); | 82 | void hideOrQuit(); |
75 | void systemMessage( const QCString&, const QByteArray& ); | 83 | void systemMessage( const QCString&, const QByteArray& ); |
76 | void pidMessage( const QCString&, const QByteArray& ); | 84 | void pidMessage( const QCString&, const QByteArray& ); |
77 | void removeSenderFromStylusDict(); | 85 | void removeSenderFromStylusDict(); |
78 | protected: | 86 | protected: |
79 | virtual void restart(); | 87 | virtual void restart(); |
80 | virtual void shutdown(); | 88 | virtual void shutdown(); |
89 | void prepareForTermination(bool willrestart); | ||
81 | bool eventFilter( QObject*, QEvent* ); | 90 | bool eventFilter( QObject*, QEvent* ); |
82 | void timerEvent( QTimerEvent* ); | 91 | void timerEvent( QTimerEvent* ); |
83 | void raiseAppropriateWindow(); | 92 | void raiseAppropriateWindow(); |
84 | virtual void tryQuit(); | 93 | virtual void tryQuit(); |
85 | 94 | ||
86 | private: | 95 | private: |
87 | class Private; | 96 | class Private; |
88 | Private* d; | 97 | Private* d; |
89 | QCopChannel *m_sys; | 98 | QCopChannel *m_sys; |
90 | QCopChannel *m_pid; | 99 | QCopChannel *m_pid; |
91 | }; | 100 | }; |
92 | 101 | ||
93 | #endif | 102 | #endif |
diff --git a/x11/libqpe-x11/qt/qwindowsystem_qws.h b/x11/libqpe-x11/qt/qwindowsystem_qws.h index 7bc43c5..2652f5f 100644 --- a/x11/libqpe-x11/qt/qwindowsystem_qws.h +++ b/x11/libqpe-x11/qt/qwindowsystem_qws.h | |||
@@ -1,18 +1,35 @@ | |||
1 | #ifndef OPIE_QWINDOWSYSTEM_H | 1 | #ifndef OPIE_QWINDOWSYSTEM_H |
2 | #define OPIE_QWINDOWSYSTEM_H | 2 | #define OPIE_QWINDOWSYSTEM_H |
3 | 3 | ||
4 | class QWSScreenSaver; | ||
4 | class QWSServer { | 5 | class QWSServer { |
5 | public: | 6 | public: |
6 | QWSServer(){} | 7 | QWSServer(){} |
7 | ~QWSServer(){} | 8 | ~QWSServer(){} |
8 | static void sendKeyEvent(int, int, int, bool, bool ) { } | 9 | static void sendKeyEvent(int, int, int, bool, bool ) { } |
9 | struct KeyboardFilter { | 10 | struct KeyboardFilter { |
10 | }; | 11 | }; |
11 | static void setKeyboardFilter( KeyboardFilter* ) { | 12 | static void setKeyboardFilter( KeyboardFilter* ) { |
12 | 13 | ||
13 | } | 14 | } |
15 | static void setScreenSaver( QWSScreenSaver* ) { | ||
14 | 16 | ||
15 | }; | 17 | } |
18 | static void setScreenSaverInterval( int ) { | ||
19 | |||
20 | } | ||
21 | static void setScreenSaverIntervals( int[] ) { | ||
22 | |||
23 | } | ||
24 | static void screenSaverActivate( bool ) { | ||
16 | 25 | ||
26 | } | ||
27 | static void setDesktopBackground( const QImage& ) { | ||
28 | |||
29 | } | ||
30 | |||
31 | }; | ||
32 | struct QWSScreenSaver { | ||
33 | }; | ||
17 | 34 | ||
18 | #endif | 35 | #endif |