summaryrefslogtreecommitdiff
path: root/qt/qt-2.3.7.patch/qte237-iconviewspeed.patch
Side-by-side diff
Diffstat (limited to 'qt/qt-2.3.7.patch/qte237-iconviewspeed.patch') (more/less context) (ignore whitespace changes)
-rw-r--r--qt/qt-2.3.7.patch/qte237-iconviewspeed.patch142
1 files changed, 0 insertions, 142 deletions
diff --git a/qt/qt-2.3.7.patch/qte237-iconviewspeed.patch b/qt/qt-2.3.7.patch/qte237-iconviewspeed.patch
deleted file mode 100644
index 81064e1..0000000
--- a/qt/qt-2.3.7.patch/qte237-iconviewspeed.patch
+++ b/dev/null
@@ -1,142 +0,0 @@
-Speed up patches backported from
-
-http://robotics.dei.unipd.it/~koral/KDE/kflicker.html
-
-and
-
-http://lists.kde.org/?l=kde-optimize&m=105382164111363&w=2 (complete thread)
-
-
-
-
-diff -u qt-2.3.7_old/src/iconview/qiconview.cpp qt-2.3.7/src/iconview/qiconview.cpp
---- qt-2.3.7_old/src/iconview/qiconview.cpp 2004-06-13 22:29:56.000000000 +0200
-+++ qt-2.3.7/src/iconview/qiconview.cpp 2004-06-13 22:33:32.000000000 +0200
-@@ -220,6 +220,7 @@
- QIconView::SelectionMode selectionMode;
- QIconViewItem *currentItem, *tmpCurrentItem, *highlightedItem, *startDragItem, *pressedItem, *selectAnchor;
- QRect *rubber;
-+ QPixmap *backBuffer;
- QTimer *scrollTimer, *adjustTimer, *updateTimer, *inputTimer,
- *fullRedrawTimer;
- int rastX, rastY, spacing;
-@@ -2263,6 +2264,7 @@
- d->currentItem = 0;
- d->highlightedItem = 0;
- d->rubber = 0;
-+ d->backBuffer = 0;
- d->scrollTimer = 0;
- d->startDragItem = 0;
- d->tmpCurrentItem = 0;
-@@ -2411,6 +2413,8 @@
- delete item;
- item = tmp;
- }
-+ delete d->backBuffer;
-+ d->backBuffer = 0;
- delete d->fm;
- d->fm = 0;
- #ifndef QT_NO_TOOLTIP
-@@ -2877,6 +2881,48 @@
- }
-
- /*!
-+ This function grabs all paintevents that otherwise would have been
-+ processed by the QScrollView::viewportPaintEvent(). Here we use a
-+ doublebuffer to reduce 'on-paint' flickering on QIconView
-+ (and of course its childs).
-+
-+ \sa QScrollView::viewportPaintEvent(), QIconView::drawContents()
-+*/
-+
-+void QIconView::bufferedPaintEvent( QPaintEvent* pe )
-+{
-+ QWidget* vp = viewport();
-+ QRect r = pe->rect() & vp->rect();
-+ int ex = r.x() + contentsX();
-+ int ey = r.y() + contentsY();
-+ int ew = r.width();
-+ int eh = r.height();
-+
-+ if ( !d->backBuffer )
-+ d->backBuffer = new QPixmap(vp->size());
-+ if ( d->backBuffer->size() != vp->size() ) {
-+ //Resize function (with hysteesis). Uses a good compromise between memory
-+ //consumption and speed (number) of resizes.
-+ float newWidth = (float)vp->width();
-+ float newHeight = (float)vp->height();
-+ if ( newWidth > d->backBuffer->width() || newHeight > d->backBuffer->height() )
-+ {
-+ newWidth *= 1.1892;
-+ newHeight *= 1.1892;
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ } else if ( 1.5*newWidth < d->backBuffer->width() || 1.5*newHeight < d->backBuffer->height() )
-+ d->backBuffer->resize( (int)newWidth, (int)newHeight );
-+ }
-+
-+ QPainter p;
-+ p.begin(d->backBuffer, vp);
-+ drawContentsOffset(&p, contentsX(), contentsY(), ex, ey, ew, eh);
-+ p.end();
-+ bitBlt(vp, r.x(), r.y(), d->backBuffer, r.x(), r.y(), ew, eh);
-+}
-+
-+/*!
-+
- \reimp
- */
-
-@@ -4855,7 +4901,7 @@
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
- }
-- viewportPaintEvent( (QPaintEvent*)e );
-+ bufferedPaintEvent ((QPaintEvent*)e );
- if ( d->dragging ) {
- if ( !d->rubber )
- drawDragShapes( d->oldDragPos );
-@@ -5286,11 +5332,19 @@
- return;
-
- if ( item->d->container1 && d->firstContainer ) {
-- item->d->container1->items.removeRef( item );
-+ //Special-case checking of the last item, since this may be
-+ //called a few times for the same item.
-+ if (item->d->container1->items.last() == item)
-+ item->d->container1->items.removeLast();
-+ else
-+ item->d->container1->items.removeRef( item );
- }
- item->d->container1 = 0;
- if ( item->d->container2 && d->firstContainer ) {
-- item->d->container2->items.removeRef( item );
-+ if (item->d->container2->items.last() == item)
-+ item->d->container2->items.removeLast();
-+ else
-+ item->d->container2->items.removeRef( item );
- }
- item->d->container2 = 0;
-
-diff -u qt-2.3.7_old/src/iconview/qiconview.h qt-2.3.7/src/iconview/qiconview.h
---- qt-2.3.7_old/src/iconview/qiconview.h 2004-06-13 22:29:56.000000000 +0200
-+++ qt-2.3.7/src/iconview/qiconview.h 2004-06-13 22:33:32.000000000 +0200
-@@ -444,6 +444,7 @@
- virtual void contentsDropEvent( QDropEvent *e );
- #endif
-
-+ void bufferedPaintEvent( QPaintEvent* );
- virtual void resizeEvent( QResizeEvent* e );
- virtual void keyPressEvent( QKeyEvent *e );
- virtual void focusInEvent( QFocusEvent *e );
---- qt-2.3.7-old/src/widgets/qscrollview.cpp 2004-07-23 15:22:56.000000000 +0200
-+++ qt-2.3.7/src/widgets/qscrollview.cpp 2004-07-23 19:23:10.000000000 +0200
-@@ -1266,6 +1277,9 @@
- case QEvent::LayoutHint:
- d->autoResizeHint(this);
- break;
-+ case QEvent::WindowActivate:
-+ case QEvent::WindowDeactivate:
-+ return TRUE;
- default:
- break;
- }