[PATCH 6/6] user32: Implement EnumDisplayDevicesW() based on EnumDisplayMonitors() and GetMonitorInfoW().

Alexandre Julliard julliard at winehq.org
Mon Mar 31 05:20:48 CDT 2014

Ken Thomases <ken at 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.

Alexandre Julliard
julliard at winehq.org

More information about the wine-devel mailing list