Module: wine
Branch: master
Commit: 427152ec7b4ee85631617b693dbf1deea763c0ba
URL: https://source.winehq.org/git/wine.git/?a=commit;h=427152ec7b4ee85631617b69…
Author: Zhiyi Zhang <zzhang(a)codeweavers.com>
Date: Tue Nov 5 21:05:45 2019 +0800
winex11.drv: Fix NoRes mode handler having an empty mode.
After 25167fb286822c93582457815bcf069fef040976 get_primary_monitor_rect()
returns an empty rectangle before X11DRV_DisplayDevices_Init() is called.
So use get_host_primary_monitor_rect() to get the current X desktop size.
It's also more intuitive this way.
Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/winex11.drv/settings.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/winex11.drv/settings.c b/dlls/winex11.drv/settings.c
index 800b65dbfd..a4f172037c 100644
--- a/dlls/winex11.drv/settings.c
+++ b/dlls/winex11.drv/settings.c
@@ -146,7 +146,7 @@ static LONG X11DRV_nores_SetCurrentMode(int mode)
/* default handler only gets the current X desktop resolution */
void X11DRV_Settings_Init(void)
{
- RECT primary = get_primary_monitor_rect();
+ RECT primary = get_host_primary_monitor_rect();
X11DRV_Settings_SetHandlers("NoRes",
X11DRV_nores_GetCurrentMode,
X11DRV_nores_SetCurrentMode,
Module: wine
Branch: master
Commit: 914b5519b1cd96f9ae19f1eec226e94af96354b9
URL: https://source.winehq.org/git/wine.git/?a=commit;h=914b5519b1cd96f9ae19f1ee…
Author: Zhiyi Zhang <zzhang(a)codeweavers.com>
Date: Tue Nov 5 21:04:27 2019 +0800
winex11.drv: Use a separate virtual desktop display device handler.
If we want to query host monitor dimensions, we need to use XRandR
or Xinerama handler. However when in virtual desktop mode, its display
device handler overrides other handlers. So we need to separate them.
Then we can implement features that require host monitor dimensions like
checking whether the virtual desktop window is fullscreen.
Signed-off-by: Zhiyi Zhang <zzhang(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/winex11.drv/desktop.c | 104 ++++++++++++++++++++++++++++++++++++++++++--
dlls/winex11.drv/display.c | 34 ++++++++-------
dlls/winex11.drv/x11drv.h | 2 +
dlls/winex11.drv/xinerama.c | 31 +++----------
4 files changed, 128 insertions(+), 43 deletions(-)
Diff: https://source.winehq.org/git/wine.git/?a=commitdiff;h=914b5519b1cd96f9ae19…