If sway has no screen is positioned at offset (0,0), then Everspace via Steam Proton will be misaligned and cursor position is invalid.
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_versionorsway -v - sway version 1.10-dev-77b9ddab (Aug 23 2024, branch 'master')
-
-
Debug Log:
- Run
sway -d 2> ~/sway.logfrom 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
- Run
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
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
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.
https://bugs.winehq.org/show_bug.cgi?id=57120
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.
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.