Sophie

Sophie

distrib > Mandriva > 2006.0 > i586 > by-pkgid > cb5cb393fb2cff46997de4bce8173fc9 > files > 67

qt3-3.3.4-23.2.20060mdk.src.rpm

qt-bugs@ issue : 23458
bugs.kde.org number : 58040
applied: no
author: Stephan Binner <binner@kde.org>

Less flicker during changes in the tab bar.

Index: src/widgets/qtabbar.cpp
===================================================================
RCS file: /home/kde/qt-copy/src/widgets/qtabbar.cpp,v
retrieving revision 1.52
diff -u -3 -p -b -r1.52 qtabbar.cpp
--- qt/src/widgets/qtabbar.cpp	23 Jun 2003 11:48:57 -0000	1.52
+++ qt/src/widgets/qtabbar.cpp	1 Jul 2003 12:29:42 -0000
@@ -1290,7 +1290,7 @@ void QTab::setText( const QString& text 
 	    tb->d->a->insertItem( p, id );
 #endif
 	tb->layoutTabs();
-	tb->repaint();
+	tb->repaint( FALSE );
 
 #if defined(QT_ACCESSIBILITY_SUPPORT)
 	QAccessible::updateAccessibility( tb, tb->indexOf(id)+1, QAccessible::NameChanged );
Index: qtabwidget.cpp
===================================================================
RCS file: /home/kde/qt-copy/src/widgets/qtabwidget.cpp,v
retrieving revision 1.51
diff -u -3 -p -b -r1.51 qtabwidget.cpp
--- qt/src/widgets/qtabwidget.cpp	23 Jul 2003 18:14:02 -0000	1.51
+++ qt/src/widgets/qtabwidget.cpp	6 Dec 2003 21:11:10 -0000
@@ -380,13 +380,9 @@ void QTabWidget::changeTab( QWidget *w, 
     // this will update the accelerators
     t->setText( label );
 
-    int ct = d->tabs->currentTab();
     bool block = d->tabs->signalsBlocked();
     d->tabs->blockSignals( TRUE );
-    QTab* ft = d->tabs->tabAt( 0 );
-    if ( ft )
-	d->tabs->setCurrentTab( ft->identifier() );
-    d->tabs->setCurrentTab( ct );
+    d->tabs->resize(d->tabs->sizeHint());
     d->tabs->blockSignals( block );
 
     d->tabs->update();
@@ -414,13 +410,9 @@ void QTabWidget::changeTab( QWidget *w, 
     t->iconset = new QIconSet( iconset );
     t->setText( label );
 
-    int ct = d->tabs->currentTab();
     bool block = d->tabs->signalsBlocked();
     d->tabs->blockSignals( TRUE );
-    QTab* ft = d->tabs->tabAt( 0 );
-    if ( ft )
-	d->tabs->setCurrentTab( ft->identifier() );
-    d->tabs->setCurrentTab( ct );
+    d->tabs->resize(d->tabs->sizeHint());
     d->tabs->blockSignals( block );
 
     d->tabs->update();
@@ -1033,13 +1025,9 @@ void QTabWidget::setTabIconSet( QWidget 
 
     d->tabs->layoutTabs();
 
-    int ct = d->tabs->currentTab();
     bool block = d->tabs->signalsBlocked();
     d->tabs->blockSignals( TRUE );
-    QTab* ft = d->tabs->tabAt( 0 );
-    if ( ft )
-	d->tabs->setCurrentTab( ft->identifier() );
-    d->tabs->setCurrentTab( ct );
+    d->tabs->resize(d->tabs->sizeHint());
     d->tabs->blockSignals( block );
 
     d->tabs->update();