diff options
author | Axel Spoerl <axel.spoerl@qt.io> | 2023-01-23 11:15:38 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2023-02-01 18:11:42 +0000 |
commit | 379649dd8bb7b0d68dbf81b215be50a7dcc3f49a (patch) | |
tree | 26c1c75f4f9ed207bb6e948948c35c79bad32c29 | |
parent | 802dfb1879a1aec88d0dcfbca5e62b282ca401bd (diff) | |
download | qtbase-379649dd8bb7b0d68dbf81b215be50a7dcc3f49a.tar.gz |
Add right and middle mouse button to tst_QLabel::mouseEventPropagation
The test function used only the left button to test mouse event
propagation.
This patch adds the right and middle buttons to the test data.
Task-number: QTBUG-110055
Change-Id: I02683168216843919e889987a8b0e8a0f1592d3a
Reviewed-by: Doris Verria <doris.verria@qt.io>
(cherry picked from commit 593ffd3859b2c80c498baf5323906a348de22b80)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp b/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp index 30c08d8978..2346061c5c 100644 --- a/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp +++ b/tests/auto/widgets/widgets/qlabel/tst_qlabel.cpp @@ -606,32 +606,39 @@ void tst_QLabel::mouseEventPropagation_data() { QTest::addColumn<const QString>("text"); QTest::addColumn<const Qt::TextInteractionFlag>("interaction"); + QTest::addColumn<const QList<Qt::MouseButton>>("buttons"); QTest::addColumn<const bool>("expectPropagation"); QTest::newRow("RichText") << QString("<b>This is a rich text propagating mouse events</b>") << Qt::LinksAccessibleByMouse + << QList<Qt::MouseButton>{Qt::LeftButton, Qt::RightButton, Qt::MiddleButton} << true; QTest::newRow("PlainText") << QString("This is a plain text propagating mouse events") << Qt::LinksAccessibleByMouse + << QList<Qt::MouseButton>{Qt::LeftButton, Qt::RightButton, Qt::MiddleButton} << true; QTest::newRow("PlainTextConsume") << QString("This is a plain text consuming mouse events") << Qt::TextSelectableByMouse + << QList<Qt::MouseButton>{Qt::LeftButton} << false; QTest::newRow("RichTextConsume") << QString("<b>This is a rich text consuming mouse events</b>") << Qt::TextSelectableByMouse + << QList<Qt::MouseButton>{Qt::LeftButton} << false; QTest::newRow("PlainTextNoInteraction") << QString("This is a text not interacting with mouse") << Qt::NoTextInteraction + << QList<Qt::MouseButton>{Qt::LeftButton, Qt::RightButton, Qt::MiddleButton} << true; QTest::newRow("RichTextNoInteraction") << QString("<b>This is a rich text not interacting with mouse</b>") << Qt::NoTextInteraction + << QList<Qt::MouseButton>{Qt::LeftButton, Qt::RightButton, Qt::MiddleButton} << true; } @@ -661,21 +668,23 @@ void tst_QLabel::mouseEventPropagation() QFETCH(const QString, text); QFETCH(const Qt::TextInteractionFlag, interaction); + QFETCH(const QList<Qt::MouseButton>, buttons); QFETCH(const bool, expectPropagation); MouseEventWidget widget; auto *layout = new QVBoxLayout(&widget); auto *label = new QLabel(text); label->setTextInteractionFlags(interaction); - const uint count = expectPropagation ? 1 : 0; layout->addWidget(label); widget.show(); QVERIFY(QTest::qWaitForWindowExposed(&widget)); const QPoint labelCenter = label->rect().center(); - QTest::mouseClick(label, Qt::LeftButton, Qt::KeyboardModifiers(), labelCenter); + for (Qt::MouseButton mouseButton : buttons) + QTest::mouseClick(label, mouseButton, Qt::KeyboardModifiers(), labelCenter); + const uint count = expectPropagation ? buttons.count() : 0; QTRY_COMPARE(widget.pressed(), count); QTRY_COMPARE(widget.released(), count); } |