SUMMARY If a pen comes close to the screen on an opengl* window, and is then hovered onto a new window, no "proximity_in" event is generated for that new window. STEPS TO REPRODUCE 1. Clone `https://github.com/0x182d4454fb211940/winit.git` 2. Switch to `proximity-test` branch. (Alternatively, use something that can directly print the tablet events. This is just a stripped-down version of where I noticed the bug.) 3. Run `cargo run --example proximity_test` 4. Bring the pen close to the screen, such that the pointer is inside the window that just opened. Take the pen away from the screen. 5. Bring the pen close to the screen, such that the pointer is inside an opengl* window. Move the pen onto the window spawned by cargo (so the pointer jumps directly from the opengl window to the new window), without touching the screen, and while maintaining pointer hover. Take the pen away. 6. Observe the output. OBSERVED RESULT proximity event: ProximityIn { /* snip */ } proximity event: ProximityOut proximity event: ProximityOut EXPECTED RESULT proximity event: ProximityIn { /* snip */ } proximity event: ProximityOut proximity event: ProximityIn { /* snip */ } proximity event: ProximityOut SOFTWARE/OS VERSIONS Linux/KDE Plasma: 6.4.7-arch1-3 (64-bit) (available in About System) KDE Plasma Version: 5.27.7 KDE Frameworks Version: 5.108.0 Qt Version: 5.15.10 ADDITIONAL INFORMATION My implementation here is very rough and could somehow be the source of the error. However gnome exhibits what I expect to be the correct behaviour. * OpenGL is my guess. I originally noticed this with kitty, which I believe uses opengl, and I tried with glxgears and that also reproduced the bug. Moving the pen pointer from firefox or the desktop correctly produced proximity_in events.
That is on wayland, can you confirm? It shoudn't make a difference whatever the client is implemented in. A good way to confirm the issue, would be to provide the logs with WAYLAND_DEBUG=1 enabled and see that the proximity events get lost. If it came to it, providing a way to reproduce the problem with a piece of software that is readily available would also make it easier to fix and test.
(In reply to Aleix Pol from comment #1) > That is on wayland, can you confirm? Yes > A good way to confirm the issue, would be to provide the logs with > WAYLAND_DEBUG=1 enabled and see that the proximity events get lost. If it > came to it, providing a way to reproduce the problem with a piece of > software that is readily available would also make it easier to fix and test. I wasn't aware of that flag. `WAYLAND_DEBUG=1 systemsettings 2>&1 | grep "proximity_in\|proximity_out"` works well. I'm wondering if actually it's do with some kind of "half-initialised" state with my pen. I'm also struggling to reproduce it: it does still happen, but it's hard to pin down whether it's opengl windows or any window or fullscreen windows because sometimes when I launch that command the proximity_in events are generated, sometimes they aren't, and sometimes by playing with the pen it will stop or start working (but I can't pin down what is causing that). From the log: [3584498.375] zwp_tablet_tool_v2@4278190081.proximity_in(1197, zwp_tablet_v2@4278190080, wl_surface@29) [3584498.424] zwp_tablet_tool_v2@4278190081.proximity_in(1198, zwp_tablet_v2@4278190080, wl_surface@29) ... [3585144.816] zwp_tablet_tool_v2@4278190081.proximity_out() ... [3587967.804] zwp_tablet_tool_v2@4278190081.proximity_out() I have the entire log file if that would be helpful, but I don't know how to upload it (pastebin?)
I suppose it's notable that there are two proximity in events. Before I thought this was due to the pen vs eraser tool, but that doesn't make sense since it's the same tablet_tool object.
Can't reproduce. Have you found a reliable way to reproduce it in the meantime?
Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone!
This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging Thank you for helping us make KDE software even better for everyone!