Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.3.0 Beta1
-
Windows 7, Ubuntu 12.04
Description
QFrame should emit leave event during mouseReleaseEvent() in order that the hover effect can be removed.
Test program attached. Notable code shown below.
void DraftMenuButton::mouseReleaseEvent( QMouseEvent *event ) { Q_UNUSED(event); QMessageBox draftMessageBox; draftMessageBox.setText("Click OK to close me."); draftMessageBox.exec(); // Hover highlight stays in Qt 5, but not reproducible on Qt 4 environment. //QTimer::singleShot(0, dialog, SLOT(exec())); //QFocusFrame::mouseReleaseEvent(event); #if USE_WORKAROUND // Workaround for Qt 5 environment. // The hover state is reset after a leave event sent. QEvent e(QEvent::Leave); QApplication::sendEvent(this, &e); #endif }
Hover highlight stays in Qt 5, but not reproducible on Qt 4 environment.
Attachments
Issue Links
- relates to
-
QTBUG-36862 QToolButton remains in hover state after menu closed
- Closed
-
QTBUG-41780 QToolButton hovered rendering not cleared
- Closed