Commit Graph

1956 Commits

Author SHA1 Message Date
Alexandre Julliard 0cc78d97c1 user32: Don't paint to the surface if the window has a pixel format, regardless of the state of the top parent. 2013-02-11 17:49:22 +01:00
Alexandre Julliard b7bf7f01b3 user32: Avoid releasing a potentially null pointer. 2013-02-11 11:46:13 +01:00
Ken Thomases f42cfc04eb user32: Improve mouse wheel scrolling in listbox control.
Allow fractions of WHEEL_DELTA to scroll fractions of SPI_GETWHEELSCROLLLINES,
although still only whole lines.  Keep the remainder and apply it to next
event if in same direction.
2013-02-11 11:46:09 +01:00
Ken Thomases 1642d312fd user32: Improve mouse wheel scrolling in edit control.
Allow fractions of WHEEL_DELTA to scroll fractions of SPI_GETWHEELSCROLLLINES,
although still only whole lines.  Keep the remainder and apply it to next
event if in same direction.
2013-02-11 11:46:09 +01:00
Daniel Jelinski 59e0d7af68 user32: Fix CopyImage implementation when changing cursor to icon. 2013-02-11 11:24:07 +01:00
Ken Thomases 5fb543f6e2 user32: In TranslateMessage, handle ToUnicode returning 2 or more chars. 2013-02-05 11:07:02 +01:00
Sergey Guralnik 1cd5e69478 user32: Init standard scrollbars during WM_NCCREATE. 2013-01-24 17:31:32 +01:00
Nikolay Sivov 4c24882e3e user32: Accept BI_BITFIELDS format for icons when creating icons. 2013-01-24 10:48:02 +01:00
Sergey Guralnik 77337d75f2 user32/tests: Test standard scrollbar initialization. 2013-01-22 20:01:59 +01:00
Jacek Caban ded419707a user32: Initialize cbSize of NONCLIENTMETRICSW struct in GetSystemMetrics. 2013-01-03 11:58:47 +01:00
Andrew Talbot c78f8d7405 user32: Indentation fix. 2012-12-24 13:32:38 +01:00
Alexandre Julliard 72b3dfca7c user32: Fix copy/paste typo. 2012-12-17 20:31:11 +01:00
Alexandre Julliard 71bb8c5e7c user32: Properly fixup font system parameters with positive height. 2012-12-17 20:31:07 +01:00
Daniel Jelinski 39222f6ab7 user32: Always call ScrollWindowEx in the listbox WM_VSCROLL handler. 2012-12-13 20:15:35 +01:00
Alexandre Julliard bd5d5e9776 user32: Start checking for driver events more often when the app doesn't consume messages properly. 2012-12-12 20:17:21 +01:00
Andrew Talbot 51f936adc2 user32: Remove unneeded address-of operator from array name. 2012-12-07 10:35:09 +01:00
Alexandre Julliard 1cf2c9c179 user32: Ignore the PM_NOYIELD flag on the client side. 2012-12-05 12:48:37 +01:00
Andrew Talbot 2f7885d990 user32: Do not call HeapFree() with address of stack memory. 2012-12-05 12:44:56 +01:00
Alexandre Julliard 1247225841 user32: Refresh the desktop when the wallpaper is changed. 2012-12-03 18:24:34 +01:00
Aric Stewart bd7e8df6ba user32: More instances where early versions of usp10 are not well behaved with ScriptString_pSize being NULL.
Issue discovered by Qian Hong.
2012-11-28 14:41:55 +01:00
Alexandre Julliard ab2cac4815 user32: Fix handling of NULL paint struct in BeginPaint. 2012-11-27 20:52:25 +01:00
Alexandre Julliard e2c61baba0 user32: Send WM_MOVING instead of WM_SIZING when moving a window. 2012-11-26 16:01:30 +01:00
Alexandre Julliard a0f039a604 user32: Fix the wait event mask in PeekMessage. 2012-11-22 11:57:15 +01:00
Alexandre Julliard 841214ddb4 user32: Don't check for driver events before normal messages in PeekMessage. 2012-11-21 19:20:27 +01:00
Alexandre Julliard 8ba4c316f2 user32: Don't check for driver events before normal messages in GetMessage. 2012-11-21 19:20:09 +01:00
Alexandre Julliard 4428049a7a user32: Make sure the scroll button arrows are really at least 3 pixels. 2012-11-20 19:46:56 +01:00
Alexandre Julliard 65e480d701 user32: Reimplement system color handling using standard system parameter entries. 2012-11-19 16:35:23 +01:00
Michael Stefaniuc 8f7eaf26ce user32: Remove two superfluous casts. 2012-11-19 11:46:35 +01:00
Alexandre Julliard 7c2ce566da user32: Initialize some system parameters in the registry on first run. 2012-11-16 17:42:45 +01:00
Alexandre Julliard 9c729720a9 user32: Maintain a cache of registry keys for the various parameters. 2012-11-16 16:17:32 +01:00
Alexandre Julliard 2959b312d9 user32: Define a global list of parameter registry keys and store an index in the value string. 2012-11-16 16:17:32 +01:00
Alexandre Julliard 13fbce5627 user32: Forward SystemParametersInfo calls to the user driver first. 2012-11-15 21:21:49 +01:00
Alexandre Julliard 4a8716cf5b user32: Check the length of the loaded registry key for system parameters. 2012-11-15 21:21:48 +01:00
Alexandre Julliard b2fa004ee4 user32: Simplify initialization of the desktop wallpaper. 2012-11-15 21:21:48 +01:00
Alexandre Julliard 4d653b77ec user32: Add parameter entry objects for the desktop wallpaper and pattern. 2012-11-15 21:21:47 +01:00
Alexandre Julliard 002c626a11 user32: Use parameter entry objects for the non-client metrics parameters. 2012-11-15 21:21:46 +01:00
Alexandre Julliard bfc8bc4d27 user32: Use the default GUI font for unspecified font parameters. 2012-11-15 21:21:43 +01:00
Christian Costa 5267f8b7d9 user32: Add tests for MapWindowPoints, ClientToScreen and ScreenToClient.
Based on a patch by Rico Schüller.
2012-11-14 16:29:51 +01:00
Alexandre Julliard 7fc61f6fea user32: Add some error checking in ScreenToClient and ClientToScreen. 2012-11-14 16:29:49 +01:00
Alexandre Julliard 5dea654317 user32: Properly set last error in MapWindowPoints. 2012-11-14 16:29:48 +01:00
Alexandre Julliard fb1c533e94 user32: Add helper functions for loading and saving system parameter registry entries. 2012-11-14 16:17:15 +01:00
Alexandre Julliard 270979dc9e user32: Support more user preference system parameters. 2012-11-14 16:17:00 +01:00
Alexandre Julliard 95d782779c user32: Add system parameter descriptors for user preference parameters. 2012-11-14 16:16:37 +01:00
Alexandre Julliard 44423f915c user32: Add some defines to reduce Unicode string duplication. 2012-11-13 16:54:54 +01:00
Alexandre Julliard 2dc978686d user32: Implement a number of missing system parameters. 2012-11-13 16:54:54 +01:00
Alexandre Julliard c24017fa5a user32: Add structures to describe individual system parameters to reduce code duplication. 2012-11-13 16:54:54 +01:00
Alexandre Julliard b5d96da32f user32: Add helper functions to get and set dword registry values in SystemParametersInfo. 2012-11-12 16:35:16 +01:00
Alexandre Julliard d2607ff6c9 user32: Force refreshing the non-client area when the window surface is changed. 2012-11-06 16:02:43 +01:00
Michael Stefaniuc 5f304e7000 user32: Avoid sizeof on structs with variable length array. 2012-10-31 18:07:35 +01:00
Michael Stefaniuc 2e31a44aca user32/test: Don't over-allocate memory for DDEDATA. 2012-10-31 16:12:27 +01:00
André Hentschel 64e169d974 user32: Avoid memory leaks (coverity). 2012-10-30 19:14:17 +01:00
Alexandre Julliard b7582525a0 user32: Don't flush window surfaces while waiting for a sent message reply. 2012-10-29 14:39:53 +01:00
Alexandre Julliard 4396a79ede gdi32: Add a DC hook flag to reset the DC state. 2012-10-24 18:24:03 +02:00
Michael Stefaniuc 8ab1fc5ff7 user32: Use FIELD_OFFSET to calculate the size of a struct with variable length array. 2012-10-24 12:01:48 +02:00
Michael Stefaniuc 7d4605db41 user32: Remove redundant sizeof check. 2012-10-24 12:01:45 +02:00
Alexandre Julliard e17cdb266d user32: Retrieve the graphics driver module from gdi32. 2012-10-22 15:16:01 +02:00
Henri Verbeet 690df8198d user32: Implement GetRawInputDeviceInfoA(). 2012-10-22 11:44:28 +02:00
Henri Verbeet 30f1a61177 user32: Implement GetRawInputDeviceInfoW(). 2012-10-18 22:32:35 +02:00
Alexandre Julliard 181e432e22 user32/tests: Don't release a random DC handle. 2012-10-18 22:28:48 +02:00
Henri Verbeet 3ed797b265 user32: Implement GetRawInputDeviceList(). 2012-10-18 19:20:27 +02:00
Alexandre Julliard 6cda76fd99 user32: Don't free a clip region twice. 2012-10-17 21:40:18 +02:00
Francois Gouget b17ded0ac1 user32/tests: Add a trailing '\n' to an ok() call. 2012-10-15 19:37:36 +02:00
Alexandre Julliard 003355946f user32: Delay message spying initialization until needed. 2012-10-15 19:26:51 +02:00
Alexandre Julliard 49a5db3869 user32: Don't show the icon title for off-screen icons. 2012-10-15 16:17:46 +02:00
Alexandre Julliard 0bc93684f0 winex11: Move the icon window off-screen for managed windows. 2012-10-15 16:17:22 +02:00
Sergey Guralnik 3d4db9f28f user32: Add internal class small icons. 2012-10-15 15:27:28 +02:00
Alexandre Julliard d5244c3b24 user32: Flush window surfaces in all functions that are used to poll for input. 2012-10-15 15:24:59 +02:00
Dmitry Timoshkov e27801e93b user32: Make sure that window's normal_rect is initialized at window creation time. 2012-10-15 13:31:09 +02:00
Sergey Guralnik e193e43c29 user32/tests: Add tests for class small icons. 2012-10-11 20:23:36 +02:00
Alexandre Julliard 77b9ec8cd6 user32: Don't use the window surface when the pixel format was set. 2012-10-10 12:46:56 +02:00
Alexandre Julliard cc7bf355c5 user32: Add support for setting the window surface visible region. 2012-10-09 15:22:56 +02:00
Alexandre Julliard 20768173ba server: Add flags in the set_window_pos request to inform the server about the window surface. 2012-10-09 15:22:14 +02:00
Alexandre Julliard cf799f5852 user32: Store the pixel format in the window structure. 2012-10-09 09:51:29 +02:00
Alexandre Julliard 6eea257fd1 user32: Add a helper function to update the window visible state. 2012-10-09 09:48:11 +02:00
Alexandre Julliard b9c847a426 user32: Don't use SWP_SHOWWINDOW when the WS_VISIBLE style was already toggled manually. 2012-10-09 09:45:09 +02:00
Alexandre Julliard e41a482890 user32: Add a Wine-specific entry point to set the pixel format of a window. 2012-10-03 23:08:22 +02:00
Huw Davies 5c8e83c406 user32: If the value doesn't exist under the volatile key fallback to the permanent key. 2012-10-03 16:27:24 +02:00
Alexandre Julliard b30e84d580 user32: Don't redraw anything when WS_VISIBLE is toggled manually. 2012-10-02 19:52:44 +02:00
Alexandre Julliard 24eee97d21 user32: Add a driver entry point for UpdateLayeredWindow. 2012-10-01 13:20:20 +02:00
Alexandre Julliard ddf41276e1 user32: Invalid DCEs when the window surface changes. 2012-10-01 13:17:53 +02:00
Alexandre Julliard 61f9789c31 user32: Also call set_window_pos when the WS_EX_LAYERED bit is changed. 2012-10-01 13:17:40 +02:00
Alexandre Julliard 1d78f43000 user32: Call the SetWindowStyle driver entry point before updating the window position. 2012-10-01 13:12:29 +02:00
Alexandre Julliard 91b0ee56cf user32: Default to the dummy surface if the driver doesn't provide something else. 2012-10-01 13:09:27 +02:00
Alexandre Julliard 72337011db user32: Create a dummy window surface for windows that shouldn't be painted to. 2012-10-01 13:08:51 +02:00
Alexandre Julliard 5db9abaf81 user32: Always flush window surfaces in PeekMessage, even with PM_NOYIELD. 2012-10-01 12:13:00 +02:00
Alexandre Julliard 53e4e504b9 user32: Add tests for UpdateLayeredWindowIndirect and fix the behavior of the ULW_EX_NORESIZE flag. 2012-09-27 17:45:43 +02:00
Michael Stefaniuc 1e5328c77c user32: Remove superfluous function pointer casts. 2012-09-20 19:22:59 +02:00
Alexandre Julliard 8e87b9233a user32/tests: Fix coordinates in the UpdateLayeredWindow broken case. 2012-09-18 14:47:00 +02:00
Aric Stewart e603ffd19e user32: Free the uniscribe data before freeing the linedefs. 2012-09-17 18:31:37 +02:00
Alexandre Julliard b57323a61e user32/tests: Add a test for calling UpdateLayeredWindow from a different thread. 2012-09-17 14:13:27 +02:00
Michael Stefaniuc 20595d2988 user32: Don't bother using the register storage class specifier. 2012-09-14 15:41:40 +02:00
Alexandre Julliard b9fa73a798 user32/tests: Add some tests for UpdateLayeredWindow. 2012-09-13 13:50:57 +02:00
Alexandre Julliard b0fce2a02b user32: Refresh the frame when the style bits of a layered window are changed. 2012-09-13 13:50:40 +02:00
Alexandre Julliard 9f29dcdc2e user32: Don't send messages on position changes in UpdateLayeredWindow. 2012-09-13 13:50:15 +02:00
Henri Verbeet c6fcc0255c user32: Add rawinput keyboard support. 2012-09-12 12:47:13 +02:00
Alexandre Julliard 1a4a1e5323 user32: Check for the need to flush window surfaces every time a window finishes painting. 2012-09-11 20:56:35 +02:00
Henri Verbeet faaf3d388e user32: Add rawinput mouse support. 2012-09-11 18:06:34 +02:00
Henri Verbeet 5befb959dd user32: Implement RegisterRawInputDevices(). 2012-09-10 11:44:19 +02:00
Alexandre Julliard 57f869d557 user32: Fix DrawFocusRect to always invert the destination regardless of the text color. 2012-09-10 11:38:15 +02:00
Akihiro Sagawa 70937bd8dd user32: Add support for legacy access keys. 2012-09-06 20:28:49 +02:00
Alexandre Julliard 7304445a7e user32: Maintain a list of active window surfaces and flush them periodically. 2012-09-06 12:38:13 +02:00
Alexandre Julliard a5ef549c6e user32: Add support for managing a DIB surface for a window. 2012-09-06 12:35:32 +02:00
Alexandre Julliard 27b0b88a0b gdi32: Add a graphics driver to render windows contents through the DIB engine. 2012-09-06 12:24:25 +02:00
Alexandre Julliard 01c9c1cbc2 gdi32: Let user32 specify the device rectangle when setting the visible region. 2012-09-05 21:56:56 +02:00
Alexandre Julliard 75b641fc75 user32: Add a helper function to retrieve the virtual screen rectangle. 2012-09-05 21:56:55 +02:00
Nikolay Sivov 6b19461548 user32: Release uniscribe data on Edit control destruction (valgrind). 2012-09-05 11:47:39 +02:00
Alexandre Julliard 2dc234d923 user32: Only show a window the first time WS_VISIBLE is toggled, to work around Steam's WM_SETREDRAW usage. 2012-09-04 12:38:33 +02:00
Alexandre Julliard 85fed5b194 user32: Invalidate the DCEs while still holding the window lock in SetWindowPos. 2012-08-29 20:10:56 +02:00
Alexandre Julliard d35fc4369f user32: Always go through set_window_pos when the WS_VISIBLE style is changed. 2012-08-29 20:09:28 +02:00
Alexandre Julliard 4890964e31 user32: Rely on SetWindowPos to invalidate the DCEs when the window region is changed. 2012-08-29 18:08:10 +02:00
Alexandre Julliard f71be05ba7 user32: ScrollWindow should not use a cached DC, unlike ScrollWindowEx. 2012-08-29 12:22:58 +02:00
Piotr Caban d2e846f3d4 user32: Don't limit time needed for WM_DDE_INITIATE processing. 2012-08-22 12:03:19 +02:00
Marcus Meissner 84bb596912 user32: Fixed two use-after-free (Coverity). 2012-08-20 10:54:53 +02:00
Marcus Meissner 3fb8a42638 user32: Free the correct dce (Coverity). 2012-08-20 10:54:40 +02:00
Alex Henrie 4b67e6c778 user32: Correct dialog focus behavior. 2012-08-16 11:59:23 +02:00
Michael Stefaniuc 4affaea0ba user32: Avoid TRUE:FALSE conditional expressions. 2012-08-13 11:50:51 +02:00
Sergey Guralnik cbf9589ba3 user32: Rearrange ComboBox repositioning code. 2012-07-26 21:38:10 +02:00
Alexandre Julliard b3d91ea3b6 user32/tests: Try to fix a test that frequently fails on Windows. 2012-07-18 11:48:54 +02:00
Alexandre Julliard d8c90fa40b user32/tests: Move DlgDirList tests to avoid changing the current directory for other tests. 2012-07-17 16:22:34 +02:00
Alex Henrie c412d6f521 user32: Minimize and maximize boxes can only appear when WS_SYSMENU is set. 2012-07-17 16:22:32 +02:00
Bruno Jesus 81cbf29ef3 user32/tests: Update DlgDirList tests.
Based on original patch from Christian Lupien.
2012-07-16 18:19:26 +02:00
Bruno Jesus b3d7896aad user32/tests: Add a test for OpenClipboard twice with non-zero hwnd. 2012-07-09 15:45:37 -04:00
Sergey Guralnik fb4545847e user32: Add test for ComboBox repositioning behavior. 2012-07-03 12:04:57 +02:00
Francois Gouget 12b900ce70 user32: Make some DDE functions static. 2012-06-12 11:11:22 +02:00
Francois Gouget 31d432925c user32: Reorder some DDE functions to avoid the need for forward declarations. 2012-06-12 11:11:19 +02:00
Michael Stefaniuc 824974cee4 user32/tests: Fix the expected values in some ok() messages. 2012-06-04 19:36:15 +02:00
Alexandre Julliard f1bf4ea3fc gdi32: Move DC hook private definitions out of wingdi.h. 2012-05-31 12:37:15 +02:00
Piotr Caban 42eb57dfa7 user32/tests: Added SetWindowPos test that incorrectly sets focus. 2012-05-22 18:02:55 +02:00
Piotr Caban 1a74d21090 user32/tests: Added more GetMenuBarInfo tests. 2012-05-16 20:27:23 +02:00
Piotr Caban 1128546437 user32/tests: Added GetMenuBarInfo tests. 2012-05-16 20:27:21 +02:00
Piotr Caban cd08b5a40a user32: Added GetMenuBarInfo implementation. 2012-05-16 20:27:11 +02:00
Michael Stefaniuc ca64393e99 user32/tests: Remove duplicated ok() call. 2012-05-16 18:30:21 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Francois Gouget b89a49d481 user32: Fix the spelling of the hRecipient variable. 2012-05-15 16:26:41 +02:00
Francois Gouget 1c9bf32e19 user32/tests: Add a trailing '\n' to ok() calls. 2012-05-15 16:26:39 +02:00
Michael Stefaniuc c6033397f3 user32/tests: Check the correct variable for the correct value. 2012-05-15 16:26:38 +02:00
Owen Rudge fecde1ead8 user32: Return Unicode length instead of ANSI in GetUserObjectInformationA. 2012-05-14 17:48:32 +02:00
Owen Rudge 83f67ff998 user32: Correct return value when buffer too short in GetUserObjectInformation. 2012-05-14 17:48:27 +02:00
Owen Rudge f443f29150 user32/tests: Add GetUserObjectInformation tests. 2012-05-14 17:48:22 +02:00
Austin English 6f40cb83e9 user32: Make a few more functions hotpatchable. 2012-04-30 20:03:27 +02:00
Alexandre Julliard 1dba866e61 user32: Don't invalidate DCEs for sibling top-level windows since they are not clipped. 2012-04-19 16:34:37 +02:00
Aric Stewart 4ad945337f user32: While calculating lines, discard uniscribe data for non-visible lines. 2012-04-05 17:53:21 +02:00
Dmitry Timoshkov 38a76ecb03 user32: SetWindowPos() should check the final window position in screen coords before adding SWP_NOMOVE. 2012-04-02 18:35:55 +02:00
Dmitry Timoshkov 847317d019 user32: SetParent() should use ShowWindow() to make a reparented window visible and move a window to new position. 2012-04-02 18:35:52 +02:00
Dmitry Timoshkov 38387dcffe user32: IsDialogMessage should allow control ids other than IDOK when processing WM_KEYDOWN. 2012-03-29 20:49:19 +02:00
Thomas Faber eaaa448d2b user32/tests: Do not depend on argument evaluation order. 2012-02-22 18:47:38 +01:00
Marcus Meissner 626d0b75ba user32: Remove duplicated call to GetSystemMenu (Coverity). 2012-02-20 11:38:52 +01:00
Alexandre Julliard 5d1a147163 user32: Add mouse tracking on caption right-clicks to avoid messing with the capture. 2012-02-15 16:27:12 +01:00
Alexandre Julliard f87191815d user32: Fix GetKeyNameText returned length. 2012-02-15 12:07:34 +01:00
Alexandre Julliard 8ab65c222e user32: Draw the mask with SRCCOPY in DrawIcon when the image isn't being drawn. 2012-02-08 11:00:51 -06:00