summaryrefslogtreecommitdiffstats
path: root/tests/wm.test
diff options
context:
space:
mode:
authormdejong <mdejong>2002-06-22 01:43:47 (GMT)
committermdejong <mdejong>2002-06-22 01:43:47 (GMT)
commitcfa0529ef3bf8c4d9c87387908d3a32457499c51 (patch)
tree6cc14635010abed81c3e4148c8858c8c7312907c /tests/wm.test
parentafbc11e3d922f8b560027b81eb6abc022645a330 (diff)
downloadtk-cfa0529ef3bf8c4d9c87387908d3a32457499c51.zip
tk-cfa0529ef3bf8c4d9c87387908d3a32457499c51.tar.gz
tk-cfa0529ef3bf8c4d9c87387908d3a32457499c51.tar.bz2
* tests/wm.test: Add tests to make sure a withdrawn
transient does not get remapped by state changes in the master. * unix/tkUnixWm.c (Tk_WmCmd, WmWaitMapProc): * win/tkWinWm.c (Tk_WmCmd, WmWaitVisibilityOrMapProc): Add a WM_TRANSIENT_WITHDRAWN flag that gets set by the withdraw, deiconify, or state wm subcommands. Check this flag before mapping a transient when processing a MapNotify event. [Tk bug 570764]
Diffstat (limited to 'tests/wm.test')
-rw-r--r--tests/wm.test35
1 files changed, 34 insertions, 1 deletions
diff --git a/tests/wm.test b/tests/wm.test
index c43b1a9..c7dceed 100644
--- a/tests/wm.test
+++ b/tests/wm.test
@@ -7,7 +7,7 @@
# Copyright (c) 1998-1999 by Scriptics Corporation.
# All rights reserved.
#
-# RCS: @(#) $Id: wm.test,v 1.10 2002/06/13 21:35:09 mdejong Exp $
+# RCS: @(#) $Id: wm.test,v 1.11 2002/06/22 01:43:47 mdejong Exp $
# This file tests window manager interactions that work across
# platforms. Window manager tests that only work on a specific
@@ -509,6 +509,39 @@ test wm-transient-5.3 { remove transient property from window
wm transient .subject
} {}
+test wm-transient-6.1 { a withdrawn transient does not track
+ state changes in the master } {
+ deleteWindows
+ toplevel .master
+ toplevel .subject
+ update
+ wm transient .subject .master
+ wm withdraw .subject
+ wm withdraw .master
+ wm deiconify .master
+ wm state .subject
+} {withdrawn}
+
+test wm-transient-6.2 { a withdrawn transient does not track
+ state changes in the master } {
+ set results [list]
+ deleteWindows
+ toplevel .master
+ toplevel .subject
+ update
+ wm transient .subject .master
+ wm withdraw .subject
+ wm withdraw .master
+ wm deiconify .master
+ lappend results [wm state .subject]
+ wm deiconify .subject
+ lappend results [wm state .subject]
+ wm withdraw .master
+ lappend results [wm state .subject]
+ wm deiconify .master
+ lappend results [wm state .subject]
+} {withdrawn normal withdrawn normal}
+
test wm-state-1.1 {usage} {
list [catch {wm state} err] $err