diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2010-01-06 09:25:14 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2010-01-06 09:25:14 (GMT) |
commit | ad585186aa2726d02510006e5a619be5b4021fc5 (patch) | |
tree | ed4485d70c366f86cb8eeb1c8400c6a4ce5e7998 /unix/tkUnixWm.c | |
parent | f33376cb218f06084bae0b06bbb386d8b99b3d2b (diff) | |
download | tk-ad585186aa2726d02510006e5a619be5b4021fc5.zip tk-ad585186aa2726d02510006e5a619be5b4021fc5.tar.gz tk-ad585186aa2726d02510006e5a619be5b4021fc5.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 3b0d3cb..adfb31d 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.77 2009/12/09 13:55:14 dkf Exp $ + * RCS: @(#) $Id: tkUnixWm.c,v 1.78 2010/01/06 09:25:15 dkf Exp $ */ #include "tkUnixInt.h" @@ -676,11 +676,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; |