From 8da9b240f0401152f25538e998a4548d2b4ccc41 Mon Sep 17 00:00:00 2001 From: Thomas Bluemel Date: Mon, 28 Nov 2005 10:38:04 +0000 Subject: [PATCH] scroll the console properly instead of repainting it svn path=/trunk/; revision=19719 --- reactos/subsys/csrss/win32csr/guiconsole.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/reactos/subsys/csrss/win32csr/guiconsole.c b/reactos/subsys/csrss/win32csr/guiconsole.c index b0e194991cd..4435afc0e60 100644 --- a/reactos/subsys/csrss/win32csr/guiconsole.c +++ b/reactos/subsys/csrss/win32csr/guiconsole.c @@ -488,7 +488,7 @@ GuiWriteStream(PCSRSS_CONSOLE Console, RECT *Region, LONG CursorStartX, LONG Cur PGUI_CONSOLE_DATA GuiData = (PGUI_CONSOLE_DATA) Console->PrivateData; PCSRSS_SCREEN_BUFFER Buff = Console->ActiveBuffer; LONG CursorEndX, CursorEndY; - RECT Source, ScrollRect; + RECT ScrollRect; if (NULL == Console->hWindow || NULL == GuiData) { @@ -497,16 +497,19 @@ GuiWriteStream(PCSRSS_CONSOLE Console, RECT *Region, LONG CursorStartX, LONG Cur if (0 != ScrolledLines) { - Source.left = 0; - Source.top = ScrolledLines; - Source.right = Console->Size.X - 1; - Source.bottom = ScrolledLines + Region->top - 1; ScrollRect.left = 0; ScrollRect.top = 0; ScrollRect.right = Console->Size.X * GuiData->CharWidth; ScrollRect.bottom = Region->top * GuiData->CharHeight; - InvalidateRect(Console->hWindow, &ScrollRect, FALSE); + ScrollWindowEx(Console->hWindow, + 0, + -(ScrolledLines * GuiData->CharHeight), + &ScrollRect, + NULL, + NULL, + NULL, + SW_INVALIDATE); } GuiIntDrawRegion(GuiData, Console->hWindow, Region); -- 2.17.1