Hi, On Mon, 9 Jul 2018 at 18:50, Simon Ser <cont...@emersion.fr> wrote: > > On July 9, 2018 3:42 PM, Olivier Fourdan <four...@gmail.com> wrote: > > So, can you please elaborate exactly what this is supposed to fix and > > how to reproduce the issue? > > I've configured my compositor with a 90 degree output rotation. Here are the > values sent by my compositor, as received by xwayland: > > output_handle_mode 1600 850 > xdg_output_handle_logical_size 850 1600 > > As far as I can tell this is correct. > > Without this patch, if I open for instance Firefox, pointer events are > correctly > handled if the pointer is in the top half of the screen, but when the pointer > moves in the bottom part the Y axis coordinate gets stuck. Here's xrandr's > output: > > Screen 0: minimum 320 x 200, current 850 x 1600, maximum 8192 x 8192 > XWAYLAND0 connected 1600x848+0+0 left (normal left inverted right x axis y > axis) 0mm x 0mm > 848x1600 59.95*+ > > This patch fixes this bug. Here's xrandr's output: > > Screen 0: minimum 320 x 200, current 850 x 1600, maximum 8192 x 8192 > XWAYLAND0 connected 850x1600+0+0 left (normal left inverted right x axis y > axis) 0mm x 0mm > 1600x850 59.92*+ > > Notice the difference between the logical geometry (850x1600+0+0) and the > current mode (1600x850). > > I just noticed this patch breaks HiDPI outputs (xrandr advertises a > 850x1600+0+0 logical geometry). We might want to use the logical size for > RRMode, but compensate transformations. What do you think?
Yeap, that's what I meant, xdg-output would advertise the logical size (i.e. appropriately scaled), so we want to pass RR the values provided by xdg-output here, not those from wl_output. Basically, we do not need to keep or reuse the mode_width/height as with your initial patch, we just need to compensate the rotation as you said (as for the rationale behind this bug, mutter doesn't use rotations, so I didn't notice it). [unrelated, as an aside, it looks like in your example, the compositor might not be sending the geometry, so we end up with 0 in the physical size] Cheers, Olivier _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel