mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/win32-vd_agent
synced 2025-12-27 14:54:11 +00:00
Reattach monitors
Teach vdagent to attach monitors. A monitor needs to be enabled before we can set the custom resolution. Fortunately, the client doesn't seem to have time to catch that, so things are smooth. This is require to allow the virt-viewer display menu to work properly and enable extra monitors: https://bugzilla.redhat.com/show_bug.cgi?id=919530
This commit is contained in:
parent
67c1bcf493
commit
0ba6e29363
@ -243,6 +243,7 @@ bool DesktopLayout::init_dev_mode(LPCTSTR dev_name, DEVMODE* dev_mode, DisplayMo
|
||||
DWORD best = -1;
|
||||
QXLEscapeSetCustomDisplay custom;
|
||||
HDC hdc = NULL;
|
||||
LONG ret;
|
||||
|
||||
ZeroMemory(dev_mode, sizeof(DEVMODE));
|
||||
dev_mode->dmSize = sizeof(DEVMODE);
|
||||
@ -252,6 +253,11 @@ bool DesktopLayout::init_dev_mode(LPCTSTR dev_name, DEVMODE* dev_mode, DisplayMo
|
||||
return true;
|
||||
}
|
||||
|
||||
// attach
|
||||
EnumDisplaySettings(dev_name, ENUM_CURRENT_SETTINGS, dev_mode);
|
||||
ret = ChangeDisplaySettingsEx(dev_name, dev_mode, NULL, CDS_UPDATEREGISTRY, NULL);
|
||||
vd_printf("attach %d", ret);
|
||||
|
||||
// Update custom resolution
|
||||
custom.xres = mode->_width;
|
||||
custom.yres = mode->_height;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user