diff options
author | lofi <lofi@FreeBSD.org> | 2006-03-21 20:29:51 +0000 |
---|---|---|
committer | lofi <lofi@FreeBSD.org> | 2006-03-21 20:29:51 +0000 |
commit | 28c8a406d2458a75ef614dbc60ac4a5daf01b9df (patch) | |
tree | 1243c2e1c83adf715fbf092d5a5f06d83b953c32 /x11-toolkits | |
parent | 060451f8fa30e3e6abfe847af3c164b11c2374c9 (diff) | |
download | FreeBSD-ports-28c8a406d2458a75ef614dbc60ac4a5daf01b9df.zip FreeBSD-ports-28c8a406d2458a75ef614dbc60ac4a5daf01b9df.tar.gz |
Update to 3.3.6
Diffstat (limited to 'x11-toolkits')
-rw-r--r-- | x11-toolkits/qt33/Makefile | 2 | ||||
-rw-r--r-- | x11-toolkits/qt33/distinfo | 6 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/0051-qtoolbar_77047.patch | 29 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/0053-png-gamma-fix.diff | 50 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/0064-fix_gcc4.patch | 21 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/0065-fix_werror_with_gcc4.patch | 137 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/0066-fcsort2fcmatch.patch | 236 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/0067-nofclist.patch | 378 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/patch-src_tools-qsettings.cpp | 5 | ||||
-rw-r--r-- | x11-toolkits/qt33/files/patch-src_widgets-qlistview.cpp | 10 |
10 files changed, 6 insertions, 868 deletions
diff --git a/x11-toolkits/qt33/Makefile b/x11-toolkits/qt33/Makefile index a3dd052..afd4e3d 100644 --- a/x11-toolkits/qt33/Makefile +++ b/x11-toolkits/qt33/Makefile @@ -7,7 +7,7 @@ # PORTNAME= qt -PORTVERSION= 3.3.5 +PORTVERSION= 3.3.6 CATEGORIES?= x11-toolkits ipv6 MASTER_SITES= ${MASTER_SITE_QT} DISTNAME= qt-x11-free-${PORTVERSION} diff --git a/x11-toolkits/qt33/distinfo b/x11-toolkits/qt33/distinfo index d64e020..077f065 100644 --- a/x11-toolkits/qt33/distinfo +++ b/x11-toolkits/qt33/distinfo @@ -1,3 +1,3 @@ -MD5 (KDE/qt-x11-free-3.3.5.tar.bz2) = 05d04688c0c0230ed54e89102d689ca4 -SHA256 (KDE/qt-x11-free-3.3.5.tar.bz2) = aac89e862c74b2f3ead768e50e9fa7ada1e4225fe9d1d9e05723a3279259eb96 -SIZE (KDE/qt-x11-free-3.3.5.tar.bz2) = 14431679 +MD5 (KDE/qt-x11-free-3.3.6.tar.bz2) = dc1384c03ac08af21f6fefab32d982cf +SHA256 (KDE/qt-x11-free-3.3.6.tar.bz2) = 04f12083f6a6f7a8fd4d34a6c1efd37db76a67580c424f4fb7b7c43c0565e6ae +SIZE (KDE/qt-x11-free-3.3.6.tar.bz2) = 14565843 diff --git a/x11-toolkits/qt33/files/0051-qtoolbar_77047.patch b/x11-toolkits/qt33/files/0051-qtoolbar_77047.patch deleted file mode 100644 index 40fbfdc..0000000 --- a/x11-toolkits/qt33/files/0051-qtoolbar_77047.patch +++ /dev/null @@ -1,29 +0,0 @@ -qt-bugs@ issue : 54405 -applied: no -author: Waldo Bastian <bastian@kde.org> - -KToolBarButton always uses a non-zero popup-delay because we would like -to draw the menu-indicator on the toolbar buttons ourselves. Unfortunately -that means that the menu-item in the toolbar-extension menu does not include -any sub-menu either. With this patch, KToolBarButton can use a popup-delay -of -1 so that we can still draw our own popup indicator _AND_ get the sub-menu -in the toolbar-extension menu. - -This fixes http://bugs.kde.org/show_bug.cgi?id=77047 - -Index: widgets/qtoolbar.cpp -=================================================================== -RCS file: /home/kde/qt-copy/src/widgets/qtoolbar.cpp,v -retrieving revision 1.56 -diff -u -p -r1.56 qtoolbar.cpp ---- src/widgets/qtoolbar.cpp 21 Dec 2003 00:48:21 -0000 1.56 -+++ src/widgets/qtoolbar.cpp 12 Aug 2004 11:42:21 -0000 -@@ -648,7 +648,7 @@ void QToolBar::createPopup() - QString s = b->textLabel(); - if ( s.isEmpty() ) - s = b->text(); -- if ( b->popup() && b->popupDelay() == 0 ) -+ if ( b->popup() && b->popupDelay() <= 0 ) - id = d->extensionPopup->insertItem( b->iconSet(), s, b->popup() ); - else - id = d->extensionPopup->insertItem( b->iconSet(), s, b, SLOT( emulateClick() ) ) ; diff --git a/x11-toolkits/qt33/files/0053-png-gamma-fix.diff b/x11-toolkits/qt33/files/0053-png-gamma-fix.diff deleted file mode 100644 index 98346bd..0000000 --- a/x11-toolkits/qt33/files/0053-png-gamma-fix.diff +++ /dev/null @@ -1,50 +0,0 @@ -qt-bugs@ issue : N55198 -bugs.kde.org number : 61829 -applied: no -author: Brad Hards <bradh@frogmouth.net> - -This patch fixes a bug report that was logged against KDE for not -handling gamma correctly (http://bugs.kde.org/show_bug.cgi?id=61829). - -Using the example/showimg/showimg example in qt-3.3, the two test -case images (linked in the original bug report) look the same. -That isn't the case with a non-Qt based application, such as Mozilla. - -The gamma-yes.png file should look a lot lighter in the blue section. - -The problem is in src/kernel/qpngio.cpp::setup_qt() - if ( screen_gamma != 0.0 && png_get_valid(png_ptr, info_ptr,PNG_INFO_gAMA) ) { - double file_gamma; - png_get_gAMA(png_ptr, info_ptr, &file_gamma); - png_set_gamma( png_ptr, screen_gamma, file_gamma ); - } -which is wrong, because file gamma needs to be handled whether or not -there is a non-default screen gamma value. - - ---- src/kernel/qpngio.cpp 2 Mar 2004 12:50:32 -0000 1.55 -+++ src/kernel/qpngio.cpp 25 Aug 2004 08:44:01 -0000 -@@ -109,12 +109,20 @@ void CALLBACK_CALL_TYPE qpiw_flush_fn( p - - static - void setup_qt( QImage& image, png_structp png_ptr, png_infop info_ptr, float screen_gamma=0.0 ) - { -- if ( screen_gamma != 0.0 && png_get_valid(png_ptr, info_ptr, PNG_INFO_gAMA) ) { -+ if ( 0.0 == screen_gamma ) -+ // PNG docs say this is a good guess for a PC monitor -+ // in a dark room -+ screen_gamma = 2.2; -+ if ( png_get_valid(png_ptr, info_ptr, PNG_INFO_gAMA) ) { -+ // the file has a gAMA attribute - double file_gamma; -- png_get_gAMA(png_ptr, info_ptr, &file_gamma); -- png_set_gamma( png_ptr, screen_gamma, file_gamma ); -+ if ( png_get_gAMA(png_ptr, info_ptr, &file_gamma)) -+ png_set_gamma( png_ptr, screen_gamma, file_gamma ); -+ } else { -+ // no file gamma, use a reasonable default -+ png_set_gamma( png_ptr, screen_gamma, 0.45455 ); - } - - png_uint_32 width; - png_uint_32 height; diff --git a/x11-toolkits/qt33/files/0064-fix_gcc4.patch b/x11-toolkits/qt33/files/0064-fix_gcc4.patch deleted file mode 100644 index f10bc98..0000000 --- a/x11-toolkits/qt33/files/0064-fix_gcc4.patch +++ /dev/null @@ -1,21 +0,0 @@ -qt-bugs@ issue : none yet -bugs.kde.org number : none -applied: no -author: Dirk Mueller <mueller@kde.org> - -This fixes Qt buildkey generation to use the same buildkey for all gcc 4.0.x compilers, because -they produce binary compatible code. This way one doesn't have to rebuild all of Qt and all -Qt plugins just because of the daily gcc version bump. - ---- configure.orig 2005-07-29 17:04:29.000000000 +0200 -+++ configure 2005-07-29 17:04:54.000000000 +0200 -@@ -3030,6 +3030,9 @@ - *3.*) - COMPILER_VERSION="3.*" - ;; -+ *4.0*) -+ COMPILER_VERSION="4.0*" -+ ;; - *) - ;; - esac diff --git a/x11-toolkits/qt33/files/0065-fix_werror_with_gcc4.patch b/x11-toolkits/qt33/files/0065-fix_werror_with_gcc4.patch deleted file mode 100644 index 7e6a799..0000000 --- a/x11-toolkits/qt33/files/0065-fix_werror_with_gcc4.patch +++ /dev/null @@ -1,137 +0,0 @@ -qt-bugs@ issue : none yet -bugs.kde.org number : none -applied: no -author: Dirk Mueller <mueller@kde.org> - - -Index: src/kernel/qasyncimageio.h -=================================================================== ---- src/kernel/qasyncimageio.h (revision 467438) -+++ src/kernel/qasyncimageio.h (working copy) -@@ -44,6 +44,9 @@ - - #ifndef QT_NO_ASYNC_IMAGE_IO - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif - - class Q_EXPORT QImageConsumer { - public: -Index: src/kernel/qucomextra_p.h -=================================================================== ---- src/kernel/qucomextra_p.h (revision 467438) -+++ src/kernel/qucomextra_p.h (working copy) -@@ -54,6 +54,9 @@ - #include <private/qucom_p.h> - #endif // QT_H - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif - - class QVariant; - -Index: src/kernel/qnetworkprotocol.h -=================================================================== ---- src/kernel/qnetworkprotocol.h (revision 467438) -+++ src/kernel/qnetworkprotocol.h (working copy) -@@ -47,6 +47,10 @@ - - #ifndef QT_NO_NETWORKPROTOCOL - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif -+ - class QNetworkProtocol; - class QNetworkOperation; - class QTimer; -Index: src/kernel/qimageformatinterface_p.h -=================================================================== ---- src/kernel/qimageformatinterface_p.h (revision 467438) -+++ src/kernel/qimageformatinterface_p.h (working copy) -@@ -40,6 +40,9 @@ - #include <private/qcom_p.h> - #endif // QT_H - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif - - // - // W A R N I N G -Index: src/dialogs/qfiledialog.h -=================================================================== ---- src/dialogs/qfiledialog.h (revision 467438) -+++ src/dialogs/qfiledialog.h (working copy) -@@ -58,6 +58,10 @@ - #include "qurlinfo.h" - #endif // QT_H - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif -+ - #ifndef QT_NO_FILEDIALOG - - class Q_EXPORT QFileIconProvider : public QObject -Index: src/tools/qucom_p.h -=================================================================== ---- src/tools/qucom_p.h (revision 467438) -+++ src/tools/qucom_p.h (working copy) -@@ -59,6 +59,10 @@ - #undef check - #endif - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif -+ - struct QUObject; - struct QUInterfaceDescription; - struct QUnknownInterface; -Index: src/tools/qcom_p.h -=================================================================== ---- src/tools/qcom_p.h (revision 467438) -+++ src/tools/qcom_p.h (working copy) -@@ -53,6 +53,10 @@ - #include "quuid.h" - #endif // QT_H - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif -+ - #ifndef QT_NO_COMPONENT - - class QObject; -Index: src/widgets/qtooltip.h -=================================================================== ---- src/widgets/qtooltip.h (revision 467438) -+++ src/widgets/qtooltip.h (working copy) -@@ -42,6 +42,9 @@ - - #ifndef QT_NO_TOOLTIP - -+#if __GNUC__ - 0 > 3 -+#pragma GCC system_header -+#endif - - class QTipManager; - class QIconViewToolTip; -Index: src/widgets/qmainwindow.cpp -=================================================================== ---- src/widgets/qmainwindow.cpp (revision 467438) -+++ src/widgets/qmainwindow.cpp (working copy) -@@ -287,8 +287,9 @@ - { - public: - QHideToolTip( QWidget *parent ) : QToolTip( parent ) {} -+ ~QHideToolTip() {} - -- void maybeTip( const QPoint &pos ); -+ virtual void maybeTip( const QPoint &pos ); - }; - #endif - diff --git a/x11-toolkits/qt33/files/0066-fcsort2fcmatch.patch b/x11-toolkits/qt33/files/0066-fcsort2fcmatch.patch deleted file mode 100644 index c379f7b..0000000 --- a/x11-toolkits/qt33/files/0066-fcsort2fcmatch.patch +++ /dev/null @@ -1,236 +0,0 @@ -qt-bugs@ issue : none yet -bugs.kde.org number : none -applied: no -author: Lubos Lunak <l.lunak@kde.org> - -When finding a matching fontconfig font, try first FcFontMatch() before -the noticeably more expensive FcFontSort(). Usually the first hit is enough, -so there's no need to list all matching fonts. - -Note that this patch apparently triggers a bug in certain fontconfig versions -(e.g. 2.2.99 or 2.3.90 crash, while e.g. 2.3.2 or 2.3.92 seem to work fine). - ---- src/kernel/qfontdatabase_x11.cpp.sav 2005-12-01 15:18:06.000000000 +0100 -+++ src/kernel/qfontdatabase_x11.cpp 2005-12-01 18:17:33.000000000 +0100 -@@ -1787,106 +1787,137 @@ static QFontEngine *loadFontConfigFont(c - FcCharSetDestroy(cs); - } - -- FcResult result; -- FcFontSet *fs = FcFontSort(0, pattern, FcFalse, 0, &result); -- FcPatternDestroy(pattern); -- if (!fs) -- return 0; -+ QFontEngine *fe = 0; -+ -+ for( int jj = 0; jj < 2; ++jj ) { -+ bool use_fontsort = ( jj == 1 ); -+ -+ FcResult result; -+ FcFontSet *fs; -+ FcPattern *fsp; -+ if( use_fontsort ) { -+ fs = FcFontSort(0, pattern, FcFalse, 0, &result); -+ if (!fs) -+ continue; -+ } else { -+ fsp = FcFontMatch(0, pattern, &result); -+ if (!fsp) -+ continue; -+ } - - #ifdef FONT_MATCH_DEBUG -- printf("fontset contains:\n"); -- for (int i = 0; i < fs->nfont; ++i) { -- FcPattern *test = fs->fonts[i]; -- FcChar8 *fam; -- FcPatternGetString(test, FC_FAMILY, 0, &fam); -- printf(" %s\n", fam); -- } -+ if( use_fontsort ) { -+ printf("fontset contains:\n"); -+ for (int i = 0; i < fs->nfont; ++i) { -+ FcPattern *test = fs->fonts[i]; -+ FcChar8 *fam; -+ FcPatternGetString(test, FC_FAMILY, 0, &fam); -+ printf(" %s\n", fam); -+ } -+ } else { -+ printf("fontmatch:"); -+ FcChar8 *fam; -+ FcPatternGetString(fsp, FC_FAMILY, 0, &fam); -+ printf(" %s\n", fam); -+ } - #endif - -- int ch = sampleCharacter(script).unicode(); -- double size_value = request.pixelSize; -- if ( size_value > MAXFONTSIZE_XFT ) -- size_value = MAXFONTSIZE_XFT; -- -- QFontEngine *fe = 0; -+ int ch = sampleCharacter(script).unicode(); -+ double size_value = request.pixelSize; -+ if ( size_value > MAXFONTSIZE_XFT ) -+ size_value = MAXFONTSIZE_XFT; - -- for (int i = 0; i < fs->nfont; ++i) { -- FcPattern *font = fs->fonts[i]; -- FcCharSet *cs; -- FcResult res = FcPatternGetCharSet(font, FC_CHARSET, 0, &cs); -- if (res != FcResultMatch) -- continue; -- if (!FcCharSetHasChar(cs, ch)) -- continue; -- FcBool scalable; -- res = FcPatternGetBool(font, FC_SCALABLE, 0, &scalable); -- if (res != FcResultMatch || !scalable) { -- int pixelSize; -- res = FcPatternGetInteger(font, FC_PIXEL_SIZE, 0, &pixelSize); -- if (res != FcResultMatch || QABS((size_value-pixelSize)/size_value) > 0.2) -- continue; -- } -+ int cnt = use_fontsort ? fs->nfont : 1; -+ -+ for (int i = 0; i < cnt; ++i) { -+ FcPattern *font = use_fontsort ? fs->fonts[i] : fsp; -+ FcCharSet *cs; -+ FcResult res = FcPatternGetCharSet(font, FC_CHARSET, 0, &cs); -+ if (res != FcResultMatch) -+ continue; -+ if (!FcCharSetHasChar(cs, ch)) -+ continue; -+ FcBool scalable; -+ res = FcPatternGetBool(font, FC_SCALABLE, 0, &scalable); -+ if (res != FcResultMatch || !scalable) { -+ int pixelSize; -+ res = FcPatternGetInteger(font, FC_PIXEL_SIZE, 0, &pixelSize); -+ if (res != FcResultMatch || QABS((size_value-pixelSize)/size_value) > 0.2) -+ continue; -+ } - -- XftPattern *pattern = XftPatternDuplicate(font); -- // add properties back in as the font selected from the list doesn't contain them. -- addPatternProps(pattern, key, FALSE, TRUE, fp, request); -+ XftPattern *pattern = XftPatternDuplicate(font); -+ // add properties back in as the font selected from the list doesn't contain them. -+ addPatternProps(pattern, key, FALSE, TRUE, fp, request); - -- XftPattern *result = -- XftFontMatch( QPaintDevice::x11AppDisplay(), fp->screen, pattern, &res ); -- XftPatternDestroy(pattern); -+ XftPattern *result = -+ XftFontMatch( QPaintDevice::x11AppDisplay(), fp->screen, pattern, &res ); -+ XftPatternDestroy(pattern); - -- // We pass a duplicate to XftFontOpenPattern because either xft font -- // will own the pattern after the call or the pattern will be -- // destroyed. -- XftPattern *dup = XftPatternDuplicate( result ); -- XftFont *xftfs = XftFontOpenPattern( QPaintDevice::x11AppDisplay(), dup ); -+ // We pass a duplicate to XftFontOpenPattern because either xft font -+ // will own the pattern after the call or the pattern will be -+ // destroyed. -+ XftPattern *dup = XftPatternDuplicate( result ); -+ XftFont *xftfs = XftFontOpenPattern( QPaintDevice::x11AppDisplay(), dup ); - -- if ( !xftfs ) { -- // Xft couldn't find a font? -- qDebug("couldn't open fontconfigs chosen font with Xft!!!"); -- } else { -- fe = new QFontEngineXft( xftfs, result, 0 ); -- if (fp->paintdevice -- && QPaintDeviceMetrics(fp->paintdevice).logicalDpiY() != QPaintDevice::x11AppDpiY()) { -- double px; -- XftPatternGetDouble(result, XFT_PIXEL_SIZE, 0, &px); -- scale = request.pixelSize/px; -- } -- fe->setScale( scale ); -- fe->fontDef = request; -- if ( script != QFont::Unicode && !canRender(fe, script) ) { -- FM_DEBUG( " WARN: font loaded cannot render sample 0x%04x", ch ); -- delete fe; -- fe = 0; -+ if ( !xftfs ) { -+ // Xft couldn't find a font? -+ qDebug("couldn't open fontconfigs chosen font with Xft!!!"); -+ } else { -+ fe = new QFontEngineXft( xftfs, result, 0 ); -+ if (fp->paintdevice -+ && QPaintDeviceMetrics(fp->paintdevice).logicalDpiY() != QPaintDevice::x11AppDpiY()) { -+ double px; -+ XftPatternGetDouble(result, XFT_PIXEL_SIZE, 0, &px); -+ scale = request.pixelSize/px; -+ } -+ fe->setScale( scale ); -+ fe->fontDef = request; -+ if ( script != QFont::Unicode && !canRender(fe, script) ) { -+ FM_DEBUG( " WARN: font loaded cannot render sample 0x%04x", ch ); -+ delete fe; -+ fe = 0; -+ } - } -- } -- if (fe) { -- QFontEngineXft *xft = (QFontEngineXft *)fe; -- char *family; -- if (XftPatternGetString(xft->pattern(), XFT_FAMILY, 0, &family) == XftResultMatch) -- xft->fontDef.family = QString::fromUtf8(family); -+ if (fe) { -+ QFontEngineXft *xft = (QFontEngineXft *)fe; -+ char *family; -+ if (XftPatternGetString(xft->pattern(), XFT_FAMILY, 0, &family) == XftResultMatch) -+ xft->fontDef.family = QString::fromUtf8(family); - -- double px; -- if (XftPatternGetDouble(xft->pattern(), XFT_PIXEL_SIZE, 0, &px) == XftResultMatch) -- xft->fontDef.pixelSize = qRound(px); -+ double px; -+ if (XftPatternGetDouble(xft->pattern(), XFT_PIXEL_SIZE, 0, &px) == XftResultMatch) -+ xft->fontDef.pixelSize = qRound(px); - -- int weight = XFT_WEIGHT_MEDIUM; -- XftPatternGetInteger(xft->pattern(), XFT_WEIGHT, 0, &weight); -- xft->fontDef.weight = getXftWeight(weight); -+ int weight = XFT_WEIGHT_MEDIUM; -+ XftPatternGetInteger(xft->pattern(), XFT_WEIGHT, 0, &weight); -+ xft->fontDef.weight = getXftWeight(weight); - -- int slant = XFT_SLANT_ROMAN; -- XftPatternGetInteger(xft->pattern(), XFT_SLANT, 0, &slant); -- xft->fontDef.italic = (slant != XFT_SLANT_ROMAN); -+ int slant = XFT_SLANT_ROMAN; -+ XftPatternGetInteger(xft->pattern(), XFT_SLANT, 0, &slant); -+ xft->fontDef.italic = (slant != XFT_SLANT_ROMAN); - -- int spacing = XFT_PROPORTIONAL; -- XftPatternGetInteger(xft->pattern(), XFT_SPACING, 0, &spacing); -- xft->fontDef.fixedPitch = spacing != XFT_PROPORTIONAL; -+ int spacing = XFT_PROPORTIONAL; -+ XftPatternGetInteger(xft->pattern(), XFT_SPACING, 0, &spacing); -+ xft->fontDef.fixedPitch = spacing != XFT_PROPORTIONAL; - -- xft->fontDef.ignorePitch = FALSE; -- break; -+ xft->fontDef.ignorePitch = FALSE; -+ break; -+ } - } -- } -- FcFontSetDestroy(fs); -+ -+ if( use_fontsort ) -+ FcFontSetDestroy(fs); -+ else -+ FcPatternDestroy(fsp); -+ -+ if( fe ) -+ break; -+ -+ } // for( jj ) -+ -+ FcPatternDestroy(pattern); -+ - return fe; - } - diff --git a/x11-toolkits/qt33/files/0067-nofclist.patch b/x11-toolkits/qt33/files/0067-nofclist.patch deleted file mode 100644 index d5ac46a..0000000 --- a/x11-toolkits/qt33/files/0067-nofclist.patch +++ /dev/null @@ -1,378 +0,0 @@ -qt-bugs@ issue : none yet -bugs.kde.org number : none -applied: no -author: Lubos Lunak <l.lunak@kde.org> - -Instead of getting a full list of all fonts using XftFontList (which calls -the still awfully slow FcFontList) load on-demand only info about fonts -that are really needed. - ---- src/kernel/qfontdatabase.cpp.sav 2005-11-08 13:20:04.000000000 +0100 -+++ src/kernel/qfontdatabase.cpp 2005-12-02 16:24:47.000000000 +0100 -@@ -996,6 +996,10 @@ QFontDatabase::findFont( QFont::Script s - - load( family_name, script ); - -+ // With QT_XFT2 this iterates only those fonts for which load() -+ // has been already called, but that's ok, since below only -+ // those fonts with matching family name are used. If family -+ // name is empty, then load() loads all fonts. - for ( int x = 0; x < db->count; ++x ) { - QtFontFamily *try_family = db->families[x]; - #ifdef Q_WS_X11 ---- src/kernel/qfontdatabase_x11.cpp.sav 2005-12-01 18:17:33.000000000 +0100 -+++ src/kernel/qfontdatabase_x11.cpp 2005-12-02 16:27:34.000000000 +0100 -@@ -843,8 +843,92 @@ static void loadXft() - if (!qt_has_xft) - return; - -- XftFontSet *fonts; -+#ifdef QT_XFT2 -+ struct XftDefaultFont { -+ const char *qtname; -+ const char *rawname; -+ bool fixed; -+ }; -+ const XftDefaultFont defaults[] = { -+ { "Serif", "serif", FALSE }, -+ { "Sans Serif", "sans-serif", FALSE }, -+ { "Monospace", "monospace", TRUE }, -+ { 0, 0, FALSE } -+ }; -+ const XftDefaultFont *f = defaults; -+ while (f->qtname) { -+ QtFontFamily *family = db->family( f->qtname, TRUE ); -+ family->rawName = f->rawname; -+ family->hasXft = TRUE; -+ family->synthetic = TRUE; -+ QtFontFoundry *foundry -+ = family->foundry( QString::null, TRUE ); -+ -+ for ( int i = 0; i < QFont::LastPrivateScript; ++i ) { -+ if (i == QFont::UnknownScript) -+ continue; -+ family->scripts[i] = QtFontFamily::Supported; -+ } -+ -+ QtFontStyle::Key styleKey; -+ styleKey.oblique = FALSE; -+ for (int i = 0; i < 4; ++i) { -+ styleKey.italic = (i%2); -+ styleKey.weight = (i > 1) ? QFont::Bold : QFont::Normal; -+ QtFontStyle *style = foundry->style( styleKey, TRUE ); -+ style->smoothScalable = TRUE; -+ QtFontSize *size = style->pixelSize( SMOOTH_SCALABLE, TRUE ); -+ QtFontEncoding *enc = size->encodingID( -1, 0, 0, 0, 0, TRUE ); -+ enc->pitch = (f->fixed ? 'm' : 'p'); -+ } -+ ++f; -+ } -+#endif -+} -+ -+#ifdef XFT_MATRIX -+static void checkXftMatrix( QtFontFamily* family ) { -+ for ( int j = 0; j < family->count; ++j ) { // each foundry -+ QtFontFoundry *foundry = family->foundries[j]; -+ for ( int k = 0; k < foundry->count; ++k ) { -+ QtFontStyle *style = foundry->styles[k]; -+ if ( style->key.italic || style->key.oblique ) continue; - -+ QtFontSize *size = style->pixelSize( SMOOTH_SCALABLE ); -+ if ( ! size ) continue; -+ QtFontEncoding *enc = size->encodingID( -1, 0, 0, 0, 0, TRUE ); -+ if ( ! enc ) continue; -+ -+ QtFontStyle::Key key = style->key; -+ -+ // does this style have an italic equivalent? -+ key.italic = TRUE; -+ QtFontStyle *equiv = foundry->style( key ); -+ if ( equiv ) continue; -+ -+ // does this style have an oblique equivalent? -+ key.italic = FALSE; -+ key.oblique = TRUE; -+ equiv = foundry->style( key ); -+ if ( equiv ) continue; -+ -+ // let's fake one... -+ equiv = foundry->style( key, TRUE ); -+ equiv->fakeOblique = TRUE; -+ equiv->smoothScalable = TRUE; -+ -+ QtFontSize *equiv_size = equiv->pixelSize( SMOOTH_SCALABLE, TRUE ); -+ QtFontEncoding *equiv_enc = equiv_size->encodingID( -1, 0, 0, 0, 0, TRUE ); -+ -+ // keep the same pitch -+ equiv_enc->pitch = enc->pitch; -+ } -+ } -+} -+#endif // XFT_MATRIX -+ -+static bool loadXftFont( FcPattern* font ) -+{ - QString familyName; - QString rawName; - char *value; -@@ -856,24 +940,9 @@ static void loadXft() - char *foundry_value = 0; - FcBool scalable = FcTrue; - -- fonts = -- XftListFonts(QPaintDevice::x11AppDisplay(), -- QPaintDevice::x11AppScreen(), -- (const char *)0, -- XFT_FAMILY, XFT_WEIGHT, XFT_SLANT, -- XFT_SPACING, XFT_FILE, XFT_INDEX, --#ifdef QT_XFT2 -- FC_CHARSET, FC_FOUNDRY, FC_SCALABLE, FC_PIXEL_SIZE, --#if FC_VERSION >= 20193 -- FC_WIDTH, --#endif --#endif // QT_XFT2 -- (const char *)0); -- -- for (int i = 0; i < fonts->nfont; i++) { -- if (XftPatternGetString(fonts->fonts[i], -+ if (XftPatternGetString( font, - XFT_FAMILY, 0, &value) != XftResultMatch ) -- continue; -+ return false; - // capitalize( value ); - rawName = familyName = QString::fromUtf8(value); - familyName.replace('-', ' '); -@@ -884,15 +953,15 @@ static void loadXft() - spacing_value = XFT_PROPORTIONAL; - file_value = 0; - index_value = 0; -- XftPatternGetInteger (fonts->fonts[i], XFT_SLANT, 0, &slant_value); -- XftPatternGetInteger (fonts->fonts[i], XFT_WEIGHT, 0, &weight_value); -- XftPatternGetInteger (fonts->fonts[i], XFT_SPACING, 0, &spacing_value); -- XftPatternGetString (fonts->fonts[i], XFT_FILE, 0, &file_value); -- XftPatternGetInteger (fonts->fonts[i], XFT_INDEX, 0, &index_value); -+ XftPatternGetInteger (font, XFT_SLANT, 0, &slant_value); -+ XftPatternGetInteger (font, XFT_WEIGHT, 0, &weight_value); -+ XftPatternGetInteger (font, XFT_SPACING, 0, &spacing_value); -+ XftPatternGetString (font, XFT_FILE, 0, &file_value); -+ XftPatternGetInteger (font, XFT_INDEX, 0, &index_value); - #ifdef QT_XFT2 -- FcPatternGetBool(fonts->fonts[i], FC_SCALABLE, 0, &scalable); -+ FcPatternGetBool(font, FC_SCALABLE, 0, &scalable); - foundry_value = 0; -- XftPatternGetString(fonts->fonts[i], FC_FOUNDRY, 0, &foundry_value); -+ XftPatternGetString(font, FC_FOUNDRY, 0, &foundry_value); - #endif - QtFontFamily *family = db->family( familyName, TRUE ); - family->rawName = rawName; -@@ -900,7 +969,7 @@ static void loadXft() - - #ifdef QT_XFT2 - FcCharSet *charset = 0; -- FcResult res = FcPatternGetCharSet(fonts->fonts[i], FC_CHARSET, 0, &charset); -+ FcResult res = FcPatternGetCharSet(font, FC_CHARSET, 0, &charset); - if (res == FcResultMatch && FcCharSetCount(charset) > 1) { - for (int i = 0; i < QFont::LastPrivateScript; ++i) { - QChar ch = sampleCharacter((QFont::Script) i); -@@ -934,7 +1003,7 @@ static void loadXft() - if (!scalable) { - int width = 100; - #if FC_VERSION >= 20193 -- XftPatternGetInteger (fonts->fonts[i], FC_WIDTH, 0, &width); -+ XftPatternGetInteger (font, FC_WIDTH, 0, &width); - #endif - styleKey.stretch = width; - } -@@ -955,58 +1024,17 @@ static void loadXft() - #ifdef QT_XFT2 - else { - double pixel_size = 0; -- XftPatternGetDouble (fonts->fonts[i], FC_PIXEL_SIZE, 0, &pixel_size); -+ XftPatternGetDouble (font, FC_PIXEL_SIZE, 0, &pixel_size); - size = style->pixelSize( (int)pixel_size, TRUE ); - } - #endif - QtFontEncoding *enc = size->encodingID( -1, 0, 0, 0, 0, TRUE ); - enc->pitch = ( spacing_value >= XFT_CHARCELL ? 'c' : - ( spacing_value >= XFT_MONO ? 'm' : 'p' ) ); -- } -- -- XftFontSetDestroy (fonts); -- --#ifdef QT_XFT2 -- struct XftDefaultFont { -- const char *qtname; -- const char *rawname; -- bool fixed; -- }; -- const XftDefaultFont defaults[] = { -- { "Serif", "serif", FALSE }, -- { "Sans Serif", "sans-serif", FALSE }, -- { "Monospace", "monospace", TRUE }, -- { 0, 0, FALSE } -- }; -- const XftDefaultFont *f = defaults; -- while (f->qtname) { -- QtFontFamily *family = db->family( f->qtname, TRUE ); -- family->rawName = f->rawname; -- family->hasXft = TRUE; -- family->synthetic = TRUE; -- QtFontFoundry *foundry -- = family->foundry( QString::null, TRUE ); -- -- for ( int i = 0; i < QFont::LastPrivateScript; ++i ) { -- if (i == QFont::UnknownScript) -- continue; -- family->scripts[i] = QtFontFamily::Supported; -- } -+ -+ checkXftMatrix( family ); - -- QtFontStyle::Key styleKey; -- styleKey.oblique = FALSE; -- for (int i = 0; i < 4; ++i) { -- styleKey.italic = (i%2); -- styleKey.weight = (i > 1) ? QFont::Bold : QFont::Normal; -- QtFontStyle *style = foundry->style( styleKey, TRUE ); -- style->smoothScalable = TRUE; -- QtFontSize *size = style->pixelSize( SMOOTH_SCALABLE, TRUE ); -- QtFontEncoding *enc = size->encodingID( -1, 0, 0, 0, 0, TRUE ); -- enc->pitch = (f->fixed ? 'm' : 'p'); -- } -- ++f; -- } --#endif -+ return true; - } - - #ifndef QT_XFT2 -@@ -1231,17 +1259,39 @@ static inline void checkXftCoverage( QtF - - static void load( const QString &family = QString::null, int script = -1 ) - { --#ifdef QT_XFT2 -- if (qt_has_xft) -- return; --#endif -- - #ifdef QFONTDATABASE_DEBUG - QTime t; - t.start(); - #endif - - if ( family.isNull() ) { -+#ifndef QT_NO_XFTFREETYPE -+ static bool xft_readall_done = false; -+ if (qt_has_xft && !xft_readall_done) { -+ xft_readall_done = true; -+ XftFontSet *fonts = -+ XftListFonts(QPaintDevice::x11AppDisplay(), -+ QPaintDevice::x11AppScreen(), -+ (const char *)0, -+ XFT_FAMILY, XFT_WEIGHT, XFT_SLANT, -+ XFT_SPACING, XFT_FILE, XFT_INDEX, -+#ifdef QT_XFT2 -+ FC_CHARSET, FC_FOUNDRY, FC_SCALABLE, FC_PIXEL_SIZE, -+#if FC_VERSION >= 20193 -+ FC_WIDTH, -+#endif -+#endif // QT_XFT2 -+ (const char *)0); -+ for (int i = 0; i < fonts->nfont; i++) { -+ loadXftFont( fonts->fonts[i] ); -+ } -+ XftFontSetDestroy (fonts); -+ } -+#ifdef QT_XFT2 -+ if (qt_has_xft) -+ return; -+#endif -+#endif // QT_NO_XFTFREETYPE - if ( script == -1 ) - loadXlfds( 0, -1 ); - else { -@@ -1254,12 +1304,38 @@ static void load( const QString &family - QtFontFamily *f = db->family( family, TRUE ); - if ( !f->fullyLoaded ) { - --#if !defined(QT_NO_XFTFREETYPE) && !defined(QT_XFT2) -+#ifndef QT_NO_XFTFREETYPE -+ if (qt_has_xft) { -+ XftFontSet *fonts = -+ XftListFonts(QPaintDevice::x11AppDisplay(), -+ QPaintDevice::x11AppScreen(), -+ XFT_FAMILY, XftTypeString, family.utf8().data(), -+ (const char *)0, -+ XFT_FAMILY, XFT_WEIGHT, XFT_SLANT, -+ XFT_SPACING, XFT_FILE, XFT_INDEX, -+#ifdef QT_XFT2 -+ FC_CHARSET, FC_FOUNDRY, FC_SCALABLE, FC_PIXEL_SIZE, -+#if FC_VERSION >= 20193 -+ FC_WIDTH, -+#endif -+#endif // QT_XFT2 -+ (const char *)0); -+ for (int i = 0; i < fonts->nfont; i++) { -+ loadXftFont( fonts->fonts[i] ); -+ } -+ XftFontSetDestroy (fonts); -+ f->fullyLoaded = TRUE; -+#ifdef QT_XFT2 -+ return; -+#endif -+ } -+#ifndef QT_XFT2 - // need to check Xft coverage - if ( f->hasXft && !f->xftScriptCheck ) { - checkXftCoverage( f ); - } - #endif -+#endif // QT_NO_XFTFREETYPE - // could reduce this further with some more magic: - // would need to remember the encodings loaded for the family. - if ( ( script == -1 && !f->xlfdLoaded ) || -@@ -1305,42 +1381,7 @@ static void initializeDb() - #endif // QT_XFT2 - - #ifdef XFT_MATRIX -- for ( int j = 0; j < db->families[i]->count; ++j ) { // each foundry -- QtFontFoundry *foundry = db->families[i]->foundries[j]; -- for ( int k = 0; k < foundry->count; ++k ) { -- QtFontStyle *style = foundry->styles[k]; -- if ( style->key.italic || style->key.oblique ) continue; -- -- QtFontSize *size = style->pixelSize( SMOOTH_SCALABLE ); -- if ( ! size ) continue; -- QtFontEncoding *enc = size->encodingID( -1, 0, 0, 0, 0, TRUE ); -- if ( ! enc ) continue; -- -- QtFontStyle::Key key = style->key; -- -- // does this style have an italic equivalent? -- key.italic = TRUE; -- QtFontStyle *equiv = foundry->style( key ); -- if ( equiv ) continue; -- -- // does this style have an oblique equivalent? -- key.italic = FALSE; -- key.oblique = TRUE; -- equiv = foundry->style( key ); -- if ( equiv ) continue; -- -- // let's fake one... -- equiv = foundry->style( key, TRUE ); -- equiv->fakeOblique = TRUE; -- equiv->smoothScalable = TRUE; -- -- QtFontSize *equiv_size = equiv->pixelSize( SMOOTH_SCALABLE, TRUE ); -- QtFontEncoding *equiv_enc = equiv_size->encodingID( -1, 0, 0, 0, 0, TRUE ); -- -- // keep the same pitch -- equiv_enc->pitch = enc->pitch; -- } -- } -+ checkXftMatrix( db->families[i] ); - #endif // XFT_MATRIX - } - #endif diff --git a/x11-toolkits/qt33/files/patch-src_tools-qsettings.cpp b/x11-toolkits/qt33/files/patch-src_tools-qsettings.cpp index 882adbc..b1f976d 100644 --- a/x11-toolkits/qt33/files/patch-src_tools-qsettings.cpp +++ b/x11-toolkits/qt33/files/patch-src_tools-qsettings.cpp @@ -1,15 +1,14 @@ --- src/tools/qsettings.cpp.orig Fri Sep 2 14:42:53 2005 -+++ src/tools/qsettings.cpp Tue Jan 31 10:23:14 2006 ++++ src/tools/qsettings.cpp Mon Mar 20 18:36:27 2006 @@ -500,7 +500,12 @@ } ); #endif // Q_OS_TEMP #else -- defPath = qInstallPathSysconf(); + if (getenv( "TMPDIR" ) != 0) { + defPath = QString( getenv( "TMPDIR" ) ); + } + else { -+ defPath= "/tmp"; + defPath = qInstallPathSysconf(); + } #endif QDir dir(appSettings); diff --git a/x11-toolkits/qt33/files/patch-src_widgets-qlistview.cpp b/x11-toolkits/qt33/files/patch-src_widgets-qlistview.cpp deleted file mode 100644 index 47e5e27..0000000 --- a/x11-toolkits/qt33/files/patch-src_widgets-qlistview.cpp +++ /dev/null @@ -1,10 +0,0 @@ ---- src/widgets/qlistview.cpp.orig Sat Nov 5 05:43:59 2005 -+++ src/widgets/qlistview.cpp Sat Nov 5 05:45:00 2005 -@@ -3231,6 +3231,7 @@ - d->focusItem = 0; - d->selectAnchor = 0; - d->pressedItem = 0; -+ d->highlighted = 0; - - // if it's down its downness makes no sense, so undown it - d->buttonDown = FALSE; |