Commit Graph

2334 Commits

Author SHA1 Message Date
Alexandre Julliard d104891433 user32: Only start reusing DCEs after the cache reached its limit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:55:18 +09:00
Alexandre Julliard d341b0c381 user32: Completely free owned DCEs when the corresponding window/class is destroyed.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:55:03 +09:00
Alexandre Julliard 5f7e4ce642 user32: Fix refcounting of window DCEs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:54:01 +09:00
Vincent Povirk b68e03f9c9 user32: Don't regard the clipboard as changed if we don't own it.
I ran into a situation where user32 will call EndClipboardUpdate even though
the clipboard hasn't changed. It went something like this:
* Program A acquires the clipboard and adds some delay-rendered data.
* Program B requests data from the clipboard, causing program A to receive
  WM_RENDERFORMAT.
* Program A calls SetClipboardData to fulfill the request, setting
  bCBHasChanged to TRUE.
* Program C acquires the clipboard.
* Program A opens the clipboard to enumerate the formats. When it closes the
  clipboard, EndClipboardUpdate is called.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 00:53:52 +09:00
Vincent Povirk 1383012395 user32: Also change rcUpdate when scrolling by more than the window size.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 00:53:51 +09:00
Alexandre Julliard c007b3cd46 user32: Load the default app icon with LR_SHARED to avoid a leak.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-19 16:38:49 +09:00
Michael Stefaniuc 5f494bfeb4 include: Use inline functions for common RECT helpers.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-17 21:02:29 +09:00
Francois Gouget 6fe747bbbc user32/tests: Fix a spelling error in a scroll comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-16 15:32:51 +09:00
Michael Stefaniuc 21e3de63de user32: Use IsRectEmpty() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:52 +09:00
Andrey Gusev f5531dc347 user32/tests: Fix a typo in comment.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:51 +09:00
André Hentschel 2d62300060 user32/tests: Don't test function directly when reporting GetLastError().
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:51 +09:00
Jacek Caban 912d7474c0 user32/tests: Added PrivateExtractIcons test.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 18:33:49 +09:00
Jacek Caban 03b93eeeff user32: Use proper types in ICO_GetIconDirectory.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 18:33:44 +09:00
Jacek Caban 5aaa8e25ad user32/tests: Moved creating .ico file into a helper function.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 18:33:14 +09:00
Pierre Schweitzer bfb7e167cb user32: Check bounds before dereferencing.
Signed-off-by: Pierre Schweitzer <pierre@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 18:30:50 +09:00
Andrey Gusev 2454bbd5e4 user32/tests: Fix a typo in ok() message.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 12:26:38 +09:00
Sebastian Lackner 57b7a9937d user32: Implement SetCoalescableTimer and add basic tests.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:30:57 +09:00
Sebastian Lackner f5b8eb4977 user32/tests: Add additional test for window station name.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:44 +09:00
Michael Stefaniuc 959b9d1cbb user32: Use wine_dbgstr_rect() to print a RECT.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-27 12:41:55 +09:00
Dmitry Timoshkov 00b68720bf user32: Change value of WM_MDICALCCHILDSCROLL to 0x003f.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 22:49:42 +09:00
Alexander Lakhin bc3f40e21a user32: Send WM_CTLCOLOR* message only for visible buttons.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 21:52:51 +09:00
Sebastian Lackner 2c180741e1 user32/tests: Add tests for button WM_CTLCOLOR* messages.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 21:52:46 +09:00
Alexander Lakhin 35ab5f4499 user32: Send the correct WM_CTLCOLOR* message in button WM_SETTEXT handler.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 21:52:41 +09:00
Sebastian Lackner b4ac51effa user32: Do not block sending/posting WM_NOTIFY messages.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 16:54:47 +09:00
Vincent Povirk 3cc6a1acc3 Revert "user32: Set capture earlier on popup menus.".
This reverts commit a9bff001a1.

We can't set capture this early because the popup menu isn't visible
yet. To my knowledge, no applications depend on this, nor did the
next patch in the series. It's only a theoretical issue revealed by
a message test.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-20 16:54:47 +09:00
Michael Stefaniuc 08821df92c user32: Use wine_dbgstr_rect() to trace a RECT.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-19 21:06:10 +09:00
Michael Stefaniuc 4ee8139487 user32/tests: Use SetRect instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 19:28:31 +09:00
Andrew Eikum 76f1c254a2 user32: Grammar fix.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-18 15:16:54 +09:00
Dmitry Timoshkov b555f41020 user32/tests: Add some tests for dialog owner disabled state.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-12 19:27:56 +09:00
Jacek Caban ae39337e77 user32: Added more tests of handling parent/owner by dialog.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 22:36:21 +09:00
Jacek Caban 36b64321b2 user32: Use the original owner used to create the dialog for WM_ENTERIDLE messages.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 22:09:30 +09:00
Jacek Caban fc4b906d78 user32: Don't enable owner in DIALOG_DoDialogBox.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 22:09:27 +09:00
Jacek Caban 2f8f9d20aa user32: Use GWLP_HWNDPARENT to find an owner in EndDialog.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 22:09:25 +09:00
Jacek Caban 9da0c00a68 user32: Use top level window as dialog parent for modal dialogs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 22:09:22 +09:00
Rodrigo Rivas Costa 5e65b65219 user32: Make DeferWindowPos() fail on invalid window handles.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-11 19:32:12 +09:00
Nikolay Sivov ad7cb43657 user32: Limit broadcast messages to system and registered ones.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-09 00:12:24 +09:00
Nikolay Sivov d154c8424d user32/tests: Message filtering tests for broadcast messages.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-09 00:12:24 +09:00
Dmitry Timoshkov e37e0f2743 user32: Avoid dereferencing NULL pointer in a trace.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 15:04:07 +09:00
Louis Lenders 5cf42c0c97 user32: Add stub for IsProcessDPIAware.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-01 18:34:16 +09:00
Sebastian Lackner 11f6df13eb user32: Set %ecx to address of rect in EnumDisplayMonitors callback.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-31 15:57:32 +09:00
Alexandre Julliard 11fcc61b6d user32: Use kernel32 functions for character types and case conversions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-29 21:05:05 +09:00
Mark Jansen e1f1a60f87 user32: Correctly determine bit count for BITMAPCOREINFO in is_dib_monochrome.
Signed-off-by: Mark Jansen <learn0more@gmail.com>
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-28 18:41:00 +09:00
Thomas Faber 6ad5cfbebd user32: Handle BITMAPCOREINFO when loading icons.
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-28 18:40:59 +09:00
Thomas Faber 6e4b649862 user32/tests: Test loading monochrome icons.
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-28 18:40:59 +09:00
Ken Thomases 474196c746 user32: Call the EnumDisplayMonitors callback using a wrapper.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-25 22:49:15 +09:00
Nikolay Sivov 9d91fce444 user32: For EnableScrollBar() always go through EnableWindow() in SB_CTL case.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-24 21:49:54 +09:00
Vincent Povirk 906db769f1 user32: Skip menu loop for empty popup menus.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-17 19:44:02 +09:00
Vincent Povirk a9bff001a1 user32: Set capture earlier on popup menus.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-17 19:44:02 +09:00
Austin English 2b740588ba user32: Add QueryDisplayConfig stub.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 21:32:54 +09:00
Alistair Leslie-Hughes 84d0c4f0da user32: Don't crash in DrawTextEx when tab length is zero.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-15 21:28:09 +09:00