Patch from Hideki Eiraku to make PuTTY call GetScrollInfo, so it can
authorsimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Tue, 4 Dec 2012 20:53:19 +0000 (20:53 +0000)
committersimon <simon@cda61777-01e9-0310-a592-d414129be87e>
Tue, 4 Dec 2012 20:53:19 +0000 (20:53 +0000)
use 32-bit scrollbar position data instead of being limited to the
16-bit version that comes in scrollbar messages' wParam.

git-svn-id: svn://svn.tartarus.org/sgt/putty@9720 cda61777-01e9-0310-a592-d414129be87e

windows/window.c

index 5eb1d04..b7f5f86 100644 (file)
@@ -2994,7 +2994,19 @@ static LRESULT CALLBACK WndProc(HWND hwnd, UINT message,
            break;
          case SB_THUMBPOSITION:
          case SB_THUMBTRACK:
-           term_scroll(term, 1, HIWORD(wParam));
+           /*
+            * Use GetScrollInfo instead of HIWORD(wParam) to get
+            * 32-bit scroll position.
+            */
+           {
+               SCROLLINFO si;
+
+               si.cbSize = sizeof(si);
+               si.fMask = SIF_TRACKPOS;
+               if (GetScrollInfo(hwnd, SB_VERT, &si) == 0)
+                   si.nTrackPos = HIWORD(wParam);
+               term_scroll(term, 1, si.nTrackPos);
+           }
            break;
        }
        break;