mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 09:34:43 +00:00
Fix Alex's completely wrong fix for NtUserScrollWindowEx (aka bug #606).
svn path=/trunk/; revision=14947
This commit is contained in:
parent
6c331c3529
commit
51e5c11dc8
1 changed files with 8 additions and 6 deletions
|
@ -1211,17 +1211,19 @@ NtUserScrollWindowEx(HWND hWnd, INT dx, INT dy, const RECT *UnsafeRect,
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
RECT r, dummy;
|
RECT r, dummy;
|
||||||
|
POINT ClientOrigin;
|
||||||
PWINDOW_OBJECT WindowObject;
|
PWINDOW_OBJECT WindowObject;
|
||||||
|
|
||||||
|
IntGetClientOrigin(hWnd, &ClientOrigin);
|
||||||
for (i = 0; List[i]; i++)
|
for (i = 0; List[i]; i++)
|
||||||
{
|
{
|
||||||
NtUserGetWindowRect(List[i], &r);
|
WindowObject = IntGetWindowObject(List[i]);
|
||||||
WindowObject = IntGetWindowObject((hWnd ? hWnd : IntGetDesktopWindow()));
|
|
||||||
if (!WindowObject) continue;
|
if (!WindowObject) continue;
|
||||||
r.left -= WindowObject->ClientRect.top;
|
r = WindowObject->WindowRect;
|
||||||
r.top -= WindowObject->ClientRect.top;
|
r.left -= ClientOrigin.x;
|
||||||
r.right -= WindowObject->ClientRect.left;
|
r.top -= ClientOrigin.y;
|
||||||
r.bottom -= WindowObject->ClientRect.top;
|
r.right -= ClientOrigin.x;
|
||||||
|
r.bottom -= ClientOrigin.y;
|
||||||
IntReleaseWindowObject(WindowObject);
|
IntReleaseWindowObject(WindowObject);
|
||||||
if (! UnsafeRect || IntGdiIntersectRect(&dummy, &r, &rc))
|
if (! UnsafeRect || IntGdiIntersectRect(&dummy, &r, &rc))
|
||||||
WinPosSetWindowPos(List[i], 0, r.left + dx, r.top + dy, 0, 0,
|
WinPosSetWindowPos(List[i], 0, r.left + dx, r.top + dy, 0, 0,
|
||||||
|
|
Loading…
Reference in a new issue