Hello,
I personally hate when applications decide to change my screen
resolution without asking me, or some applications just won't run
inside window.
So I did fake display interface for the winex11.drv. It allows you to
send any display resolution and frequency to the application, but it
does not change resolution.
It's small and simple patch, and won't probably ever be included into
the mainline wine. However I'll post it here as it might be useful for
some.
To enable, create string key UseFakeDisp with value Y in
H_C_U/Software/Wine/X11 Driver
Default fake resolution is 800x600 60HZ, you can change default with
registry keys FakeDispHeight, FakeDispWidth, FakeDispFreq
You can also use env variable WINE_FAKEDISP=WIDTHxHEIGHT_FREQ (eg.
WINE_FAKEDISP=1024x768_60)
Might improve it later to use the same syntax for default resolution
and allow multiple fake resolutions to be defined with ; separator.
This is also useful for dual head setups where you may want to run
game or application fullscreen on other monitor while still keeping
the other alive.
There is also interesting side effect: While some applications throw
error or won't run on resolutions they don't support, some
applications that don't support them still run with the resolution
specified. Eg. I can run Ys games with 1440x900 resolution where they
normally would not run, and they look great.
Cheers.