sway icon indicating copy to clipboard operation
sway copied to clipboard

If sway has no screen is positioned at offset (0,0), then Everspace via Steam Proton will be misaligned and cursor position is invalid.

Open zDEFz opened this issue 1 year ago • 3 comments

EDIT It turns out you require one screen at position 0 0. I touched the original config with output DP-2 resolution 1920x1080 position 0 0 and it still works on both screens! As opposed to output DP-2 resolution 1920x1080 position 1920,0 which made it only interactable menus at the left screen!

Proposal Make Sway display a warning or error if no screen is positioned at offset (0,0)

Please fill out the following:

  • Sway Version:

    • swaymsg -t get_version or sway -v
    • sway version 1.10-dev-77b9ddab (Aug 23 2024, branch 'master')
  • Debug Log:

    • Run sway -d 2> ~/sway.log from a TTY and upload it to a pastebin, such as gist.github.com.
    • This will record information about sway's activity. Please try to keep the reproduction as brief as possible and exit sway.
    • Attach the full file, do not truncate it.
    • https://0x0.st/XtAL.log

IMPORTANT NOTE: This log was requested by @llyyr to do with default config. The only thing added was output DP-2 resolution 1920x1080 position 1920,0 with two 1920x1080 displays connected. Then we found that only on the left screen menus are interactable, but not on the right, at all. Then we went to test without any output. As effect on both screens the menus were interactable. Afterwards I went into my main config suspecting it's all about offsets!

Original configuration file part:

  • Configuration File:
    • Please try to produce with the default configuration.
    • If you cannot reproduce with the default configuration, please try to find the minimal configuration to reproduce.
    • Upload the config to a pastebin such as gist.github.com.
    • https://0x0.st/Xtm-.txt

Afterwards change! Above Log does not belong to < this description > !

  • Description:
    • Setup one Display OR both with fixed offsets. Two screens @ 1920x1080
    • First offset: output $L mode 1920x1080@240Hz transform 270 position 0 720
    • Second offset: output $R mode 1920x1080@240Hz position 1080 1080
    • Run Everspace 1 with Steam Proton 9 or Experimental
    • Result: Everspace 1 game on right screen - cannot go all the way down in Menus - it wont react properly.

Solution identified

  • Specify outputs as follows:
  • First offset: output $L mode 1920x1080@144Hz transform 270 position 0 0
  • Second offset: output $R mode 1920x1080@144Hz position 1080 340

zDEFz avatar Aug 26 '24 20:08 zDEFz

Conversation with kennylevinsen:

23:08 <kennylevinsen> sway shouldn’t warn, having no display at 0,0 is supported - e.g., that position could be for a laptop display that is off, or a display you have disconnected
23:08 <kennylevinsen> but it might be that xwayland or proton gets confused, thinking there should be one there? Dunno 
23:35 <bluetail> Yes
23:35 <bluetail> Thats exactly it
23:35 <bluetail> Previously we could set a primary screen with xwayland flag, that is no longer possible.

Untested: xrandr --output "DP-2" --primary does not always work for me, which could be possibly the workaround, for binding xwayland to a display. In any case, I would appreciate anything that works consistently. The thing is, there are games on X that can make use of multiple screens, making it more confusing In that case, the first display would be (0,0) as xwayland display one, and the second display would be xwayland display two at another value

zDEFz avatar Aug 26 '24 21:08 zDEFz

This is an issue with wine, you should report it there. https://bugs.winehq.org/buglist.cgi?component=winex11.drv&product=Wine&resolution=---

You can reproduce the issue with as little as setting an arbitrary position for your display, so that it doesn't start at 0,0 then start wine notepad and move it around or resize the window.

This can't be reproduced with any other xwayland clients besides wine.

llyyr avatar Aug 27 '24 02:08 llyyr

https://bugs.winehq.org/show_bug.cgi?id=57120

zDEFz avatar Aug 27 '24 05:08 zDEFz

https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/395

ofourdan: no, I tried and it's been discussed in https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/395 and the consensus is it's easier to fix your Wayland ouput configuration than making Xwayland accept non-zero coordinate for the top left screen corner.

zDEFz avatar Dec 03 '24 18:12 zDEFz

I've been using offset screens for a while (yes, the use case is exactly as mentioned before – the laptop screen is offset and other screens are placed around). In general, it works great, except for Xwayland apps that for me work only on one of the screens (the apps themselves are fine, the mouse interaction is not). Note that I'm also using negative offsets.

AlexDaniel avatar Jan 03 '25 00:01 AlexDaniel