Zhiyi Zhang
23ce18d5e5
user32: Always wait for the desktop process to be ready in load_desktop_driver().
...
Having a __wine_display_device_guid property in the desktop window only guarantees that the window
is created. Explorer.exe still has to finish setting up virtual desktop, display settings etc.
load_desktop_driver() needs to make sure that the desktop initialization is done before allowing
applications to call user32 driver functions. Otherwise, they might get incorrect data. This race
condition became apparent after aadae4d1ea
, which adds ~100ms to the
initialization process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49762
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 12:30:43 +02:00
Jefferson Carpenter
bc9d4eb55a
user32: Always initialize module in load_desktop_driver.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48742
Signed-off-by: Jefferson Carpenter <jeffersoncarpenter2@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-12 21:18:18 +01:00
Jacek Caban
be6e6fb23c
user32: Initialize module handle to NULL for null driver.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:47:12 +01:00
Jacek Caban
beaef92010
user32: Allow using null driver as a normal graphics driver.
...
When explicitly requested by config, Wine will use null driver in the
same way as we allow using it for invisible winstations.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 08:51:25 +01:00
Huw Davies
ae7531f673
user32: Remove unused GetAsyncKeyState() driver entry.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-06 16:04:03 +01:00
Zhiyi Zhang
23b28323cb
winex11.drv: Use generic GetMonitorInfo.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 13:22:17 +02:00
Zhiyi Zhang
074abfe097
winex11.drv: Use generic EnumDisplayMonitors.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 13:22:17 +02:00
Bernhard Übelacker
f5bb76f69a
user32: Let nulldrv return some dummy monitor information.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43187
Signed-off-by: Bernhard Übelacker <bernhardu@mailbox.org>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-04 09:12:36 -05:00
Michael Stefaniuc
b2fc591748
user32: Use the ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 10:16:02 +02:00
Jacek Caban
af4294a9af
user32: Allow creating windows using null driver for invisible winstations.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 16:07:41 +01:00
Alexandre Julliard
b39a0f008b
user32: Remove no longer used clipboard driver entry points.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-26 15:54:05 +09:00
Alexandre Julliard
11c3867349
user32: Add an UpdateClipboard entry point to allow the driver to refresh the clipboard before it's open.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-23 20:30:15 +09:00
Jacek Caban
f0e7bd248e
user32: Introduced ThreadDetach driver entry point.
...
The problem was diagnosed by Ken Thomases.
Currently drivers use DllMain(DLL_THREAD_DETACH) to release thread data.
The problem is that DLLs (like native urlmon.dll, esp. reproducible in
IE8) may still do user32 calls after driver detaches thread. Loader
ensures that since user32.dll was loaded before dependent DLLs, user32's
DllMain will be called in the right moment. Due to lazy loading of
drivers, we have no control over them. We may use a new entry point to
make sure that we detach user32 and driver at the same time.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-27 13:23:52 +09:00
Gerald Pfeifer
1e803cb1df
user32: Avoid shift overflow in nulldrv_GetKeyboardLayoutList.
...
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-30 23:16:51 +09:00
Austin English
230217e4d2
user32: Use winediag debug channel for some error messages.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-17 10:58:40 +09:00
Jactry Zeng
b007a98e1a
user32: Add driver entry point for FlashWindowEx.
...
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-13 23:35:26 +09:00
Alexandre Julliard
070a82e743
user32: Merge the AcquireClipboard and EmptyClipboard driver entry points.
2015-06-03 18:46:53 +09:00
Alexandre Julliard
b7c340de73
user32: Get rid of the unused parameter in the EmptyClipboard driver entry point.
2015-06-03 18:46:53 +09:00
Alexandre Julliard
6a0f3df68c
user32: Don't bother returning a value from the SetWindowRgn driver entry point.
2014-05-01 12:31:14 +02:00
Alexandre Julliard
b4b817b907
user32: Only wait for the desktop process when necessary.
2014-01-30 21:49:32 +01:00
Huw Davies
85e105bd37
user32: Add a GetKeyboardLayoutList driver entry.
2013-11-20 19:38:44 +01:00
Alexandre Julliard
9675aa173a
gdi32: Allow user32 to specify the display driver to use.
2013-10-29 12:51:26 +01:00
Alexandre Julliard
010769249c
user32: Get the graphics driver name from the desktop window registry entry.
2013-10-29 12:12:21 +01:00
Alexandre Julliard
fe441a0682
user32: Register classes once the graphics driver has been loaded, except for the desktop class.
2013-10-24 19:01:54 +02:00
Alexandre Julliard
11597d6b3c
user32: Don't trigger a graphics driver load for functions that require an existing window.
2013-10-23 17:02:56 +02:00
Alexandre Julliard
a897e13fba
user32: Get rid of the CreateCursorIcon driver entry point.
2013-10-22 10:25:44 +02:00
Alexandre Julliard
04ad06353d
user32: Move the common parts of ScrollDC into user32 and the null driver.
2013-04-19 16:16:16 +02:00
Alexandre Julliard
59c0c5fb2d
user32: Don't print a warning when creating the HWND_MESSAGE parent window.
2013-04-02 14:19:45 +02:00
Alexandre Julliard
13fbce5627
user32: Forward SystemParametersInfo calls to the user driver first.
2012-11-15 21:21:49 +01:00
Alexandre Julliard
e17cdb266d
user32: Retrieve the graphics driver module from gdi32.
2012-10-22 15:16:01 +02:00
Alexandre Julliard
24eee97d21
user32: Add a driver entry point for UpdateLayeredWindow.
2012-10-01 13:20:20 +02:00
Alexandre Julliard
a5ef549c6e
user32: Add support for managing a DIB surface for a window.
2012-09-06 12:35:32 +02:00
Vincent Povirk
8c0d568c32
user32: Notify the user driver of hotkey changes.
2011-07-05 16:00:20 +02:00
Alexandre Julliard
7879b8e349
user32: Get rid of the RegisterClipboardFormat driver entry point.
2011-03-07 17:06:50 +01:00
Alexandre Julliard
383d8ac105
user32: Remove GetClipboardFormatName from the user driver interface.
2011-03-04 16:25:52 +01:00
Alexandre Julliard
f1a3480068
user32: Handle input injected through SendInput entirely in user32.
2011-03-02 21:48:39 +01:00
Alexandre Julliard
a7da164949
user32: Retrieve the key state for GetAsyncKeyState from the server.
2011-02-28 22:28:42 +01:00
Ken Thomases
9cb4c21f1a
user32: Rename GetKeyboardLayout param; it's a thread ID, not a layout.
2011-02-10 10:28:01 -06:00
Alexandre Julliard
86c4a3694d
user32: Remove the CURSORICONINFO parameter in the CreateCursorIcon driver entry point.
2010-05-21 13:30:15 +02:00
Alexandre Julliard
8ec6359bbb
user32: Remove the CURSORICON parameter in the SetCursor entry point.
2010-04-21 11:07:45 +02:00
Alexandre Julliard
d676bf246d
user32: Add driver entry points for cursor creation and destruction, and pass the cursor handle to SetCursor.
2010-04-20 19:22:38 +02:00
Alexandre Julliard
83b66549da
user32: Get rid of 16-bit handles in the driver clipboard interface.
2009-12-23 14:27:31 +01:00
Alexandre Julliard
67cbdfb575
user32: Don't print CreateWindow warning for HWND_MESSAGE windows.
2009-10-23 12:23:51 +02:00
Rob Shearman
ea00dc4b49
user32: Free allocated memory in USER_unload_driver.
2009-01-12 13:07:07 +01:00
Maarten Lankhorst
0a6459598a
user32/winex11.drv: Change all user32 operations to use CDECL.
2008-12-23 13:06:04 +01:00
Aric Stewart
5c779bfa0a
user32: Remove the driver call for GetKeyboardLayoutList and instead populate from the registry.
2008-12-18 14:19:39 +01:00
Dmitry Timoshkov
fc48f7743d
user32: Make ToAscii(Ex) and ToUnicode(Ex) prototypes match PSDK.
2008-10-27 12:38:57 +01:00
Alexandre Julliard
9fb76ddd53
user32: Add a SetLayeredWindowAttributes driver entry point.
2008-09-12 15:43:27 +02:00
Alexandre Julliard
2f11213168
user32: Notify the user driver about window extended style changes too.
2008-09-12 14:55:07 +02:00
Alexandre Julliard
4c431197ca
user32: Add an entry point for ShowWindow to the driver interface.
2008-07-30 16:13:28 +02:00