Alexandre Julliard
7507541a5b
user32: Fix wraparound check to avoid gcc optimization.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 20:17:41 +01:00
Dmitry Timoshkov
af88297f4a
user32/tests: Add a message test for group of radio buttons.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:51:48 +01:00
Dmitry Timoshkov
96d0af52eb
user32: Move the auto radio button group logic from BM_SETCHECK to WM_LBUTTONUP handler.
...
This patch also changes the logic to get the control style with WM_GETDLGCODE
instead of GetWindowLong to make the message test pass.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:51:43 +01:00
Dmitry Timoshkov
2d9e3236ea
user32: Don't force a combobox repaint on WM_SIZE.
...
This breaks z-order based painting and causes side effects for
applications that during the WM_PAINT processing reference internal
data associated with a not fully initialized window.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:50:52 +01:00
Jacek Caban
9d4ce95de5
user32: Attempt to set scroll info in SetScrollPos even if SCROLL_GetInternalInfo fails.
...
SetScrollPos may be called on non-scroll window and we should send
SBM_SETSCROLLINFO. This fixes scrollbars in Visio.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 17:07:01 +01:00
Nikolay Sivov
b5f179655c
server: Use base class atom for child window enumeration.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Nikolay Sivov
e8897ebe4e
user32/tests: Add FindWindow() test for versioned class.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Gabriel Ivăncescu
dfb57a1655
user32/listbox: Make LBS_NODATA listboxes error on any attempt to find a value.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
d30aadd3e1
user32/listbox: Don't set any data for LBS_NODATA listboxes.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
cab591c59b
user32/listbox: Return 0 from LB_GETITEMDATA for LBS_NODATA listboxes.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
c980edc227
user32/listbox: Always retrieve zeros in LB_GETTEXT for LBS_NODATA listboxes.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
c920b4dc5a
user32/listbox: Use ULONG_PTR instead of DWORD when retrieving text without HAS_STRINGS.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
0a5c360f39
user32/listbox: Make SetCount fail if LBS_NODATA is not set.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
afe443c3f2
user32/listbox: Disable LBS_NODATA if styles are incompatible with it.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
9b59eb477b
user32/listbox: Clear LBS_OWNERDRAWVARIABLE if LBS_OWNERDRAWFIXED is set.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
24b539dea8
user32/tests: Test incompatible styles for LBS_NODATA.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
2fc9d0afd9
user32/tests: Add some tests for LBS_NODATA.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Gabriel Ivăncescu
686fb70016
user32/tests: Add more Listbox tests for ownerdraw styles.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-16 14:58:41 +01:00
Jacek Caban
8c8701befb
user32: Allow scrollbar control to store scroll info in subclassed window.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46004
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45966
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-07 18:31:11 +01:00
Nikolay Sivov
54cd4464c6
user32/tests: Fix Listbox test failures on some configurations.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-07 17:08:59 +01:00
Alexandre Julliard
542150afe5
user32/tests: Add tests for GetCurrentInputMessageSource().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-05 19:12:12 +01:00
Alexandre Julliard
4da1c4370b
user32: Implement GetCurrentInputMessageSource().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-05 19:12:12 +01:00
Alexandre Julliard
771123afb6
user32: Add stub for GetCurrentInputMessageSource().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-05 19:12:12 +01:00
Jacek Caban
d23be055be
user32/tests: Add scrollbar subclassing tests.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 19:15:34 +01:00
Alexandre Julliard
5d282ec64d
user32: Use height from font metrics for empty text runs in TabbedTextOut().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=39051
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-08 13:22:39 +02:00
Alex Henrie
67a33fce6f
user32: Add stub for SetWindowCompositionAttribute.
...
Based on a patch by Louis Lenders.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44787
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-08 09:34:56 +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
Dmitry Timoshkov
5277aa8f64
user32: Fix the pointer to custom dialog control data.
...
Suggested by vendor2013@herdsoft.com .
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-01 19:12:23 -07:00
Dmitry Timoshkov
606b027277
user32/tests: Add a test for custom dialog control data.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-01 19:12:22 -07:00
Jacek Caban
b8ef42c9fd
user32: Make sure that passed window handle is scroll control before accessing wExtra in SCROLL_GetInternalInfo.
...
Fixes memory corruption in Office 2016.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-20 18:33:12 +02:00
Józef Kucia
34700ae938
user32/tests: Add test for desktop window procedure.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 19:46:42 +02:00
Józef Kucia
a8e7348a3d
user32: Call DefWindowProc() in DesktopWndProc().
...
This fixes a regression introduced by commit
fc14753dc0
.
WM_NCCALCSIZE is not handled yet because it initiates loading the
driver again.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45485
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-19 19:46:42 +02:00
André Hentschel
bfad5527ac
user32/tests: Allow newer Win10 behaviour.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 21:09:23 +02:00
Sven Baars
470f7b20d4
user32/tests: Use the correct procedure for dialog tests (Valgrind).
...
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-17 18:35:40 +02:00
Alexandre Julliard
1505905290
user32: Ignore application-specified DPI awareness when DPI scaling is disabled.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-07 18:16:10 +02:00
Gabriel Ivăncescu
84ac7e1571
user32/listbox: Update the size in SetColumnWidth before calling UpdatePage.
...
Some applications don't forward WM_SIZE from DefWindowProc to the control,
but instead only send a LB_SETCOLUMNWIDTH message, even when the column
width doesn't change (but the listbox size does).
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=22440
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-07 13:23:51 +02:00
Alexandre Julliard
440484fc07
user32: Switch to the window DPI awareness for MDI scrolling.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 12:21:28 +02:00
Alexandre Julliard
a525631920
user32: Scale dialog base units based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 12:06:13 +02:00
Alexandre Julliard
2068b73db5
user32: Process hardware messages in physical coordinates.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 14:25:17 +02:00
Alexandre Julliard
c33615dcf3
user32: Map mouse events to physical coordinates in SendInput.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 14:25:17 +02:00
Alexandre Julliard
ac3e887e5d
user32: Support the MOUSEEVENTF_VIRTUALDESK flag in SendInput().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 14:25:17 +02:00
Alexandre Julliard
8bca1b29cd
user32: Scale coordinates in ClipCursor() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 14:20:11 +02:00
Alexandre Julliard
910f3ed4da
user32: Scale coordinates in Get/SetCursorPos() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 14:19:29 +02:00
Alexandre Julliard
87d1a4a329
server: Scale coordinates in get_window_children_from_point based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 13:32:57 +02:00
Nikolay Sivov
78236592df
user32: When registering redirected class use correct base class name.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45689
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 10:57:39 +02:00
Alexandre Julliard
56b05ded78
user32: Switch to the window DPI awareness in update_window_state().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
72644bb603
user32: Switch to the window DPI awareness to process WM_GETMINMAXINFO.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
0da23418ab
user32: Switch to the window DPI awareness in ShowWindow().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
3bf279e7da
user32: Switch to the window DPI awareness in SetParent().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
700b6182a4
user32: Switch to the window DPI awareness for non-client painting.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
87e49000a1
user32: Scale coordinates in Get/SetWindowPlacement() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
8de1b2c2ce
user32: Scale coordinates in MapWindowPoints() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
c5a6925676
user32: Scale coordinates in WIN_GetRectangles() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Gabriel Ivăncescu
3b9e22fafd
user32/edit: Move common calls outside the blocks.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:01:56 +02:00
Dmitry Timoshkov
1f75f42642
user32: Create a mask from alpha channel when loading a 32 bpp icon.
...
This patch fixes applications that draw the 32 bpp icons manually.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 13:36:27 +02:00
Alexandre Julliard
92f5c6e410
user32: Scale monitor rectangles based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:23:47 +02:00
Alexandre Julliard
7068a85604
user32: Scale window dimensions in DeferWindowPos() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:17:06 +02:00
Alexandre Julliard
4233caa7b8
user32: Scale window dimensions in SetWindowPos() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:16:48 +02:00
Alexandre Julliard
110443acef
user32: Scale initial window dimensions in CreateWindow() based on DPI awareness.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 12:13:25 +02:00
Nikolay Sivov
c9b6dd83a3
user32/listbox: Fix multicolumn navigation on VK_RIGHT.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 17:02:32 +02:00
Alexandre Julliard
f49227db60
user32/tests: Add tests for window rectangles and DPI scaling.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 11:46:10 +02:00
Alexandre Julliard
98146e1bce
user32/tests: Add tests for desktop size and DPI scaling.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 11:43:27 +02:00
Gabriel Ivăncescu
f025570c80
user32/listbox: Fix scrolling for multi-column listboxes.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38565
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 23:02:30 +02:00
Zebediah Figura
44551cfe19
user32: Return RIDI_DEVICENAME for HID devices from GetRawInputDeviceInfo().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:27:56 +02:00
Zebediah Figura
e745a482d1
user32: Return RIDI_DEVICEINFO for HID devices from GetRawInputDeviceInfo().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:27:54 +02:00
Zebediah Figura
85d5fc23b4
user32: Return HID devices in GetRawInputDeviceList().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:27:52 +02:00
Zebediah Figura
9e4e594972
user32: Trace command in hexadecimal in GetRawDeviceInfo().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:27:49 +02:00
Zebediah Figura
6f3fb8c3f2
user32: Move rawinput functions to rawinput.c.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:27:47 +02:00
Fabian Maurer
3d0be0bad8
user32/combo: Properly set dropdown height.
...
Now that user32 and comctl32 combo are separated,
this won't lead to a regression anymore.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 09:17:31 +02:00
Akihiro Sagawa
c6d28c9399
user32: Support Japanese keyboard type in GetKeyboardType.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 16:51:02 +02:00
Nikolay Sivov
201dc289d0
user32/listbox: Update anchor index on LB_SETSEL.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 20:55:10 +02:00
Nikolay Sivov
5fced2810f
user32/tests: Add some ListBox tests for anchor index.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-15 20:55:10 +02: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
Fabian Maurer
a9ac425a90
user32/menu: Release menu in HiliteMenuItem() to avoid deadlock.
...
MENU_SelectItem sends a message, and we must not hold the lock when
that happens
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-20 18:36:56 +02:00
Alexandre Julliard
a36abda773
user32: Make the MonitorFromRect() argument const.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-18 14:11:32 +02:00
Alexandre Julliard
3735f36dc9
user32: Fetch client and window rectangles in a single call.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-18 10:09:55 +02:00
Nikolay Sivov
85d159a408
user32/button: Use per-window dpi settings.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:56 +02:00
Alexandre Julliard
898f4b6c6a
user32: Take DPI awareness into account in GetDpiForMonitorInternal().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:56 +02:00
Alexandre Julliard
aac37e8d0b
user32: Implement monitor rectangle filtering on the user32 side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:56 +02:00
Alexandre Julliard
2be5b054d3
user32: Move monitor functions to sysparams.c.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:56 +02:00
Zhiyi Zhang
bfe6826a16
user32: Return FALSE for invalid handle in IsWindowEnabled().
...
GetWindowLong() returns 0 if passed an invalid window handle,
causing IsWindowEnabled() to incorrectly report TRUE.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:56 +02:00
Zhiyi Zhang
0b69359a24
user32/tests: Sleep when sending mouse clicks too fast.
...
A thread is used to send test data. If the thread sends mouse clicks
before pop-up menu initialization, it would report send input failure
and skip the tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:55 +02:00
Zhiyi Zhang
a205401b38
user32: Fix menu item rectangle calculation in GetMenuItemRect().
...
This fixes the menu of BibleWorks 10 not showing up and some todo in
tests.
Sysmenu is in non-client area. And because MapWindowPoints() should
not be used with non-client area coordinates. Doing so results in
wrong coordinates for sysmenu item rectangles.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:55 +02:00
Zhiyi Zhang
608aa7f3d7
user32: Send notification for the focused button in IsDialogMessage().
...
When handling WM_KEYDOWN,VK_RETURN messages from a dialog hwnd in
IsDialogMessage(), if the focused button is in the dialog, send a BN_CLICKED
notification to the dialog proc. This also make it possible for the
default button with an id larger than 0xFFFF in the dialog to receive
the correct BN_CLICKED notification, which has a null lParam before this.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:45 +02:00
Zhiyi Zhang
8318b11d7f
user32/tests: Fix a memory leak.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:45 +02:00
Alexandre Julliard
56dfe6708b
user32: Retrieve the screen metrics from the monitor information.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:44 +02:00
Alexandre Julliard
1373e00400
user32: Return the full MINMAXINFO data from WINPOS_GetMinMaxInfo().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 10:38:46 +02:00
Alexandre Julliard
ae7acbfe4b
user32: Remove FIXMEs from physical<->logical mapping functions.
...
Also group them with the other DPI functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 19:03:27 +02:00
Alexandre Julliard
766287ad6a
server: Return the surface rect as top clipping rect.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:45:11 +02:00
Alexandre Julliard
85f81948de
server: Store the surface rectangle in the server.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:44:15 +02:00
Alistair Leslie-Hughes
80205232d3
user32: Support SPI_S/GETAUDIODESCRIPTION in SystemParametersInfo.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 20:51:26 +02:00
Alexandre Julliard
b73a50a35e
user32: Update RedrawWindow behavior with explicit desktop window handle.
...
Newer Windows versions behave differently.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 20:51:26 +02:00
Alexandre Julliard
9d3adf687b
user32/tests: Remove a duplicate todo test.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 20:51:25 +02:00
Michael Stefaniuc
2d8edab66d
user32: Use the more common ARRAY_SIZE spelling.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 19:44:26 +02:00
Alexandre Julliard
8cfac3b218
server: Don't clip update regions to the desktop window.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-05 19:08:34 +02:00
Alexandre Julliard
3cd66cf7b1
user32: Don't copy window bits to or from the dummy surface.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 16:07:50 +02:00
Michael Stefaniuc
962b31c80b
include: Add a generic available ARRAY_SIZE().
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 10:39:15 +02:00
Michael Müller
efa6e6b9ef
user32: Add semi-stub for GetAutoRotationState.
...
We cannot check the status value reliable since there is a good
chance that all the possible values will be returned from different
setups.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-03 11:27:35 +02:00
Michael Stefaniuc
1694ab087a
user32/tests: Use the available ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 18:27:20 +02:00
Michael Stefaniuc
b03e800fe1
user32/tests: Avoid ARRAY_SIZE-like macros.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 18:27:13 +02:00
Dmitry Timoshkov
8b864ae9aa
user32: For an owner-drawn listbox without strings WM_MEASUREITEM still needs correct itemData.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 14:10:44 +02:00
Dmitry Timoshkov
5c765431e2
user32: Fix the listbox sorting algorithm.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 14:10:42 +02:00
Dmitry Timoshkov
18420c24c9
user32: Fix order of items passed in WM_COMPAREITEM data.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 14:10:40 +02:00
Dmitry Timoshkov
35d902e476
user32/tests: Add some message tests for not an owner-drawn listbox.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 14:10:38 +02:00
Dmitry Timoshkov
e0d3dbcc01
user32/tests: Add a message test for an owner-drawn sorted listbox.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 14:10:35 +02:00
Dmitry Timoshkov
d92d91473c
user32/tests: Add a test for WM_MEASUREITEM when inserting an item to an owner-drawn listbox.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-28 14:10:33 +02:00
Michael Stefaniuc
20b43a9a93
user32/tests: Avoid a variable that holds an ARRAY_SIZE().
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-27 22:03:40 +02:00
Michael Stefaniuc
e186f3ec26
user32/tests: Don't undefine ARRAY_SIZE().
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-27 22:03:36 +02:00
Fabian Maurer
aee9fa0e55
user32: Always release menu item in EnableMenuItem.
...
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-25 22:33:41 +02:00
Alexandre Julliard
ea92a74133
user32: Check the DpiScalingVer registry key to enable DPI scaling.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 01:01:55 +02:00
Alexandre Julliard
4abc3d726f
user32: Don't remap DPI for font size in points when saving.
...
Points already take DPI into account.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-21 14:20:57 +02:00
Zebediah Figura
7ae7fbcc91
user32/tests: Skip tests for window messages if we failed to receive foreground status.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-20 11:22:36 +02:00
Zebediah Figura
f312758bf0
user32/tests: Ignore all non-keyboard messages in test_Input_blackbox().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-20 11:22:35 +02:00
Nikolay Sivov
7a45d2fa78
user32: Fix returned class name for other process windows.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Nikolay Sivov
e7243523cb
server: Use additional atom to keep base class name.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 11:41:59 +02:00
Fabian Maurer
cb92983112
user32: Add RegisterTouchHitTestingWindow stub.
...
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 10:50:02 +02:00
Fabian Maurer
66180389f8
user32: Add stub for GetPointerDevices.
...
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 10:50:02 +02:00
Fabian Maurer
6b59f750cd
user32: Make RegisterPointerDeviceNotifications return TRUE to fake success.
...
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-11 10:50:02 +02:00
Alexandre Julliard
026309888c
user32: Only pass the new valid rectangle to the server.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:19:53 +02:00
Alexandre Julliard
52be6f0ecc
user32: Rename rectWindow to window_rect for consistency.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:03:16 +02:00
Alexandre Julliard
0a75a1b62b
user32: Rename rectClient to client_rect for consistency.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:00:38 +02:00
Louis Lenders
0b27528c56
user32: Add stub for RegisterPointerDeviceNotifications.
...
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 09:22:11 +02:00
Zhiyi Zhang
11e3cf091d
user32: Respect margins more in DrawTextExW().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-04 16:26:14 +02:00
Zhiyi Zhang
5dfacee5cc
user32: Return 1 in DrawTextEx() when calculated offset is 0.
...
The return value 0 in DrawTextEx() indicates failure.
Should the offset from the bottom of the drawn text to top of
the rectangle happens to be 0, return 1 instead. So that it doesn't
indicate failure incidentally.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-04 16:26:12 +02:00
Michael Stefaniuc
7b5668a6e7
include: Make ARRAY_SIZE() available in wine/test.h.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-25 12:09:17 +02:00
Alexandre Julliard
51e8d579bb
user32: Don't send cross-process message for GetWindowTextLength().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 21:58:02 +02:00
Alexandre Julliard
f7b5b8975c
user32: Store the window DPI in the server.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-17 14:10:23 +02:00
Alexandre Julliard
8a70b70f42
user32: Update the window DPI awareness in SetParent().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 16:27:57 +02:00
Alexandre Julliard
433788736b
user32: Store the window DPI awareness in the server.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 16:27:36 +02:00
Huw Davies
5fefb108c4
user32: Simplify CheckMenuRadioItem().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 12:33:56 +02:00
Nikolay Sivov
387ba1d605
user32/menu: Return locked menu data when looking for menu items.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-11 17:20:41 +02:00
Huw Davies
c267bbb300
user32: Pass the modifiable string buffer directly to TEXT_NextLineW().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-09 15:55:15 +02:00
Zhiyi Zhang
18df0bc05b
user32: Use common cleanup code in DrawTextExW().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-08 11:13:31 +02:00
Zhiyi Zhang
661528a119
user32: Use the heap_*() functions in text.c where possible.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-08 11:13:29 +02:00
Nikolay Sivov
c4fd1099dd
user32: Avoid touching last error on successful path of GetClassInfo().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-08 10:51:31 +02:00
Alexandre Julliard
e95d0c6849
user32: Take into account the offset between old and new parent in SetParent().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-07 12:00:17 +02:00
Alexandre Julliard
bc956d8aa6
user32: Avoid repeatedly fetching the window rectangles in SetWindowPos.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-07 11:49:17 +02:00
Alexandre Julliard
1f17051028
Revert "user32: SetWindowPos() should check the final window position in screen coords before adding SWP_NOMOVE."
...
This reverts commit 38a76ecb03
.
It has no effect, the coordinates are identical either way.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-06 11:21:57 +02:00
Alexandre Julliard
39f0bbff4e
user32: Set the thread DPI awareness to the window's when calling a window procedure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-02 17:33:19 +02:00
Alexandre Julliard
487599e77f
user32/tests: Reorganize the DPI tests.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-02 17:32:29 +02:00
Alexandre Julliard
fbe81f8a9e
user32/tests: Avoid calling a potentially missing function.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-01 14:17:45 +02:00
Francois Gouget
a66af35ab9
user32/tests: Add a trailing '\n' to an ok() call.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 20:41:59 +02:00
Alex Henrie
816b22a650
user32/tests: Drop nonsensical broadcast tests that fail on Windows 10.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-30 10:41:44 +02:00
Alexandre Julliard
08b19c6f67
user32: Don't wait for other threads to process WM_NCDESTROY.
...
Based on a patch by Andrew Eikum.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 16:24:43 +02:00
Alexandre Julliard
460b4e7adf
user32: Destroy thread windows by going through the handle table.
...
This makes sure we catch child windows that may not have been deleted
yet.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 16:24:36 +02:00
Zhiyi Zhang
60fad890db
user32: Fix checkbox wrong box alignment with BS_VCENTER.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-27 09:24:42 +02:00
Alexandre Julliard
ecf0bef561
user32: Add 256x256 variants of the standard icons.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 17:16:51 +02:00
Alexandre Julliard
7fdf90e395
user32: Implement LogicalToPhysicalPointForPerMonitorDPI() and PhysicalToLogicalPointForPerMonitorDPI().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Alexandre Julliard
fb563978d8
user32: Implement GetDpiForWindow().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Alexandre Julliard
8b7ed36307
user32: Add partial stub for GetDpiForMonitorInternal().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00