diff options
author | wolfsuit <wolfsuit> | 2005-03-15 02:11:51 (GMT) |
---|---|---|
committer | wolfsuit <wolfsuit> | 2005-03-15 02:11:51 (GMT) |
commit | 565a4532b6be90cf73653139d81d870a6bdac521 (patch) | |
tree | fbedbbcd442c6affde483efbfab63a22249bcb2d /macosx/tkMacOSXScrlbr.c | |
parent | 5181ac5574ed054daccb78e2648865d9676db22b (diff) | |
download | tk-565a4532b6be90cf73653139d81d870a6bdac521.zip tk-565a4532b6be90cf73653139d81d870a6bdac521.tar.gz tk-565a4532b6be90cf73653139d81d870a6bdac521.tar.bz2 |
2005-03-14 Jim Ingham <jingham@apple.com>
* macosx/tkMacOSXScrlbr.c (ThumbActionProc): No need to use
"update idletasks" here, TclServiceIdle will do as well and it
is simpler.
These changes implement a change on the Mac OS X side. When we
unmap a window we mark all its children as unmapped (not following
toplevels. But we preserve whether they had been mapped before,
and when the parent is remapped, we remap the children as well.
[Bug 940117]
* macosx/tkMacOSXInt.h: Added TK_MAPPED_IN_PARENT
* macosx/tkMacOSXSubwindows.c (FixMappingFlags): New function.
(XMapWindow): Call FixMappingFlags.
(XUnMapWindow): Ditto.
* tkMacOSXSubWindows.c (XMoveResizeWindow): Update the xOff & yOff
data in the Macdrawable even if the native window hasn't been
created yet. [Bug 700305]
(XMoveWindow): Ditto.
(XResizeWindow): Ditto.
Diffstat (limited to 'macosx/tkMacOSXScrlbr.c')
-rw-r--r-- | macosx/tkMacOSXScrlbr.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/macosx/tkMacOSXScrlbr.c b/macosx/tkMacOSXScrlbr.c index 89c18d9..582643f 100644 --- a/macosx/tkMacOSXScrlbr.c +++ b/macosx/tkMacOSXScrlbr.c @@ -11,11 +11,12 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkMacOSXScrlbr.c,v 1.9 2004/02/16 00:19:42 wolfsuit Exp $ + * RCS: @(#) $Id: tkMacOSXScrlbr.c,v 1.10 2005/03/15 02:11:55 wolfsuit Exp $ */ #include "tkScrollbar.h" #include "tkMacOSXInt.h" +#include "tclInt.h" #include <Carbon/Carbon.h> @@ -673,13 +674,8 @@ ThumbActionProc() interp = scrollPtr->interp; Tcl_Preserve((ClientData) interp); Tcl_GlobalEval(interp, cmdString.string); - Tcl_Release((ClientData) interp); - Tcl_DStringSetLength(&cmdString, 0); - Tcl_DStringAppend(&cmdString, "update idletasks", - strlen("update idletasks")); - Tcl_Preserve((ClientData) interp); - Tcl_GlobalEval(interp, cmdString.string); - Tcl_Release((ClientData) interp); + + TclServiceIdle(); } } while ((err == noErr) && trackingResult != kMouseTrackingMouseReleased); |