Skip to content

Plasma Dialog: Implement outputOnly in terms of WindowTransparentForInput

Kai Uwe Broulik requested to merge work/kbroulik/dialog-outputonly into master

I am not entirely sure about the history of the custom X code but effectively this Qt window flag is doing just that. This also makes it work on Wayland.


Not tested on X yet 😄

Fixes the OSD not being click-through on Wayland. However it only works the first time the OSD shows, all subsequent times it is opaque for pointer, I don’t see any set_input_region calls happening on subsequent shows. Is this an oversight in my implementation of it in Qt [1] or a bug elsewhere?

Edit: I forgot to reset mInputRegion / mTransparentInputRegion in QWaylandWindow::reset() so it’s not re-applied on subsequent show 😞

Qt fix: https://codereview.qt-project.org/c/qt/qtwayland/+/527975

[1] https://code.qt.io/cgit/qt/qtwayland.git/commit/?id=604db6b5499f5de1d700f19c03bc43fe2f59380d

Edited by Kai Uwe Broulik

Merge request reports