Bug 2047503 - openQA clicks in anaconda on KDE stop working shortly after it starts
Summary: openQA clicks in anaconda on KDE stop working shortly after it starts
Alias: None
Product: Fedora
Classification: Fedora
Component: kwin
Version: 36
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Daniel Vrátil
QA Contact: Fedora Extras Quality Assurance
Whiteboard: openqa AcceptedBlocker
Depends On:
Blocks: F36BetaBlocker
TreeView+ depends on / blocked
Reported: 2022-01-27 22:54 UTC by Adam Williamson
Modified: 2022-02-24 22:05 UTC (History)
10 users (show)

Fixed In Version: kwin-5.24.2-2.fc36
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2022-02-24 22:05:23 UTC
Type: Bug

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
KDE Software Compilation 449273 0 NOR UNCONFIRMED Mouse clicks from openQA (automated test framework) in Fedora installer on KDE 5.23.90 stop working shortly after it sta... 2022-01-28 00:18:27 UTC

Description Adam Williamson 2022-01-27 22:54:14 UTC
Since Rawhide compose Fedora-Rawhide-20220119.n.0, openQA tests of install from the KDE live image have been failing consistently. What seems to happen is, a fairly short time after the installer starts up, mouse clicks from openQA on elements of anaconda just seem to...stop working.

anaconda is actually still working - lruzicka found that if we use openQA's 'development mode', which lets you hijack its VNC connection manually, he could click on things OK. And openQA can still click on things outside of the anaconda window. But any attempt by openQA to click on anything inside the anaconda window just doesn't work, it doesn't do anything.

This is not affecting the Workstation image or the traditional installer images. It's only affecting KDE.

The changes in Fedora-Rawhide-20220119.n.0 included bumps of most of KDE/Plasma from 5.23.5 to 5.23.90, so that seems like the obvious suspect here. anaconda and GTK+ were not changed. kwin seems like the *most* likely related component, so I went with that to start with.

Here's some more detail on exactly how openQA (well, technically os-autoinst, the test runner component) "clicks on things", all via qemu's built-in VNC server:

* Match the relevant area and determine its centre point
* Set the cursor to that precise position; it does not "move" the cursor the way a human would, it just zaps it there with a single VNC event (see https://github.com/os-autoinst/os-autoinst/blob/master/consoles/VNC.pm#L745-L760)
* Send a 'mouse button down' event
* Wait 0.15 seconds
* Send a 'mouse button up' event
* Wait 1 second
* Set the cursor to 1023,767: this is called a "mouse hide" event, the purpose is to position the cursor somewhere we hope it won't happen to interfere with a subsequent match attempt (i.e. the bottom right corner of the screen)

So each time we 'click on something', that's what happens. The bug seems to start happening after about the second or third time we click on something in anaconda.

Possibly also relevant: os-autoinst by default runs qemu with an emulated tablet for input, not an emulated mouse (as virt-manager also does, these days). I believe this is supposed to make input smoother or more efficient somehow, I forget the details. There is a way you can configure it not to do this, I'll test with that set to see if it makes any difference.

Comment 1 Adam Williamson 2022-01-29 19:17:43 UTC
Proposing as a Beta blocker as a violation of this provision of the Beta criteria: "A bug is considered a Beta blocker bug if any of the following criteria are met: ... Bug hinders execution of required Beta test plans or dramatically reduces test coverage". This is definitely hindering automated execution of required Beta test plans for the KDE live; I cannot find any workaround for it, so the KDE live tests will fail for every compose until this is fixed.

Comment 2 Adam Williamson 2022-02-07 17:10:27 UTC
+4 in https://pagure.io/fedora-qa/blocker-review/issue/594 , marking accepted.

Comment 3 Ben Cotton 2022-02-08 20:08:42 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 36 development cycle.
Changing version to 36.

Comment 4 Neal Gompa 2022-02-23 01:01:38 UTC
Aleix, Nate: Do either of you know if there were significant changes around handling tablet-style input in kwin in 5.24.x that could affect this?

Comment 5 Neal Gompa 2022-02-23 01:23:24 UTC
With some light digging, I *suspect* (though I'm not certain) that this MR might be the culprit: https://invent.kde.org/plasma/kwin/-/merge_requests/1720

Comment 6 Aleix Pol 2022-02-23 01:35:15 UTC
Nothing should have changed, as far as I know.

Can you think of a way we could somehow test this in a development environment?

Comment 7 Adam Williamson 2022-02-23 07:14:52 UTC
Well, I think it might at least be possible to somehow reduce it to a direct run of os-autoinst, which would avoid involving openQA and its whole 'template' system proper. But you'd still need to somehow 'encapsulate' the dev env for os-autoinst to run on, somehow, that way. (The most typical way of running it is on a virtual machine). I'll see if I can think of anything.

I tried building kwin with the commit Neal mentioned reverted, but the build failed :/ I'll look at why tomorrow. https://koji.fedoraproject.org/koji/taskinfo?taskID=83197468 was the task if anyone else wants to look at it.

Comment 8 Fedora Update System 2022-02-24 07:13:37 UTC
FEDORA-2022-5be61e53fb has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-5be61e53fb

Comment 9 Fedora Update System 2022-02-24 22:05:23 UTC
FEDORA-2022-5be61e53fb has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.