summaryrefslogtreecommitdiff
path: root/qt/qt-2.3.7.patch/qte237-all.patch
Side-by-side diff
Diffstat (limited to 'qt/qt-2.3.7.patch/qte237-all.patch') (more/less context) (ignore whitespace changes)
-rw-r--r--qt/qt-2.3.7.patch/qte237-all.patch11
1 files changed, 11 insertions, 0 deletions
diff --git a/qt/qt-2.3.7.patch/qte237-all.patch b/qt/qt-2.3.7.patch/qte237-all.patch
index 233996a..e6cf0a4 100644
--- a/qt/qt-2.3.7.patch/qte237-all.patch
+++ b/qt/qt-2.3.7.patch/qte237-all.patch
@@ -27,384 +27,395 @@ diff -ru qt-2.3.5_fresh/include/qapplication.h qt-2.3.5/include/qapplication.h
@@ -106,11 +113,19 @@
#ifndef QT_NO_PALETTE
static QPalette palette( const QWidget* = 0 );
static void setPalette( const QPalette &, bool informWidgets=FALSE,
+ const char* className = 0 ) QT_WEAK_SYMBOL;
+private:
+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
const char* className = 0 );
+public:
#endif
static QFont font( const QWidget* = 0 );
static void setFont( const QFont &, bool informWidgets=FALSE,
+ const char* className = 0 ) QT_WEAK_SYMBOL;
+private:
+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
const char* className = 0 );
+public:
static QFontMetrics fontMetrics();
QWidget *mainWidget() const;
@@ -207,7 +222,10 @@
void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
#ifndef QT_NO_QWS_MANAGER
static QWSDecoration &qwsDecoration();
- static void qwsSetDecoration( QWSDecoration *);
+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
+private:
+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
+public:
#endif
#endif
diff -ru qt-2.3.5_fresh/include/qfontdatabase.h qt-2.3.5/include/qfontdatabase.h
--- qt-2.3.5_fresh/include/qfontdatabase.h 2003-05-13 15:56:11.000000000 +0200
+++ qt-2.3.5/include/qfontdatabase.h 2003-05-13 15:58:18.000000000 +0200
@@ -59,6 +59,10 @@
class QDiskFont;
#endif
+#if !defined( QT_WEAK_SYMBOL )
+#define QT_WEAK_SYMBOL
+#endif
+
class QFontDatabasePrivate;
class Q_EXPORT QFontDatabase
@@ -67,9 +71,16 @@
QFontDatabase();
QStringList families( bool onlyForLocale = TRUE ) const;
+
+
QValueList<int> pointSizes( const QString &family,
const QString &style = QString::null,
- const QString &charSet = QString::null );
+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
+private:
+ QValueList<int> pointSizes_NonWeak( const QString &family,
+ const QString &style,
+ const QString &charSet );
+public:
QStringList styles( const QString &family,
const QString &charSet = QString::null ) const;
QStringList charSets( const QString &familyName,
diff -ru qt-2.3.5_fresh/src/kernel/qapplication.cpp qt-2.3.5/src/kernel/qapplication.cpp
--- qt-2.3.5_fresh/src/kernel/qapplication.cpp 2003-05-13 15:56:10.000000000 +0200
+++ qt-2.3.5/src/kernel/qapplication.cpp 2003-05-13 15:58:19.000000000 +0200
@@ -35,6 +35,8 @@
**
**********************************************************************/
+#define QT_WEAK_SYMBOL __attribute__(( weak ))
+
#include "qobjectlist.h"
#include "qobjectdict.h"
#include "qapplication.h"
@@ -933,11 +935,16 @@
#ifndef QT_NO_STYLE
void QApplication::setStyle( QStyle *style )
{
+ setStyle_NonWeak ( style );
+}
+
+void QApplication::setStyle_NonWeak( QStyle *style )
+{
QStyle* old = app_style;
- app_style = style;
if ( startingUp() ) {
delete old;
+ app_style = style;
return;
}
@@ -958,6 +965,8 @@
old->unPolish( qApp );
}
+ app_style = style;
+
// take care of possible palette requirements of certain gui
// styles. Do it before polishing the application since the style
// might call QApplication::setStyle() itself
@@ -1184,13 +1193,30 @@
\sa QWidget::setPalette(), palette(), QStyle::polish()
*/
-void QApplication::setPalette( const QPalette &palette, bool informWidgets,
+void QApplication::setPalette ( const QPalette &palette, bool informWidgets,
+ const char* className )
+{
+ setPalette_NonWeak ( palette, informWidgets, className );
+}
+
+void QApplication::setPalette_NonWeak ( const QPalette &palette, bool informWidgets,
const char* className )
{
QPalette pal = palette;
#ifndef QT_NO_STYLE
- if ( !startingUp() )
+ if ( !startingUp() ) {
qApp->style().polish( pal ); // NB: non-const reference
+ if ( className ) {
+ // if we just polished a class specific palette (this normally
+ // only called by qt_fix_tooltips - see below), we better re-
+ // polish the global palette. Some styles like liquid can get
+ // confused, because they can not detect if the polished palette
+ // is the global one or only a class specific one.
+ // (liquid uses this palette to calculate blending pixmaps)
+ QPalette p = qApp-> palette ( );
+ qApp->style().polish ( p );
+ }
+ }
#endif
bool all = FALSE;
if ( !className ) {
@@ -1275,6 +1301,12 @@
void QApplication::setFont( const QFont &font, bool informWidgets,
const char* className )
{
+ setFont_NonWeak ( font, informWidgets, className );
+}
+
+void QApplication::setFont_NonWeak( const QFont &font, bool informWidgets,
+ const char* className )
+{
bool all = FALSE;
if ( !className ) {
if ( !app_font ) {
Nur in qt-2.3.5/src/kernel: qapplication.cpp.orig.
diff -ru qt-2.3.5_fresh/src/kernel/qapplication.h qt-2.3.5/src/kernel/qapplication.h
--- qt-2.3.5_fresh/src/kernel/qapplication.h 2003-05-13 15:56:10.000000000 +0200
+++ qt-2.3.5/src/kernel/qapplication.h 2003-05-13 15:58:18.000000000 +0200
@@ -61,6 +61,10 @@
class QSemaphore;
#endif
+#if !defined( QT_WEAK_SYMBOL )
+#define QT_WEAK_SYMBOL
+#endif
+
// REMOVE IN 3.0 (just here for moc source compatibility)
#define QNonBaseApplication QApplication
@@ -85,7 +89,10 @@
#ifndef QT_NO_STYLE
static QStyle &style();
- static void setStyle( QStyle* );
+ static void setStyle( QStyle* ) QT_WEAK_SYMBOL;
+private:
+ static void setStyle_NonWeak( QStyle* );
+public:
#endif
#if 1 /* OBSOLETE */
enum ColorMode { NormalColors, CustomColors };
@@ -106,11 +113,19 @@
#ifndef QT_NO_PALETTE
static QPalette palette( const QWidget* = 0 );
static void setPalette( const QPalette &, bool informWidgets=FALSE,
+ const char* className = 0 ) QT_WEAK_SYMBOL;
+private:
+ static void setPalette_NonWeak( const QPalette &, bool informWidgets=FALSE,
const char* className = 0 );
+public:
#endif
static QFont font( const QWidget* = 0 );
static void setFont( const QFont &, bool informWidgets=FALSE,
+ const char* className = 0 ) QT_WEAK_SYMBOL;
+private:
+ static void setFont_NonWeak( const QFont &, bool informWidgets=FALSE,
const char* className = 0 );
+public:
static QFontMetrics fontMetrics();
QWidget *mainWidget() const;
@@ -207,7 +222,10 @@
void qwsSetCustomColors( QRgb *colortable, int start, int numColors );
#ifndef QT_NO_QWS_MANAGER
static QWSDecoration &qwsDecoration();
- static void qwsSetDecoration( QWSDecoration *);
+ static void qwsSetDecoration( QWSDecoration *) QT_WEAK_SYMBOL;
+private:
+ static void qwsSetDecoration_NonWeak( QWSDecoration *);
+public:
#endif
#endif
diff -ru qt-2.3.5_fresh/src/kernel/qapplication_qws.cpp qt-2.3.5/src/kernel/qapplication_qws.cpp
--- qt-2.3.5_fresh/src/kernel/qapplication_qws.cpp 2003-05-13 15:56:10.000000000 +0200
+++ qt-2.3.5/src/kernel/qapplication_qws.cpp 2003-05-13 15:58:18.000000000 +0200
@@ -2737,6 +2737,11 @@
*/
void QApplication::qwsSetDecoration( QWSDecoration *d )
{
+ qwsSetDecoration_NonWeak ( d );
+}
+
+void QApplication::qwsSetDecoration_NonWeak( QWSDecoration *d )
+{
if ( d ) {
delete qws_decoration;
qws_decoration = d;
Nur in qt-2.3.5/src/kernel: qapplication_qws.cpp.orig.
diff -ru qt-2.3.5_fresh/src/kernel/qfontdatabase.cpp qt-2.3.5/src/kernel/qfontdatabase.cpp
--- qt-2.3.5_fresh/src/kernel/qfontdatabase.cpp 2003-05-13 15:56:11.000000000 +0200
+++ qt-2.3.5/src/kernel/qfontdatabase.cpp 2003-05-13 15:58:18.000000000 +0200
@@ -35,6 +35,8 @@
**
**********************************************************************/
+#define QT_WEAK_SYMBOL __attribute__(( weak ))
+
#include "qfontdatabase.h"
#ifndef QT_NO_FONTDATABASE
@@ -2424,6 +2426,13 @@
const QString &style,
const QString &charSet )
{
+ return pointSizes_NonWeak ( family, style, charSet );
+}
+
+QValueList<int> QFontDatabase::pointSizes_NonWeak ( const QString &family,
+ const QString &style,
+ const QString &charSet )
+{
QString cs( charSet );
if ( charSet.isEmpty() ) {
QStringList lst = charSets( family );
diff -ru qt-2.3.5_fresh/src/kernel/qfontdatabase.h qt-2.3.5/src/kernel/qfontdatabase.h
--- qt-2.3.5_fresh/src/kernel/qfontdatabase.h 2003-05-13 15:56:11.000000000 +0200
+++ qt-2.3.5/src/kernel/qfontdatabase.h 2003-05-13 15:58:18.000000000 +0200
@@ -59,6 +59,10 @@
class QDiskFont;
#endif
+#if !defined( QT_WEAK_SYMBOL )
+#define QT_WEAK_SYMBOL
+#endif
+
class QFontDatabasePrivate;
class Q_EXPORT QFontDatabase
@@ -67,9 +71,16 @@
QFontDatabase();
QStringList families( bool onlyForLocale = TRUE ) const;
+
+
QValueList<int> pointSizes( const QString &family,
const QString &style = QString::null,
- const QString &charSet = QString::null );
+ const QString &charSet = QString::null ) QT_WEAK_SYMBOL;
+private:
+ QValueList<int> pointSizes_NonWeak( const QString &family,
+ const QString &style,
+ const QString &charSet );
+public:
QStringList styles( const QString &family,
const QString &charSet = QString::null ) const;
QStringList charSets( const QString &familyName,
diff -ru qt-2.3.5_fresh/src/kernel/qgfxraster_qws.cpp qt-2.3.5/src/kernel/qgfxraster_qws.cpp
--- qt-2.3.5_fresh/src/kernel/qgfxraster_qws.cpp 2003-05-13 15:56:11.000000000 +0200
+++ qt-2.3.5/src/kernel/qgfxraster_qws.cpp 2003-05-13 15:58:18.000000000 +0200
@@ -4205,7 +4205,7 @@
setAlphaType(IgnoreAlpha);
if ( w <= 0 || h <= 0 || !ncliprect ) return;
GFX_START(QRect(rx+xoffs, ry+yoffs, w+1, h+1))
-#ifdef QWS_EXPERIMENTAL_FASTPATH
+#if 0 // def QWS_EXPERIMENTAL_FASTPATH !! this is crashing HancomWord on OZ !!
// ### fix for 8bpp
// This seems to be reliable now, at least for 16bpp
Nur in qt-2.3.5/src/kernel: qgfxraster_qws.cpp.orig.
diff -ru qt-2.3.5_fresh/src/kernel/qwindowsystem_qws.cpp qt-2.3.5/src/kernel/qwindowsystem_qws.cpp
--- qt-2.3.5_fresh/src/kernel/qwindowsystem_qws.cpp 2003-05-13 15:56:11.000000000 +0200
+++ qt-2.3.5/src/kernel/qwindowsystem_qws.cpp 2003-05-13 15:58:19.000000000 +0200
@@ -843,6 +843,18 @@
{
}
+static void catchSegvSignal( int )
+{
+#ifndef QT_NO_QWS_KEYBOARD
+ if ( qwsServer )
+ qwsServer->closeKeyboard();
+#endif
+ QWSServer::closedown();
+ fprintf(stderr, "Segmentation fault.\n");
+ exit(1);
+}
+
+
/*!
\class QWSServer qwindowsystem_qws.h
\brief Server-specific functionality in Qt/Embedded
@@ -912,6 +924,7 @@
}
signal(SIGPIPE, ignoreSignal); //we get it when we read
+ signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash
#endif
focusw = 0;
mouseGrabber = 0;
diff -ru qt-2.3.5_fresh/src/widgets/qcommonstyle.cpp qt-2.3.5/src/widgets/qcommonstyle.cpp
--- qt-2.3.5_fresh/src/widgets/qcommonstyle.cpp 2003-05-13 15:56:12.000000000 +0200
+++ qt-2.3.5/src/widgets/qcommonstyle.cpp 2003-05-13 15:58:19.000000000 +0200
@@ -566,7 +566,7 @@
bool enabled, bool active )
{
#ifndef QT_NO_MENUBAR
-#ifndef QT_NO_STYLE_SGI
+#if 1 // #ifndef QT_NO_STYLE_SGI
if (draw_menu_bar_impl != 0) {
QDrawMenuBarItemImpl impl = draw_menu_bar_impl;
(this->*impl)(p, x, y, w, h, mi, g, enabled, active);
Nur in qt-2.3.5/src/widgets: qcommonstyle.cpp.orig.
diff -ru qt-2.3.5_fresh/src/widgets/qlistview.cpp qt-2.3.5/src/widgets/qlistview.cpp
--- qt-2.3.5_fresh/src/widgets/qlistview.cpp 2003-05-13 15:56:12.000000000 +0200
+++ qt-2.3.5/src/widgets/qlistview.cpp 2003-05-13 15:58:18.000000000 +0200
@@ -4968,9 +4968,9 @@
l = l->childItem ? l->childItem : l->siblingItem;
if ( l && l->height() )
- s.setHeight( s.height() + 10 * l->height() );
- else
- s.setHeight( s.height() + 140 );
+ s.setHeight( s.height() + 4 /*10*/ * l->height() );
+ else // ^v much too big for handhelds
+ s.setHeight( s.height() + 30 /*140*/ );
if ( s.width() > s.height() * 3 )
s.setHeight( s.width() / 3 );
diff -ru qt-2.3.5_fresh/src/widgets/qtoolbutton.cpp qt-2.3.5/src/widgets/qtoolbutton.cpp
--- qt-2.3.5_fresh/src/widgets/qtoolbutton.cpp 2003-05-13 15:56:12.000000000 +0200
+++ qt-2.3.5/src/widgets/qtoolbutton.cpp 2003-05-13 15:58:18.000000000 +0200
@@ -230,7 +230,7 @@
else
QToolTip::add( this, textLabel );
}
-#endif
+#endif
}
@@ -324,12 +324,12 @@
QPixmap pm = iconSet(TRUE).pixmap(QIconSet::Large, QIconSet::Normal);
w = pm.width();
h = pm.height();
- if ( w < 32 )
- w = 32;
- if ( h < 32 )
- h = 32;
+ if ( w < 24 )
+ w = 24;
+ if ( h < 24 )
+ h = 24;
} else {
- w = h = 16;
+ w = h = 14;
QPixmap pm = iconSet(TRUE).pixmap(QIconSet::Small, QIconSet::Normal);
w = pm.width();
h = pm.height();
+--- qt-2.3.7/src/kernel/qkeyboard_qws.cpp~c7xxrotate 2003-07-16 18:20:25.000000000 -0700
++++ qt-2.3.7/src/kernel/qkeyboard_qws.cpp 2003-12-07 15:54:10.000000000 -0800
+@@ -238,7 +238,7 @@
+ { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 63
+ { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 64
+ { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 65
+- { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 66
++ { Qt::Key_F14, 0xffff , 0xffff , 0xffff }, // 66
+ { Qt::Key_Meta, 0xffff , 0xffff , 0xffff }, // 67
+ { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 68
+ { Qt::Key_unknown, 0xffff , 0xffff , 0xffff }, // 69