summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--Rules.make3
-rw-r--r--config.in4
-rw-r--r--library/qpeapplication.h2
-rw-r--r--library/qt_override.cpp9
4 files changed, 17 insertions, 1 deletions
diff --git a/Rules.make b/Rules.make
index 7fa0178..568f6cf 100644
--- a/Rules.make
+++ b/Rules.make
@@ -45,12 +45,15 @@ ifeq ($(CONFIG_SQL_PIM_BACKEND),y)
45else 45else
46 echo ENABLE_SQL_PIM_BACKEND=n >> $@ 46 echo ENABLE_SQL_PIM_BACKEND=n >> $@
47endif 47endif
48ifeq ($(CONFIG_OPIE_NO_OVERRIDE_QT),y) 48ifeq ($(CONFIG_OPIE_NO_OVERRIDE_QT),y)
49 echo CONFIG += no-override >> $@ 49 echo CONFIG += no-override >> $@
50endif 50endif
51ifeq ($(CONFIG_OPIE_NO_ERASERECT_FIX),y)
52 echo DEFINES += OPIE_NO_ERASE_RECT_HACKFIX >> $@
53endif
51ifeq ($(CONFIG_OPIE_NO_BUILTIN_SHUTDOWN),y) 54ifeq ($(CONFIG_OPIE_NO_BUILTIN_SHUTDOWN),y)
52 echo DEFINES += OPIE_NO_BUILTIN_SHUTDOWN >> $@ 55 echo DEFINES += OPIE_NO_BUILTIN_SHUTDOWN >> $@
53endif 56endif
54ifeq ($(CONFIG_OPIE_NO_BUILTIN_CALIBRATE),y) 57ifeq ($(CONFIG_OPIE_NO_BUILTIN_CALIBRATE),y)
55 echo DEFINES += OPIE_NO_BUILTIN_CALIBRATE >> $@ 58 echo DEFINES += OPIE_NO_BUILTIN_CALIBRATE >> $@
56endif 59endif
diff --git a/config.in b/config.in
index 99341e6..124bc2a 100644
--- a/config.in
+++ b/config.in
@@ -103,12 +103,16 @@ endmenu
103 103
104menu "Configuration" 104menu "Configuration"
105config OPIE_NO_OVERRIDE_QT 105config OPIE_NO_OVERRIDE_QT
106 boolean "Build Opie against an unpatched version of Qt" 106 boolean "Build Opie against an unpatched version of Qt"
107 default n 107 default n
108 108
109config OPIE_NO_ERASERECT_FIX
110 boolean "Disable Fixup eraseRect for HancomMobileWord,neocal.. to make libopiecore work on Sharps libqpe"
111 default n
112
109config OPIE_NO_BUILTIN_SHUTDOWN 113config OPIE_NO_BUILTIN_SHUTDOWN
110 boolean "Disable the built in shutdown application" 114 boolean "Disable the built in shutdown application"
111 default y 115 default y
112 116
113config OPIE_NO_BUILTIN_CALIBRATE 117config OPIE_NO_BUILTIN_CALIBRATE
114 boolean "Disable the built in calibrate application" 118 boolean "Disable the built in calibrate application"
diff --git a/library/qpeapplication.h b/library/qpeapplication.h
index 8c85ad0..d2782e4 100644
--- a/library/qpeapplication.h
+++ b/library/qpeapplication.h
@@ -161,15 +161,17 @@ protected:
161 virtual void restart(); 161 virtual void restart();
162 virtual void shutdown(); 162 virtual void shutdown();
163 bool eventFilter( QObject *, QEvent * ); 163 bool eventFilter( QObject *, QEvent * );
164 void timerEvent( QTimerEvent * ); 164 void timerEvent( QTimerEvent * );
165 bool raiseAppropriateWindow(); 165 bool raiseAppropriateWindow();
166 virtual void tryQuit(); 166 virtual void tryQuit();
167#ifndef OPIE_NO_ERASE_RECT_HACKFIX
167#if QT_VERSION > 233 168#if QT_VERSION > 233
168 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) 169 virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!)
169#endif 170#endif
171#endif
170private: 172private:
171#ifndef QT_NO_TRANSLATION 173#ifndef QT_NO_TRANSLATION
172 void installTranslation( const QString& baseName ); 174 void installTranslation( const QString& baseName );
173#endif 175#endif
174 void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); 176 void mapToDefaultAction( QWSKeyEvent *ke, int defKey );
175 void processQCopFile(); 177 void processQCopFile();
diff --git a/library/qt_override.cpp b/library/qt_override.cpp
index 4d1f475..56f82d7 100644
--- a/library/qt_override.cpp
+++ b/library/qt_override.cpp
@@ -9,29 +9,34 @@
9#include <sys/param.h> // for toolchains with old libc headers 9#include <sys/param.h> // for toolchains with old libc headers
10 10
11#include "qt_override_p.h" 11#include "qt_override_p.h"
12 12
13#if QT_VERSION > 233 13#if QT_VERSION > 233
14 14
15#ifndef OPIE_NO_ERASE_RECT_HACKFIX
15struct color_fix_t { 16struct color_fix_t {
16 char *m_app; 17 char *m_app;
17 char *m_class; 18 char *m_class;
18 char *m_name; 19 char *m_name;
19 QColorGroup::ColorRole m_set; 20 QColorGroup::ColorRole m_set;
20 QColorGroup::ColorRole m_get; 21 QColorGroup::ColorRole m_get;
21}; 22};
22 23
23#ifndef OPIE_NO_OVERRIDE_QT 24
24 25
25static const color_fix_t apps_that_need_special_colors [] = { 26static const color_fix_t apps_that_need_special_colors [] = {
26 { "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base }, 27 { "HancomMobileWord", "HTextEdit", 0, QColorGroup::Background, QColorGroup::Base },
27 { "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base }, 28 { "neocal", "Display", 0, QColorGroup::Background, QColorGroup::Base },
28 29
29 { 0, 0, 0, QColorGroup::Base, QColorGroup::Base } 30 { 0, 0, 0, QColorGroup::Base, QColorGroup::Base }
30}; 31};
31 32
33#endif
34
35#ifndef OPIE_NO_OVERRIDE_QT
36
32static const char * const apps_that_need_pointsizes_times_10 [] = { 37static const char * const apps_that_need_pointsizes_times_10 [] = {
33 "HancomMobileWord", 38 "HancomMobileWord",
34 "hancomsheet", 39 "hancomsheet",
35 "HancomPresenterViewer", 40 "HancomPresenterViewer",
36 41
37 0 42 0
@@ -86,12 +91,13 @@ extern void __gmon_start__ ( )
86{ 91{
87} 92}
88 93
89} 94}
90 95
91 96
97#ifndef OPIE_NO_ERASE_RECT_HACKFIX
92// Fix for apps, that use QPainter::eraseRect() which doesn't work with styles 98// Fix for apps, that use QPainter::eraseRect() which doesn't work with styles
93// that set a background pixmap (it would be easier to fix eraseRect(), but 99// that set a background pixmap (it would be easier to fix eraseRect(), but
94// TT made it an inline ...) 100// TT made it an inline ...)
95 101
96void QPEApplication::polish ( QWidget *w ) 102void QPEApplication::polish ( QWidget *w )
97{ 103{
@@ -107,12 +113,13 @@ void QPEApplication::polish ( QWidget *w )
107 w-> setPalette ( pal ); 113 w-> setPalette ( pal );
108 } 114 }
109 } 115 }
110#endif 116#endif
111 QApplication::polish ( w ); 117 QApplication::polish ( w );
112} 118}
119#endif
113 120
114 121
115#ifndef OPIE_NO_OVERRIDE_QT 122#ifndef OPIE_NO_OVERRIDE_QT
116// Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes 123// Fix for the binary incompatibility that TT introduced in Qt/E 2.3.4 -- point sizes
117// were multiplied by 10 (which was incorrect) 124// were multiplied by 10 (which was incorrect)
118 125