protonscr

Dual monitor setup with virtual desktop issue

protonclosed
ValveSoftware/Proton#4976 · opened 2021-07-17 by RW74 · updated 2021-07-24 · 10 comments · github
RRW74 2021-07-17 github

Hello,
I am using arch with i3wm in a dual monitor setup. I am using using wine virtual desktop to solve most of my issues in moving from one window to an other. I do not have any issue if I use upstream wine or staging, but if I use wine from this repo the result is that I get the virtual desktop shifted by half away to the right of the monitor (meaning the 0,0 coordinate are in the top middle of it). I do have the same issue if I compile using TKG script from upstream or staging and enabling this patch https://github.com/Frogging-Family/wine-tkg-git/blob/master/wine-tkg-git/wine-tkg-patches/proton/valve_proton_fullscreen_hack.patch
if I disable it all looks fine.
Any idea where to look to have this fixed using this wine version? it seems related to fshack, but I had no luck (and maybe skills) in finding where is the issue.

Kkisak-valve maintainer 2021-07-17 github

Hello @RW74, wine-tkg-git is not supported here. Can you reproduce the same behavior with mainline Proton?

RRW74 2021-07-17 github

Hi, the TKG was just a reference as maybe it is related to that patch which I think was extracted from this repo. The same behavior is on the proton mainline too, if I launch a game on steam using what steam provide I get the same result as if I compile it from here.

Aaeikum 2021-07-20 github

Using the virtual desktop isn't really supported either, the fullscreen hack stuff may break it.

RRW74 2021-07-20 github

is there a way I can remove or disable the fs-hack? I tried but unsuccessfully ...

Aaeikum 2021-07-20 github

What is the root problem with normal Proton that you are trying to solve? Which game(s) and what behavior does it have which you don't like?

RRW74 2021-07-20 github

I do not play a lot of games but the one I use it with are star citizen and dcs. without the virtual desktop usually I have these issues ( I use i3wm):

  • moving from one display to an other sometime make the game crash. setting the game in boarderless mode do fix the crash issues but not the mouse and keyboard capture.
  • moving from one workspace to an other on the same display is not possible, seems like the game stays on top of it.
  • I used to have an issue with the mouse and keyboard where the game was trying to keep them even if not on it. I have found in winecfg how to limit it, but sometime does not. Mostly if the game is loading and maybe changing or refreshing the resolution then it still tend to get the ownership on mouse and keyboard.
    with virtual desktop enabled, it runs like inside a window which I can move while the game runs in fullscreen removing all the keyboard and mouse issues I have otherwise. At least I have not found an other way around it.

also and I am not sure why, but there are games that do not start at all after installation (speaking about steam), until I enable virtual desktop. MS2020, at least initially now I do not know. Battlefield 4 and 5, 1 I still have not found the way to make it run. Under steam tend to use the TKG Proton version as I build it with fs-hack disabled.

Aaeikum 2021-07-20 github

The problem with the mouse is you can't leave the game window to interact with things on your other monitor, right? If so, that's being discussed at #53. If that is fixed (we're working on it), then you can use borderless mode to avoid the crash from your first point.

I'm not sure about the second point.

Does that all sound right?

RRW74 2021-07-20 github

seems that discussion is what I found in winecfg, that yes fixed it but not every time, there are situation in which the game start getting back the mouse and the keyboard, not sure what maybe a refresh of something...
the second point I guess is something i3wm style of windows manager related, so not everybody have it.

I guess there is not a list of commit I can rip out from repo to have the fs-hack removed in my building, right?

RRW74 2021-07-22 github

I think I found the spot to disable it:

...
EDITED
I don't find the way to copy the little patch, anyway is just to disable tthese lines on both location of dlls/winex11.drv/opengl.c
'
//if (ctx->fs_hack != gl->fs_hack || (ctx->fs_hack && ctx->drawables[0] != gl))
// setup_fs_hack = TRUE;
'
...

at least the virtual desktop works fine now. Am I going to have other issues if I do that? it seems working fine so far.
Would it be possible to setup an environment variable to actually manage it per app if needed?

RRW74 2021-07-24 github

closing this issue, the previous patch fix my issue. thank you for your time.

Nothing extracted yet.