First we need to agree on whether or not this is the right thing to do. If we 
agree that it is, then we should absolutely do that. That’s what I was 
advocating for in my comments on the change, too.



Confidential
From: David C. Partridge <[email protected]>
Date: Tuesday, 12 August 2025 at 12:15
To: EXT Mitch Curtis <[email protected]>
Subject: RE: [Development] Calling QWindow::requestActivate after QWindow::show 
and before QTest::qWaitForWindowActive
Shouldn't some words about this be added to the user documentation to tell
us not to do that...

D.

-----Original Message-----
From: Development <[email protected]> On Behalf Of EXT
Mitch Curtis via Development
Sent: 12 August 2025 01:53
To: Qt Development <[email protected]>
Subject: [Development] Calling QWindow::requestActivate after QWindow::show
and before QTest::qWaitForWindowActive

Hi,

There's a discussion on
https://codereview.qt-project.org/c/qt/qtdeclarative/+/666818 about whether
we can standardise (by documenting in some form) that we shouldn't call
requestActivate before qWaitForWindowActive. Essentially, existing code in
tests looks like this:

    window->show();
    window->requestActivate();
    QVERIFY(QTest::qWaitForWindowActive(window.data()));

And would become this:

    window->show();
    QVERIFY(QTest::qWaitForWindowActive(window.data()));

As Axel has explained, this causes race conditions on XCB, and apparently is
redundant on all platforms:

> To begin with, an autotest should be as close as possible to a real world
scenario.
> When the only window around is being shown, it is automatically activated.
The additional window->requestActivate() redundant and not a real world
scenario. This alone justifies its removal.

I'd like to get agreement that this is the right thing to do on all
platforms before proceeding (and then removing it en masse).

Cheers.

Confidential
--
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development
-- 
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development

Reply via email to