user32: Fake success for detaching adapters.
It is currently unsupported. This helps later patches so that settings handlers using a new interface can be introduced without detaching adapter support, making patches smaller. Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
411fe4f1c3
commit
f1e7d5bbd6
|
@ -3287,6 +3287,15 @@ static void trace_devmode(const DEVMODEW *devmode)
|
|||
TRACE("\n");
|
||||
}
|
||||
|
||||
static BOOL is_detached_mode(const DEVMODEW *mode)
|
||||
{
|
||||
return mode->dmFields & DM_POSITION &&
|
||||
mode->dmFields & DM_PELSWIDTH &&
|
||||
mode->dmFields & DM_PELSHEIGHT &&
|
||||
mode->dmPelsWidth == 0 &&
|
||||
mode->dmPelsHeight == 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* ChangeDisplaySettingsExW (USER32.@)
|
||||
*/
|
||||
|
@ -3318,7 +3327,8 @@ LONG WINAPI ChangeDisplaySettingsExW( LPCWSTR devname, LPDEVMODEW devmode, HWND
|
|||
if (devmode->dmSize < FIELD_OFFSET(DEVMODEW, dmICMMethod))
|
||||
return DISP_CHANGE_BADMODE;
|
||||
|
||||
if (((devmode->dmFields & DM_BITSPERPEL) && devmode->dmBitsPerPel) ||
|
||||
if (is_detached_mode(devmode) ||
|
||||
((devmode->dmFields & DM_BITSPERPEL) && devmode->dmBitsPerPel) ||
|
||||
((devmode->dmFields & DM_PELSWIDTH) && devmode->dmPelsWidth) ||
|
||||
((devmode->dmFields & DM_PELSHEIGHT) && devmode->dmPelsHeight) ||
|
||||
((devmode->dmFields & DM_DISPLAYFREQUENCY) && devmode->dmDisplayFrequency))
|
||||
|
|
|
@ -765,6 +765,15 @@ static BOOL get_primary_adapter(WCHAR *name)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
static BOOL is_detached_mode(const DEVMODEW *mode)
|
||||
{
|
||||
return mode->dmFields & DM_POSITION &&
|
||||
mode->dmFields & DM_PELSWIDTH &&
|
||||
mode->dmFields & DM_PELSHEIGHT &&
|
||||
mode->dmPelsWidth == 0 &&
|
||||
mode->dmPelsHeight == 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* ChangeDisplaySettingsEx (MACDRV.@)
|
||||
*
|
||||
|
@ -811,6 +820,12 @@ LONG CDECL macdrv_ChangeDisplaySettingsEx(LPCWSTR devname, LPDEVMODEW devmode,
|
|||
return DISP_CHANGE_SUCCESSFUL;
|
||||
}
|
||||
|
||||
if (is_detached_mode(devmode))
|
||||
{
|
||||
FIXME("Detaching adapters is currently unsupported.\n");
|
||||
return DISP_CHANGE_SUCCESSFUL;
|
||||
}
|
||||
|
||||
if (macdrv_get_displays(&displays, &num_displays))
|
||||
return DISP_CHANGE_FAILED;
|
||||
|
||||
|
|
|
@ -329,6 +329,15 @@ BOOL CDECL X11DRV_EnumDisplaySettingsEx( LPCWSTR name, DWORD n, LPDEVMODEW devmo
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL is_detached_mode(const DEVMODEW *mode)
|
||||
{
|
||||
return mode->dmFields & DM_POSITION &&
|
||||
mode->dmFields & DM_PELSWIDTH &&
|
||||
mode->dmFields & DM_PELSHEIGHT &&
|
||||
mode->dmPelsWidth == 0 &&
|
||||
mode->dmPelsHeight == 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* ChangeDisplaySettingsEx (X11DRV.@)
|
||||
*
|
||||
|
@ -364,6 +373,12 @@ LONG CDECL X11DRV_ChangeDisplaySettingsEx( LPCWSTR devname, LPDEVMODEW devmode,
|
|||
return DISP_CHANGE_SUCCESSFUL;
|
||||
}
|
||||
|
||||
if (is_detached_mode(devmode))
|
||||
{
|
||||
FIXME("Detaching adapters is currently unsupported.\n");
|
||||
return DISP_CHANGE_SUCCESSFUL;
|
||||
}
|
||||
|
||||
for (i = 0; i < dd_mode_count; i++)
|
||||
{
|
||||
if (devmode->dmFields & DM_BITSPERPEL)
|
||||
|
|
|
@ -660,6 +660,7 @@ extern void X11DRV_init_desktop( Window win, unsigned int width, unsigned int he
|
|||
extern void X11DRV_resize_desktop(BOOL) DECLSPEC_HIDDEN;
|
||||
extern BOOL is_virtual_desktop(void) DECLSPEC_HIDDEN;
|
||||
extern BOOL is_desktop_fullscreen(void) DECLSPEC_HIDDEN;
|
||||
extern BOOL is_detached_mode(const DEVMODEW *) DECLSPEC_HIDDEN;
|
||||
extern BOOL create_desktop_win_data( Window win ) DECLSPEC_HIDDEN;
|
||||
extern BOOL get_primary_adapter(WCHAR *) DECLSPEC_HIDDEN;
|
||||
extern void X11DRV_Settings_AddDepthModes(void) DECLSPEC_HIDDEN;
|
||||
|
|
Loading…
Reference in New Issue