Ken Thomases ken@codeweavers.com writes:
On Mar 28, 2014, at 10:58 AM, Alexandre Julliard wrote:
I think it should be the other way around, with EnumDisplayDevices being the main function, with some sort of centralized management of display devices.
EnumDisplayMonitors() + GetMonitorInfo() provides the information necessary to implement EnumDisplayDevices(), but not vice versa.
Can you elaborate on what you envision? What management do you want centralized, besides the enumeration and querying of properties represented by those three functions? Do you also mean enumerating and changing display settings/modes? Would the centralized management be in the wineserver? In user32? In the graphics driver?
Yes, display settings/modes, adding/removing monitors, managing work area, restoring resolution on process exit, etc. There would be parts in user32, parts in the driver, but it should all run in the context of the explorer process. Normal processes should retrieve the info from explorer instead of using graphics driver calls.