From 6e9906775402b1777f2ddd1c0af2d8ae0907fca9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=B7=E7=94=B5=E8=8A=BD=E8=A1=A3?= Date: Sun, 11 Oct 2026 17:06:06 -0400 Subject: [PATCH] 14.31: the presets menu waited for, as Qt 6.12 shows it later --- tests/NewCanvasSheetTests.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/NewCanvasSheetTests.cpp b/tests/NewCanvasSheetTests.cpp index 77104a1..6681fa2 100644 --- a/tests/NewCanvasSheetTests.cpp +++ b/tests/NewCanvasSheetTests.cpp @@ -348,13 +348,18 @@ void NewCanvasSheetTests::theMoreButtonDrawsThreeDotsAndOpensTheMenu() fixture.presets.setPalette(red); const QColor centre = fixture.presets.grab().toImage().pixelColor(26, 14); QVERIFY2(centre.red() > 200 && centre.red() - centre.green() > 60, qPrintable(centre.name())); + // Qt 6.12 shows the menu later: watch until it shows. bool shown = false; - QTimer::singleShot(0, fixture.presets.menu(), [&] { - shown = fixture.presets.menu()->isVisible(); + QTimer watch; + QObject::connect(&watch, &QTimer::timeout, [&] { + if (!fixture.presets.menu()->isVisible()) + return; + shown = true; fixture.presets.menu()->close(); }); + watch.start(10); QTest::mouseClick(&fixture.presets, Qt::LeftButton); - QVERIFY(shown); + QTRY_VERIFY(shown); } void NewCanvasSheetTests::thePillsStepThroughTheirChoices()