diff options
author | hobbs <hobbs> | 2000-02-01 11:41:43 (GMT) |
---|---|---|
committer | hobbs <hobbs> | 2000-02-01 11:41:43 (GMT) |
commit | d029a3f0572fd461b639eadd8d469ff99d01c4b5 (patch) | |
tree | 5aa30a90261ad40eb818a867dfa52d7455a6f388 /win/tkWinWm.c | |
parent | d9ef6f977a3ef1459bb388a5eb9d6ccdc1f8006b (diff) | |
download | tk-d029a3f0572fd461b639eadd8d469ff99d01c4b5.zip tk-d029a3f0572fd461b639eadd8d469ff99d01c4b5.tar.gz tk-d029a3f0572fd461b639eadd8d469ff99d01c4b5.tar.bz2 |
* win/Makefile.in (install-*): reduced verbosity of install
* win/tkWinPixmap.c (XGetGeometry): added support for windows in
XGetGeometry [Bug: 4069]
* win/tkWinFont.c (GetScreenFont): fixed possible mem overrun with
long font names [Bug: 4108]
* win/tkWinDialog.c: added EnableWindow calls to dialogs to
correct for possible loss of control in parent Tk toplevel
[Bug: 1212 et al]
Diffstat (limited to 'win/tkWinWm.c')
-rw-r--r-- | win/tkWinWm.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/win/tkWinWm.c b/win/tkWinWm.c index 4a8c547..e9a117a 100644 --- a/win/tkWinWm.c +++ b/win/tkWinWm.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkWinWm.c,v 1.19 2000/01/27 18:03:34 hobbs Exp $ + * RCS: @(#) $Id: tkWinWm.c,v 1.20 2000/02/01 11:41:44 hobbs Exp $ */ #include "tkWinInt.h" @@ -184,7 +184,7 @@ typedef struct TkWmInfo { * pixels up from bottom of screen, rather than * down from top. * WM_UPDATE_SIZE_HINTS - non-zero means that new size hints need to be - * propagated to window manager. + * propagated to window manager. Not used on Win. * WM_SYNC_PENDING - set to non-zero while waiting for the window * manager to respond to some state change. * WM_MOVE_PENDING - non-zero means the application has requested @@ -815,6 +815,7 @@ UpdateWrapper(winPtr) SetMenu(oldWrapper, NULL); DestroyWindow(oldWrapper); } + wmPtr->flags &= ~WM_NEVER_MAPPED; SendMessage(wmPtr->wrapper, TK_ATTACHWINDOW, (WPARAM) child, 0); @@ -1054,8 +1055,8 @@ TkWmDeadWindow(winPtr) winPtr->dispPtr->firstWmPtr = wmPtr->nextPtr; } else { register WmInfo *prevPtr; - for (prevPtr = winPtr->dispPtr->firstWmPtr; ; prevPtr - = prevPtr->nextPtr) { + for (prevPtr = winPtr->dispPtr->firstWmPtr; ; + prevPtr = prevPtr->nextPtr) { if (prevPtr == NULL) { panic("couldn't unlink window in TkWmDeadWindow"); } @@ -1070,8 +1071,8 @@ TkWmDeadWindow(winPtr) * Reset all transient windows whose master is the dead window. */ - for (wmPtr2 = winPtr->dispPtr->firstWmPtr; wmPtr2 != NULL; wmPtr2 - = wmPtr2->nextPtr) { + for (wmPtr2 = winPtr->dispPtr->firstWmPtr; wmPtr2 != NULL; + wmPtr2 = wmPtr2->nextPtr) { if (wmPtr2->masterPtr == winPtr) { wmPtr2->masterPtr = NULL; if ((wmPtr2->wrapper != None) @@ -2268,7 +2269,7 @@ Tk_WmCmd(clientData, interp, argc, argv) } if (masterPtr == winPtr) { wmPtr->masterPtr = NULL; - } else { + } else if (masterPtr != wmPtr->masterPtr) { Tk_MakeWindowExist((Tk_Window)masterPtr); /* @@ -2639,11 +2640,6 @@ UpdateGeometryInfo(clientData) return; } - if (wmPtr->flags & WM_UPDATE_SIZE_HINTS) { - wmPtr->flags &= ~WM_UPDATE_SIZE_HINTS; - UpdateWrapper(winPtr); - } - /* * Compute the border size for the current window style. This * size will include the resize handles, the title bar and the |