summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFathi Boudra <fabo@debian.org>2008-09-18 21:30:04 +0000
committerFathi Boudra <fabo@debian.org>2008-09-18 21:30:04 +0000
commit8b720544f951fdf4f5254a8be9ca3610e50993c6 (patch)
tree6d27f0c0ced1da0a955686c88b6351b4d53bff31
parent484d3cc5e3fe4416644b75fdffadb36e110c0919 (diff)
downloadqt4-x11-8b720544f951fdf4f5254a8be9ca3610e50993c6.tar.gz
* Refresh Qt4 patches.
* Remove upstream patches: - 0002_https_lowercase.diff * Remove Debian patches: - 72_generic_arch_atomic_header_fix.diff * Sync qt-copy patches: * Add: - 0245-fix-randr-changes-detecting.diff - 0248-fix-qwidget-scroll-slowness.diff * Remove: - 0214-fix-qgraphicsproxywidget-tab-crash.diff - 0230-qtextcontrol-selectnextword.diff - 0232-fix-qdesktopwidget-screen-merge.diff - 0233-fix-q3textbrowser-image.diff - 0235-qdbus-dispatch-async-timeout.diff - 0236-qtoolbararealayout-restore.diff - 0241-fix-null-stylesheet-warning.diff
-rw-r--r--debian/changelog19
-rw-r--r--debian/patches/0002_https_lowercase.diff33
-rw-r--r--debian/patches/0167-fix-group-reading.diff2
-rw-r--r--debian/patches/0180-window-role.diff6
-rw-r--r--debian/patches/0203-qtexthtmlparser-link-color.diff2
-rw-r--r--debian/patches/0214-fix-qgraphicsproxywidget-tab-crash.diff23
-rw-r--r--debian/patches/0216-allow-isystem-for-headers.diff4
-rw-r--r--debian/patches/0224-fast-qpixmap-fill.diff2
-rw-r--r--debian/patches/0226-qtreeview-column_resize_when_needed.diff8
-rw-r--r--debian/patches/0230-qtextcontrol-selectnextword.diff33
-rw-r--r--debian/patches/0232-fix-qdesktopwidget-screen-merge.diff26
-rw-r--r--debian/patches/0233-fix-q3textbrowser-image.diff21
-rw-r--r--debian/patches/0234-fix-mysql-threaded.diff4
-rw-r--r--debian/patches/0235-qdbus-dispatch-async-timeout.diff20
-rw-r--r--debian/patches/0236-qtoolbararealayout-restore.diff21
-rw-r--r--debian/patches/0238-fix-qt-qttabbar-size.diff2
-rw-r--r--debian/patches/0241-fix-null-stylesheet-warning.diff22
-rw-r--r--debian/patches/0245-fix-randr-changes-detecting.diff25
-rw-r--r--debian/patches/0248-fix-qwidget-scroll-slowness.diff39
-rw-r--r--debian/patches/05_append_qt4_target.diff6
-rw-r--r--debian/patches/10_config_tests_fixes.diff8
-rw-r--r--debian/patches/30_webkit_unaligned_access.diff (renamed from debian/patches/30_webkit-unaligned-access.patch)0
-rw-r--r--debian/patches/50_kfreebsd_build_fix.diff8
-rw-r--r--debian/patches/series15
24 files changed, 108 insertions, 241 deletions
diff --git a/debian/changelog b/debian/changelog
index 9d78b83..14b0f40 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,25 @@ qt4-x11 (4.4.2-1) UNRELEASED; urgency=low
* New upstream release.
+ +++ Changes by Fathi Boudra:
+
+ * Remove upstream patches:
+ - 0002_https_lowercase.diff
+ * Remove Debian patches:
+ - 72_generic_arch_atomic_header_fix.diff
+ * Sync qt-copy patches:
+ * Add:
+ - 0245-fix-randr-changes-detecting.diff
+ - 0248-fix-qwidget-scroll-slowness.diff
+ * Remove:
+ - 0214-fix-qgraphicsproxywidget-tab-crash.diff
+ - 0230-qtextcontrol-selectnextword.diff
+ - 0232-fix-qdesktopwidget-screen-merge.diff
+ - 0233-fix-q3textbrowser-image.diff
+ - 0235-qdbus-dispatch-async-timeout.diff
+ - 0236-qtoolbararealayout-restore.diff
+ - 0241-fix-null-stylesheet-warning.diff
+
-- Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Thu, 18 Sep 2008 18:22:04 +0200
qt4-x11 (4.4.1-1) experimental; urgency=low
diff --git a/debian/patches/0002_https_lowercase.diff b/debian/patches/0002_https_lowercase.diff
deleted file mode 100644
index 15886ef..0000000
--- a/debian/patches/0002_https_lowercase.diff
+++ /dev/null
@@ -1,33 +0,0 @@
-Fetched from 4.4.2
-treat Https, HTtps, hTTps, ... as https as well
-
---- a/src/network/access/qnetworkaccesshttpbackend.cpp
-+++ b/src/network/access/qnetworkaccesshttpbackend.cpp
-@@ -64,7 +64,7 @@
- static QByteArray makeCacheKey(const QUrl &url)
- {
- QUrl copy = url;
-- bool isEncrypted = url.scheme() == QLatin1String("https");
-+ bool isEncrypted = url.scheme().toLower() == QLatin1String("https");
- copy.setPort(url.port(isEncrypted ? DefaultHttpsPort : DefaultHttpPort));
- return "http-connection:" + copy.toEncoded(QUrl::RemovePassword | QUrl::RemovePath |
- QUrl::RemoveQuery | QUrl::RemoveFragment);
-@@ -88,7 +88,8 @@
- }
-
- QUrl url = request.url();
-- if (url.scheme() == QLatin1String("http") || url.scheme() == QLatin1String("https"))
-+ QString scheme = url.scheme().lower();
-+ if (scheme == QLatin1String("http") || scheme == QLatin1String("https"))
- return new QNetworkAccessHttpBackend;
-
- return 0;
-@@ -309,7 +310,7 @@
- void QNetworkAccessHttpBackend::open()
- {
- QUrl url = request().url();
-- bool encrypt = url.scheme() == QLatin1String("https");
-+ bool encrypt = url.scheme().toLower() == QLatin1String("https");
- setAttribute(QNetworkRequest::ConnectionEncryptedAttribute, encrypt);
-
- // set the port number in the reply if it wasn't set
diff --git a/debian/patches/0167-fix-group-reading.diff b/debian/patches/0167-fix-group-reading.diff
index 5253b1e..60e2efc 100644
--- a/debian/patches/0167-fix-group-reading.diff
+++ b/debian/patches/0167-fix-group-reading.diff
@@ -9,7 +9,7 @@ Try a bit harder.
--- a/src/corelib/io/qfsfileengine_unix.cpp
+++ b/src/corelib/io/qfsfileengine_unix.cpp
-@@ -835,9 +835,13 @@
+@@ -857,9 +857,13 @@
size_max = sysconf(_SC_GETGR_R_SIZE_MAX);
if (size_max == -1)
size_max = 1024;
diff --git a/debian/patches/0180-window-role.diff b/debian/patches/0180-window-role.diff
index a3b24e9..a26ef89 100644
--- a/debian/patches/0180-window-role.diff
+++ b/debian/patches/0180-window-role.diff
@@ -14,7 +14,7 @@ this makes the window role set in many cases (which KWin uses for window identif
--- a/src/corelib/kernel/qobject.cpp
+++ b/src/corelib/kernel/qobject.cpp
-@@ -1016,9 +1016,18 @@
+@@ -1037,9 +1037,18 @@
{
Q_D(QObject);
d->objectName = name;
@@ -47,7 +47,7 @@ this makes the window role set in many cases (which KWin uses for window identif
struct Connection
--- a/src/gui/kernel/qwidget_p.h
+++ b/src/gui/kernel/qwidget_p.h
-@@ -331,6 +331,7 @@
+@@ -333,6 +333,7 @@
#if defined(Q_WS_X11)
void setWindowRole();
@@ -81,7 +81,7 @@ this makes the window role set in many cases (which KWin uses for window identif
}
// set client leader property
-@@ -2686,6 +2690,17 @@
+@@ -2719,6 +2723,17 @@
(unsigned char *)windowRole.constData(), windowRole.length());
}
diff --git a/debian/patches/0203-qtexthtmlparser-link-color.diff b/debian/patches/0203-qtexthtmlparser-link-color.diff
index 1e091b7..54b6dca 100644
--- a/debian/patches/0203-qtexthtmlparser-link-color.diff
+++ b/debian/patches/0203-qtexthtmlparser-link-color.diff
@@ -7,7 +7,7 @@ Links are assigned a foreground color according to the system current color sche
--- a/src/gui/text/qtexthtmlparser.cpp
+++ b/src/gui/text/qtexthtmlparser.cpp
-@@ -1053,7 +1053,7 @@
+@@ -1056,7 +1056,7 @@
&& !attributes.at(i + 1).isEmpty()) {
hasHref = true;
charFormat.setUnderlineStyle(QTextCharFormat::SingleUnderline);
diff --git a/debian/patches/0214-fix-qgraphicsproxywidget-tab-crash.diff b/debian/patches/0214-fix-qgraphicsproxywidget-tab-crash.diff
deleted file mode 100644
index 20080e1..0000000
--- a/debian/patches/0214-fix-qgraphicsproxywidget-tab-crash.diff
+++ /dev/null
@@ -1,23 +0,0 @@
-qt-bugs@ issue : N199058
-Trolltech task ID : 199428 (Status: closed; Version fix: 4.4.0)
-applied: no
-author: Frerich Raabe <raabe@kde.org>
-
-Fixes a crash in QGraphicsProxyWidget which was triggered when no
-QGraphicsProxyWidget item in a QGraphicsScene had a QWidget associated
-with it. As soon as the user pressed <Tab>, QGraphicsProxyWidget
-attempted to give the focus to *some* QWidget (even if it was null).
-
---- a/src/gui/graphicsview/qgraphicsproxywidget.cpp
-+++ b/src/gui/graphicsview/qgraphicsproxywidget.cpp
-@@ -386,6 +386,10 @@
- }
- }
-
-+ if (!child) {
-+ return 0;
-+ }
-+
- QWidget *oldChild = child;
- do {
- if (child->isEnabled()
diff --git a/debian/patches/0216-allow-isystem-for-headers.diff b/debian/patches/0216-allow-isystem-for-headers.diff
index f844d65..7e1d1dd 100644
--- a/debian/patches/0216-allow-isystem-for-headers.diff
+++ b/debian/patches/0216-allow-isystem-for-headers.diff
@@ -24,7 +24,7 @@ directory at the end of the compiler's header search path.
--- a/configure
+++ b/configure
-@@ -832,6 +832,11 @@
+@@ -833,6 +833,11 @@
VAL=`echo $1 | sed 's,-D,,'`
fi
;;
@@ -36,7 +36,7 @@ directory at the end of the compiler's header search path.
-I?*|-I)
VAR="add_ipath"
if [ "$1" = "-I" ]; then
-@@ -1739,6 +1744,9 @@
+@@ -1740,6 +1745,9 @@
add_ipath)
I_FLAGS="$I_FLAGS -I\"${VAL}\""
;;
diff --git a/debian/patches/0224-fast-qpixmap-fill.diff b/debian/patches/0224-fast-qpixmap-fill.diff
index 6e6c5c6..1fc721f 100644
--- a/debian/patches/0224-fast-qpixmap-fill.diff
+++ b/debian/patches/0224-fast-qpixmap-fill.diff
@@ -16,7 +16,7 @@ fill server side.
--- a/src/gui/image/qpixmap_x11.cpp
+++ b/src/gui/image/qpixmap_x11.cpp
-@@ -1107,7 +1107,26 @@
+@@ -1121,7 +1121,26 @@
{
if (fillColor.alpha() != 255) {
#ifndef QT_NO_XRENDER
diff --git a/debian/patches/0226-qtreeview-column_resize_when_needed.diff b/debian/patches/0226-qtreeview-column_resize_when_needed.diff
index ea78da2..986b652 100644
--- a/debian/patches/0226-qtreeview-column_resize_when_needed.diff
+++ b/debian/patches/0226-qtreeview-column_resize_when_needed.diff
@@ -28,7 +28,7 @@ no other columns become shrinked), the contents will be visible.
#endif // QT_NO_TREEVIEW
--- a/src/gui/itemviews/qtreeview.cpp
+++ b/src/gui/itemviews/qtreeview.cpp
-@@ -246,6 +246,19 @@
+@@ -248,6 +248,19 @@
connect(d->model, SIGNAL(modelAboutToBeReset()), SLOT(_q_modelAboutToBeReset()));
@@ -48,7 +48,7 @@ no other columns become shrinked), the contents will be visible.
if (d->sortingEnabled)
sortByColumn(header()->sortIndicatorSection());
}
-@@ -2797,6 +2810,8 @@
+@@ -2815,6 +2828,8 @@
}
if (model->canFetchMore(index))
model->fetchMore(index);
@@ -57,7 +57,7 @@ no other columns become shrinked), the contents will be visible.
}
void QTreeViewPrivate::collapse(int item, bool emitSignal)
-@@ -2836,6 +2851,8 @@
+@@ -2854,6 +2869,8 @@
else
emit q->collapsed(modelIndex);
}
@@ -66,7 +66,7 @@ no other columns become shrinked), the contents will be visible.
}
void QTreeViewPrivate::prepareAnimatedOperation(int item, AnimatedOperation::Type type)
-@@ -2947,6 +2964,25 @@
+@@ -2965,6 +2982,25 @@
viewItems.clear();
}
diff --git a/debian/patches/0230-qtextcontrol-selectnextword.diff b/debian/patches/0230-qtextcontrol-selectnextword.diff
deleted file mode 100644
index 810e6a7..0000000
--- a/debian/patches/0230-qtextcontrol-selectnextword.diff
+++ /dev/null
@@ -1,33 +0,0 @@
-qt-bugs@ issue : N213258
-Trolltech task ID : 213259 (Status: closed; Version fix: 4.4.2)
-bugs.kde.org number : I guess there is one
-applied: no
-author: David Faure <faure@kde.org>
-
-Imagine a konqueror window with two tabs, and in the current tab there's a QTextEdit (in a web form).
-When typing Ctrl+Shift+Right, it is expected that the next word is selected.
-However, the QAction for "move this tab to the right" is triggered, which is unexpected.
-This wouldn't happen if the QTextEdit would react to the ShortcutOverride event which
-is sent first, for this exact purpose (so that widget-specific shortcuts are done first).
-QTextControl already handles some ShortcutOverride events, but not all of them.
-The patch below adds a few useful ones, i.e. possibly-conflicting ones. I guess one could
-be exhaustive and list all possible shortcuts there....
-
-
---- a/src/gui/text/qtextcontrol.cpp
-+++ b/src/gui/text/qtextcontrol.cpp
-@@ -1065,6 +1065,14 @@
- || ke == QKeySequence::MoveToPreviousWord
- || ke == QKeySequence::MoveToStartOfDocument
- || ke == QKeySequence::MoveToEndOfDocument
-+ || ke == QKeySequence::SelectNextWord
-+ || ke == QKeySequence::SelectPreviousWord
-+ || ke == QKeySequence::SelectStartOfLine
-+ || ke == QKeySequence::SelectEndOfLine
-+ || ke == QKeySequence::SelectStartOfBlock
-+ || ke == QKeySequence::SelectEndOfBlock
-+ || ke == QKeySequence::SelectStartOfDocument
-+ || ke == QKeySequence::SelectEndOfDocument
- ) {
- ke->accept();
- #endif
diff --git a/debian/patches/0232-fix-qdesktopwidget-screen-merge.diff b/debian/patches/0232-fix-qdesktopwidget-screen-merge.diff
deleted file mode 100644
index 1e9edb9..0000000
--- a/debian/patches/0232-fix-qdesktopwidget-screen-merge.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-qt-bugs@ issue :
-Trolltech task ID :
-bugs.kde.org number :
-applied: no
-author: Dirk Mueller <mueller@kde.org>
-
-merge screens even if they're identical in size but overlaying
-
---- a/src/gui/kernel/qdesktopwidget_x11.cpp
-+++ b/src/gui/kernel/qdesktopwidget_x11.cpp
-@@ -186,10 +186,11 @@
- // merge a "cloned" screen with the previous, hiding all crtcs
- // that are currently showing a sub-rect of the previous screen
- rects[j].setRect(x, y, w, h);
-- if (j > 0 && rects[j-1].intersects(rects[j]) &&
-- (rects[j].width()*rects[j].height()) >
-- (rects[j-1].width()*rects[j-1].height())) {
-- rects[j-1] = rects[j];
-+ if (j> 0)
-+ if (j > 0 && rects[j-1].intersects(rects[j])) {
-+ if ((rects[j].width()*rects[j].height()) >
-+ (rects[j-1].width()*rects[j-1].height()))
-+ rects[j-1] = rects[j];
- j--;
- }
- workareas[i] = QRect();
diff --git a/debian/patches/0233-fix-q3textbrowser-image.diff b/debian/patches/0233-fix-q3textbrowser-image.diff
deleted file mode 100644
index d8d8f2a..0000000
--- a/debian/patches/0233-fix-q3textbrowser-image.diff
+++ /dev/null
@@ -1,21 +0,0 @@
-qt-bugs@ issue : N217218
-Trolltech task ID : 217145 (Status: closed; Version fix: 4.4.2)
-applied: yes
-author: TT :) (bug reported by Laurent Montel montel@kde.org and patch provides by TT
-
-In qt4.4.x there is a regression in Q3TextBrowser it can load an image.
-
---- a/src/qt3support/other/q3mimefactory.cpp
-+++ b/src/qt3support/other/q3mimefactory.cpp
-@@ -182,9 +182,8 @@
- QByteArray mimetype("application/octet-stream");
- if (extensions.contains(e))
- mimetype = extensions[e].latin1();
-- QByteArray imgfmt = QImageReader::imageFormat(abs_name);
-- if (!imgfmt.isEmpty())
-- mimetype = "image/" + imgfmt.toLower();
-+ if (!QImageReader::imageFormat(abs_name).isEmpty())
-+ mimetype = "application/x-qt-image";
-
- QFile f(abs_name);
- if (f.open(QIODevice::ReadOnly) && f.size()) {
diff --git a/debian/patches/0234-fix-mysql-threaded.diff b/debian/patches/0234-fix-mysql-threaded.diff
index 05c400b..cafadeb 100644
--- a/debian/patches/0234-fix-mysql-threaded.diff
+++ b/debian/patches/0234-fix-mysql-threaded.diff
@@ -9,7 +9,7 @@ mysql server in a multithreaded environment
--- a/src/sql/drivers/mysql/qsql_mysql.cpp
+++ b/src/sql/drivers/mysql/qsql_mysql.cpp
-@@ -1215,6 +1215,10 @@
+@@ -1248,6 +1248,10 @@
d->preparedQuerysEnabled = false;
#endif
@@ -20,7 +20,7 @@ mysql server in a multithreaded environment
setOpen(true);
setOpenError(false);
return true;
-@@ -1223,6 +1227,9 @@
+@@ -1256,6 +1260,9 @@
void QMYSQLDriver::close()
{
if (isOpen()) {
diff --git a/debian/patches/0235-qdbus-dispatch-async-timeout.diff b/debian/patches/0235-qdbus-dispatch-async-timeout.diff
deleted file mode 100644
index 0b8ee6e..0000000
--- a/debian/patches/0235-qdbus-dispatch-async-timeout.diff
+++ /dev/null
@@ -1,20 +0,0 @@
-qt-bugs@ issue : N218453
-Trolltech task ID : none
-bugs.kde.org number : none
-applied: no
-author: Michael Leupold <lemma@confuego.org>
-
-This patch dispatches synthesized timeout messages directly
-after handling them. This is neccessary in order to receive timeout
-errors to asynchroneous messages.
-
---- a/src/dbus/qdbusintegrator.cpp
-+++ b/src/dbus/qdbusintegrator.cpp
-@@ -988,6 +988,7 @@
- {
- DBusTimeout *timeout = timeouts.value(e->timerId(), 0);
- q_dbus_timeout_handle(timeout);
-+ doDispatch();
- }
-
- void QDBusConnectionPrivate::customEvent(QEvent *e)
diff --git a/debian/patches/0236-qtoolbararealayout-restore.diff b/debian/patches/0236-qtoolbararealayout-restore.diff
deleted file mode 100644
index bdb629d..0000000
--- a/debian/patches/0236-qtoolbararealayout-restore.diff
+++ /dev/null
@@ -1,21 +0,0 @@
-qt-bugs@ issue : N218280
-Trolltech task ID : 218280
-bugs.kde.org number : none
-applied: yes
-author: TT
-
-QMainWindow::restoreState doesn't layout toolbars properly, regression
-from Qt-4.4
-
---- a/src/gui/widgets/qtoolbararealayout.cpp
-+++ b/src/gui/widgets/qtoolbararealayout.cpp
-@@ -1323,7 +1323,8 @@
- toolBar->setVisible(shown);
- toolBar->d_func()->setWindowState(floating, true, rect);
-
-- item.extraSpace = item.size - pick(line.o, item.sizeHint());
-+ //if it is -1, it means we should use the default size
-+ item.extraSpace = (item.size == -1) ? 0 : item.size - pick(line.o, item.sizeHint());
-
-
- line.toolBarItems.append(item);
diff --git a/debian/patches/0238-fix-qt-qttabbar-size.diff b/debian/patches/0238-fix-qt-qttabbar-size.diff
index 27f329e..aaaa085 100644
--- a/debian/patches/0238-fix-qt-qttabbar-size.diff
+++ b/debian/patches/0238-fix-qt-qttabbar-size.diff
@@ -1,5 +1,5 @@
qt-bugs@ issue : N216195
-Trolltech task ID : 216537
+Trolltech task ID : 216537 (Applied in Qt 4.5)
bugs.kde.org number : 162737
applied: no
author: Michael Leupold <lemma@confuego.org>
diff --git a/debian/patches/0241-fix-null-stylesheet-warning.diff b/debian/patches/0241-fix-null-stylesheet-warning.diff
deleted file mode 100644
index 194efd6..0000000
--- a/debian/patches/0241-fix-null-stylesheet-warning.diff
+++ /dev/null
@@ -1,22 +0,0 @@
-qt-bugs@ issue : none
-Trolltech task ID : none
-bugs.kde.org number : none
-applied: no
-author: Robert Knight <robertknight@gmail.com>
-
-Fix a QObject::connect() warning when calling QWidget::setFont()
-on a widget which does not have its own style sheet and which has
-children with Qt::WA_StyleSheet set (as a result of being polished
-by a style sheet style)
-
---- a/src/gui/kernel/qwidget.cpp
-+++ b/src/gui/kernel/qwidget.cpp
-@@ -4001,7 +4001,7 @@
- QWidget *w = qobject_cast<QWidget*>(children.at(i));
- if (w) {
- #ifndef QT_NO_STYLE_STYLESHEET
-- if (w->testAttribute(Qt::WA_StyleSheet))
-+ if (cssStyle && w->testAttribute(Qt::WA_StyleSheet))
- cssStyle->updateStyleSheetFont(w);
- else
- #endif
diff --git a/debian/patches/0245-fix-randr-changes-detecting.diff b/debian/patches/0245-fix-randr-changes-detecting.diff
new file mode 100644
index 0000000..a2f500b
--- /dev/null
+++ b/debian/patches/0245-fix-randr-changes-detecting.diff
@@ -0,0 +1,25 @@
+qt-bugs@ issue : none yet
+Trolltech task ID : none yet
+bugs.kde.org number : ?
+applied: no
+author: Lubos Lunak <l.lunak@kde.org>
+
+Fix QDesktopWidget not detecting some changes in multiscreen setups
+(e.g. two screens 1280x1024, one of them switching to smaller size).
+
+--- a/src/gui/kernel/qapplication_x11.cpp
++++ b/src/gui/kernel/qapplication_x11.cpp
+@@ -3000,11 +3000,11 @@
+ QSize oldSize(w->size());
+ w->data->crect.setWidth(DisplayWidth(X11->display, scr));
+ w->data->crect.setHeight(DisplayHeight(X11->display, scr));
+- if (w->size() != oldSize) {
++// if (w->size() != oldSize) {
+ QResizeEvent e(w->size(), oldSize);
+ QApplication::sendEvent(w, &e);
+ emit desktop()->resized(scr);
+- }
++// }
+ }
+ #endif // QT_NO_XRANDR
+
diff --git a/debian/patches/0248-fix-qwidget-scroll-slowness.diff b/debian/patches/0248-fix-qwidget-scroll-slowness.diff
new file mode 100644
index 0000000..00766f6
--- /dev/null
+++ b/debian/patches/0248-fix-qwidget-scroll-slowness.diff
@@ -0,0 +1,39 @@
+qt-bugs@ issue : none yet
+Trolltech task ID : none yet
+bugs.kde.org number : 167739
+applied: no
+author: Germain Garand <germain@ebooksfrance.org>
+
+QWidgetPrivate::scrollRect doesn't account for it's rect argument
+but rather examine the whole widget surface when pondering if
+it can apply accelerated blitting, resulting in unnecessarily slow
+and non-blitting QWidget::scroll calls.
+
+--- a/src/gui/painting/qbackingstore.cpp
++++ b/src/gui/painting/qbackingstore.cpp
+@@ -523,7 +523,8 @@
+ }
+
+ bool overlapped = false;
+- bool accelerateScroll = accelEnv && isOpaque() && !(overlapped = isOverlapped(data.crect));
++ QRect cRect = clipRect();
++ bool accelerateScroll = accelEnv && isOpaque() && !(overlapped = isOverlapped(rect & cRect));
+
+ #if defined(Q_WS_QWS)
+ QWSWindowSurface *surface;
+@@ -558,13 +559,13 @@
+ #ifdef Q_WS_QWS
+ QWSWindowSurface *surface = static_cast<QWSWindowSurface*>(wbs->windowSurface);
+ const QRegion clip = surface->clipRegion().translated(-toplevelOffset)
+- & clipRect();
++ & cRect;
+ const QRect scrollRect = rect & clip.boundingRect();
+ const QRect destRect = scrollRect.translated(dx, dy)
+ & scrollRect
+ & clip.boundingRect();
+ #else
+- QRect scrollRect = rect & clipRect();
++ QRect scrollRect = rect & cRect;
+
+ QRect destRect = scrollRect.isValid() ? scrollRect.translated(dx,dy).intersected(scrollRect) : QRect();
+
diff --git a/debian/patches/05_append_qt4_target.diff b/debian/patches/05_append_qt4_target.diff
index 55ea75e..a02ffba 100644
--- a/debian/patches/05_append_qt4_target.diff
+++ b/debian/patches/05_append_qt4_target.diff
@@ -66,7 +66,7 @@ author: Fathi Boudra <fabo@debian.org>
echo "Creating qmake. Please wait..."
OLD_QCONFIG_H=
-@@ -6058,8 +6058,8 @@
+@@ -6071,8 +6071,8 @@
QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc
#local paths that cannot be queried from the QT_INSTALL_* properties while building QTDIR
@@ -77,7 +77,7 @@ author: Fathi Boudra <fabo@debian.org>
QMAKE_UIC3 = \$\$QT_BUILD_TREE/bin/uic3
QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc
QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp
-@@ -6360,11 +6360,11 @@
+@@ -6373,11 +6373,11 @@
#-------------------------------------------------------------------------------
echo "Finding project files. Please wait..."
@@ -91,7 +91,7 @@ author: Fathi Boudra <fabo@debian.org>
fi
# .projects -> projects to process
-@@ -6537,7 +6537,7 @@
+@@ -6550,7 +6550,7 @@
echo " for $a\c"
fi
diff --git a/debian/patches/10_config_tests_fixes.diff b/debian/patches/10_config_tests_fixes.diff
index 14db57a..eafb8d3 100644
--- a/debian/patches/10_config_tests_fixes.diff
+++ b/debian/patches/10_config_tests_fixes.diff
@@ -56,11 +56,3 @@
win32:!contains( LIBS, .*gds.* ):!contains( LIBS, .*fbclient.* ) {
!win32-borland:LIBS *= -lgds32_ms
---- a/config.tests/unix/sqlite/sqlite.pro
-+++ b/config.tests/unix/sqlite/sqlite.pro
-@@ -1,4 +1,4 @@
- SOURCES = sqlite.cpp
- CONFIG -= qt dylib
- mac:CONFIG -= app_bundle
--LIBS += -lsqlite3
-+LIBS += -lsqlite3 -ldl
diff --git a/debian/patches/30_webkit-unaligned-access.patch b/debian/patches/30_webkit_unaligned_access.diff
index fdfdf4b..fdfdf4b 100644
--- a/debian/patches/30_webkit-unaligned-access.patch
+++ b/debian/patches/30_webkit_unaligned_access.diff
diff --git a/debian/patches/50_kfreebsd_build_fix.diff b/debian/patches/50_kfreebsd_build_fix.diff
index 7ed7505..6c890dd 100644
--- a/debian/patches/50_kfreebsd_build_fix.diff
+++ b/debian/patches/50_kfreebsd_build_fix.diff
@@ -28,9 +28,9 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC.
#elif defined(__QNXNTO__)
--- a/src/corelib/plugin/qlibrary.cpp
+++ b/src/corelib/plugin/qlibrary.cpp
-@@ -289,13 +289,13 @@
+@@ -292,13 +292,13 @@
- #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC)
+ #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(QT_NO_PLUGIN_CHECK)
-#if defined(Q_OS_FREEBSD) || defined(Q_OS_LINUX)
+#if defined(Q_OS_FREEBSD) || defined(Q_OS_GLIBC)
@@ -55,7 +55,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC.
# include <fenv.h>
#endif
-@@ -6258,7 +6258,7 @@
+@@ -6259,7 +6259,7 @@
_control87(MCW_EM, MCW_EM);
#endif
@@ -64,7 +64,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC.
fenv_t envp;
feholdexcept(&envp);
#endif
-@@ -6274,7 +6274,7 @@
+@@ -6275,7 +6275,7 @@
#endif //_M_X64
#endif //Q_OS_WIN
diff --git a/debian/patches/series b/debian/patches/series
index 2cf25b9..86aa671 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,25 +1,17 @@
-# patches from upstream
-0002_https_lowercase.diff
-
# qt-copy patches
0167-fix-group-reading.diff
0180-window-role.diff
0195-compositing-properties.diff
0203-qtexthtmlparser-link-color.diff
0209-prevent-qt-mixing.diff
-0214-fix-qgraphicsproxywidget-tab-crash.diff
0216-allow-isystem-for-headers.diff
0224-fast-qpixmap-fill.diff
0225-invalidate-tabbar-geometry-on-refresh.patch
0226-qtreeview-column_resize_when_needed.diff
-0230-qtextcontrol-selectnextword.diff
-0232-fix-qdesktopwidget-screen-merge.diff
-0233-fix-q3textbrowser-image.diff
0234-fix-mysql-threaded.diff
-0235-qdbus-dispatch-async-timeout.diff
-0236-qtoolbararealayout-restore.diff
0238-fix-qt-qttabbar-size.diff
-0241-fix-null-stylesheet-warning.diff
+0245-fix-randr-changes-detecting.diff
+0248-fix-qwidget-scroll-slowness.diff
# debian patches
01_qmake_for_debian.diff
@@ -35,13 +27,12 @@
15_fix_qmake_makefile_generation.diff
16_hide_std_symbols_on_qtwebkit.diff
20_mips_atomic_ops.diff
-30_webkit-unaligned-access.patch
+30_webkit_unaligned_access.diff
40_alpha_ice.diff
41_disable_opengl_visibility.diff
50_kfreebsd_build_fix.diff
60_m68k_inotify_fix.diff
70_hppa_ldcw_fix.diff
71_hppa_unaligned_access_fix_458133.diff
-72_generic_arch_atomic_header_fix.diff
80_hurd_max_path.diff
81_hurd_more_max_path.diff