From 4eda7c27f3c2b9df84a3f2d7b3716625766adc6b Mon Sep 17 00:00:00 2001 From: mae <qt-info@nokia.com> Date: Tue, 21 Jul 2009 10:43:07 +0200 Subject: [PATCH] fix mode bar animation regression --- src/plugins/coreplugin/fancytabwidget.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/plugins/coreplugin/fancytabwidget.cpp b/src/plugins/coreplugin/fancytabwidget.cpp index 403644f9a4c..982662c6acd 100644 --- a/src/plugins/coreplugin/fancytabwidget.cpp +++ b/src/plugins/coreplugin/fancytabwidget.cpp @@ -103,18 +103,25 @@ void FancyTabBar::paintEvent(QPaintEvent *event) void FancyTabBar::mouseMoveEvent(QMouseEvent *e) { if (!m_hoverRect.contains(e->pos())) { + int newHover = -1; for (int i = 0; i < count(); ++i) { QRect area = tabRect(i); if (area.contains(e->pos())) { - m_hoverIndex = i; - QRect oldHoverRect = m_hoverRect; - m_hoverRect = area; - update(oldHoverRect); - m_hoverControl.stop(); - m_hoverControl.start(); + newHover = i; break; } } + + m_hoverControl.stop(); + m_hoverIndex = newHover; + update(m_hoverRect); + m_hoverRect = QRect(); + + if (m_hoverIndex >=0) { + QRect oldHoverRect = m_hoverRect; + m_hoverRect = tabRect(m_hoverIndex); + m_hoverControl.start(); + } } } -- GitLab