[GTK3]Set pass through seems not work

I have an output window, and want to make the mouse event passing through to any beneath windows. I have just found gdk_window_set_pass_through() under GTK3, but it seems not work neither under X nor wayland backend.
I want to know if anyone has succeeded in using it?

I believe it’s only for a window hierarchy. Suppose you have a main window M with two overlapping childs A, B. If you set B as pass-through, pointer input events directed at B will go to A.

Windows of other processes do not count. For that you need gdk_window_input_shape_combine_region

Note: it was introduced in commit 4c3eece6 and it’s used in GtkOverlay

1 Like

Thank you lb90 for your reply. I have just understood that set_pass_through works only on a child widget that supports pass_through property such as GtkOverlay.
I’am search a way to be able to set pass-through on the main window, and the mouse events can be received by the under window event of another process.
I know the method gdk_window_set_input_shape_combine_region() and it does work for X backend desktop environment, but it has no effect on xWayland, I need xWayland (under wayland back-end) to be able to move the window.

This seems to be a XWayland or a compositor issue

Thank you lb90 for your input.
This was also what I thought. But it (set_input_shape_combine_region) seems work with the same xWayland back-end if we uses GTK4(see here).

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.