When a widget is placed at y=0 on an elementary window with the default theme, the titlebar steals mouse events from the topmost 1px edge of the widget. In the default window theme, there is a black section on the titlebar that holds the window title text... this black section is offset to the right by ~25 pixels or so, creating an initial "void" area. The titlebar does not steal events from the widget in that area below the "void"... the mouse events are only stolen below the "black" [grabbable] area of the titlebar.
In the attached image:
...moving the mouse from A to B, the widget receives the mouse-in event. However, moving the mouse from A to C, the widget does not receive the mouse-in event.
For further evidence, in the attached program (attachment:mouse-focus-test.c), if you carefully transition/move the mouse between the titlebar and the button, you'll see the mouse-in event at y=22 and mouse-out event at y=21 for the button under the "void" area, as expected. However, at the titlebar's "black" area the mouse-in event occurs at y=23 and mouse-out at y=22 for the button, which is wrong.
Logically, this will probably be dependent on which theme is used and whether it wants to render a titlebar that "bleeds" into the windows client area... however, the default elementary theme under Wayland/Weston? does not *visually* indicate that the "black" area of the titlebar is rendered on top of the button (i.e. in the client area).
This does not appear to be an issue on x11... although, x11 does not render the same theme either.
wayland | master | heads/master-0-g477dcd8 |
drm | master | heads/master-0-gb7bb9e9 |
macros | master | heads/master-0-gc98b41d |
glproto | master | heads/master-0-g8e3407e |
dri2proto | master | heads/master-0-gead89ad |
mesa | master | heads/master-0-gce5096a |
kbproto | master | heads/master-0-gf7022f5 |
libX11 | master | heads/master-0-gf49bb2d |
libxkbcommon | master | heads/master-0-ga392d26 |
pixman | master | heads/master-0-gd8ac35a |
cairo | master | heads/master-0-ge66e9ac |
weston | master | heads/master-0-geb3c73f |
efl | master | heads/master-0-gd26f788 |
elementary | master | heads/master-0-g2090a45 |