Commit Graph

34 Commits

Author SHA1 Message Date
Gabriel Ivăncescu d2cf3e9763 user32: Fix tracking position for non-client scrollbars.
Non-client scrollbars (SB_HORZ and SB_VERT) don't have their client origin at
(0,0) because they can have non-client borders. It is necessary to offset
by this origin just as it is done for LBUTTONDOWN.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-12 17:30:16 +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
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
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
Nikolay Sivov 1ae05c04a2 user32: Remove confusing comments.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-08 13:10:50 +01:00
Michael Stefaniuc 9ed915083f user32: Use InflateRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-06 18:48:34 +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
Carlo Bramini 8d0d1e563c user32: Remove unused variables in SCROLL_TrackScrollBar.
Signed-off-by: Carlo Bramini <carlo.bramix@libero.it>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:55:47 +09:00
Krzysztof Nowicki 7415946716 user32: Make more functions hot-patchable for Steam. 2011-06-15 20:04:38 +02:00
Francois Gouget aaec50d44c user32: SCROLL_SetNCSbState() is not used anymore so remove it. 2011-05-03 14:38:06 +02:00
Alexandre Julliard 90ba8ceb07 user32: Correctly handle mouse events on a size grip scrollbar. 2010-10-12 11:43:21 +02:00
Alexandre Julliard 141defbd54 user32: Use WIN_GetRectangles where possible instead of accessing the window structure. 2010-09-07 14:55:42 +02:00
Sébastien Ramage e7165b3921 user32: End scrollbar tracking if the mouse capture is lost. 2010-03-25 10:55:51 +01:00
Alexander Kochetkov 8037de9f02 user32: Fix arithmetic overflow in GetThumbVal. 2010-01-11 11:29:05 -06:00
Alexandre Julliard d081a7352c user32: Simplify window procedure allocation for the builtin classes. 2009-12-18 12:39:13 +01:00
Alexandre Julliard 1e43d19753 user32: Pre-allocate the window procedure for the scrollbar class. 2009-12-17 13:09:50 +01:00
Alexandre Julliard 3dc6317fc6 user32: Turn the scrollbar winproc into a Wow handler. 2009-12-15 16:09:13 +01:00
Alexandre Julliard 11ed5da3fd user32: Split the handling of the 16-bit messages out of the scrollbar winproc. 2009-12-13 12:13:14 +01:00
Rein Klazes 1b1e0027db user32: Combine horizontal and vertical window scroll bar info in a single structure. 2009-05-04 14:57:03 +02:00
Nikolay Sivov 032356ec37 user32: Disable scroll bar control window when both buttons disabled. 2009-03-05 12:48:05 +01:00
Michael Stefaniuc 214b40b109 user32: Remove superfluous pointer casts. 2009-03-02 12:11:38 +01:00
Michael Stefaniuc 3d6e19d48a user32: Do not cast zero. 2008-11-04 11:26:24 +01:00
Dylan Smith 936191887e user32: Converted rcScrollBar to screen coordinates. 2008-10-06 13:54:44 +02:00
Juan Lang 6049ad74e9 user32: Don't crash if passed a non-scrollbar HWND. Fixes Coverity id 265. 2008-09-12 11:40:42 +02:00
Dylan Smith 2f1c7b1610 user32: Increased area for scrolling via mouse drag outside scrollbar.
When dragging the scrollbar thumb with the mouse, the mouse is able to
move away from the scrollbar and keep scrolling so long as it isn't too
far away from the scrollbar.  This makes it easier to quickly scroll
with the mouse.

All that this patch changes is the distance that the mouse can be moved
away from the scrollbar before it is consider outside of the scrollbar
and returns to its original position.  The distances are proportional to
the size of the scrollbar.
2008-07-04 20:25:48 +02:00
Alexandre Julliard 79b64fdc83 user32: Add an ASCII window procedure for scrollbars. 2008-05-21 11:44:05 +02:00
Anatoly Lyutin a871830dd3 user32: Fix return value in ShowScrollBar according with test. 2008-02-25 13:26:52 +01:00
Christopher Berner e59bf8c560 user32: Fixed off by one scroll bar pixels. 2008-01-16 18:04:01 +01:00
Gerald Pfeifer 56af18f223 user32: Fix variable type in SCROLL_HandleScrollEvent(). Remove useless check in SCROLL_SetScrollInfo(). 2007-11-26 13:54:44 +01:00
Alexandre Julliard 6ff78347e2 user32: Remove a few traces that only duplicate the relay information. 2007-11-12 14:03:45 +01:00
Alexandre Julliard bfe88a00f8 user32: Store the builtin class names in Unicode. 2007-11-01 12:55:00 +01:00
Dmitry Timoshkov 3c9e7a7f33 wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility. 2007-05-25 20:37:56 +02:00
Andrew Talbot 48d740855e user32: Replace inline static with static inline. 2007-03-17 20:04:08 +01:00
Alexandre Julliard b8a2e3b8a4 user32: Renamed the user/ directory to user32. 2006-11-16 14:49:25 +01:00