diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2010-01-06 09:30:21 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2010-01-06 09:30:21 (GMT) |
commit | df9501bba1307cd8d762718fdb94dcf66309c717 (patch) | |
tree | 12ef01660f9d3e503753c803b43054dc9469b63b /unix/tkUnixWm.c | |
parent | 8d39ac13676ca900e69e4abfdf4604601c51fbf3 (diff) | |
download | tk-df9501bba1307cd8d762718fdb94dcf66309c717.zip tk-df9501bba1307cd8d762718fdb94dcf66309c717.tar.gz tk-df9501bba1307cd8d762718fdb94dcf66309c717.tar.bz2 |
[Bug 1163496]: Allow windows to be set to be transients for withdrawn masters
correctly.
Diffstat (limited to 'unix/tkUnixWm.c')
-rw-r--r-- | unix/tkUnixWm.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/unix/tkUnixWm.c b/unix/tkUnixWm.c index 9a5467a..680d4f2 100644 --- a/unix/tkUnixWm.c +++ b/unix/tkUnixWm.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: tkUnixWm.c,v 1.58.2.5 2009/12/08 21:48:24 patthoyts Exp $ + * RCS: @(#) $Id: tkUnixWm.c,v 1.58.2.6 2010/01/06 09:30:21 dkf Exp $ */ #include "tkUnixInt.h" @@ -675,11 +675,15 @@ TkWmMapWindow( if (!Tk_IsMapped(wmPtr->masterPtr)) { wmPtr->withdrawn = 1; wmPtr->hints.initial_state = WithdrawnState; - } else { - XSetTransientForHint(winPtr->display, - wmPtr->wrapperPtr->window, - wmPtr->masterPtr->wmInfoPtr->wrapperPtr->window); } + + /* + * Make sure that we actually set the transient-for property, even + * if we are withdrawn. [Bug 1163496] + */ + + XSetTransientForHint(winPtr->display, wmPtr->wrapperPtr->window, + wmPtr->masterPtr->wmInfoPtr->wrapperPtr->window); } wmPtr->flags |= WM_UPDATE_SIZE_HINTS; |