diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | win/tkWinScrlbr.c | 8 |
2 files changed, 17 insertions, 1 deletions
@@ -1,3 +1,13 @@ +2003-02-20 Jeff Hobbs <jeffh@ActiveState.com> + + * win/tkWinScrlbr.c (UpdateScrollbar): use SIF_DISABLENOSCROLL to + "disable" scrollbar when on Windows when there is nothing to + scroll. This is Windows style, and fixes [Bug #624116]. + + * tests/panedwindow.test: + * generic/tkPanedWindow.c (ValidSashIndex): corrected to note that + 2 panes must exist before any one sash does. [tcllib Bug #689258] + 2003-02-20 Peter Spjuth <peter.spjuth@space.se> * tests/panedwindow.test: diff --git a/win/tkWinScrlbr.c b/win/tkWinScrlbr.c index 1eb3b47..359fc46 100644 --- a/win/tkWinScrlbr.c +++ b/win/tkWinScrlbr.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkWinScrlbr.c,v 1.8 2002/06/14 22:25:12 jenglish Exp $ + * RCS: @(#) $Id: tkWinScrlbr.c,v 1.9 2003/02/21 02:07:50 hobbs Exp $ */ #include "tkWinInt.h" @@ -185,6 +185,12 @@ UpdateScrollbar(scrollPtr) * (MAX_SCROLL - (scrollInfo.nPage - 1))); } else { scrollInfo.nPos = 0; + /* + * Disable the scrollbar when there is nothing to scroll. + * This is standard Windows style (see eg Notepad). + * Also prevents possible crash on XP+ systems [Bug #624116]. + */ + scrollInfo.fMask |= SIF_DISABLENOSCROLL; } SetScrollInfo(scrollPtr->hwnd, SB_CTL, &scrollInfo, TRUE); } |