summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog14
-rw-r--r--library/choosedir.tcl9
-rw-r--r--library/clrpick.tcl9
-rw-r--r--library/msgbox.tcl9
-rw-r--r--library/tkfbox.tcl9
-rw-r--r--library/xmfbox.tcl9
6 files changed, 53 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index e08a90a..2908006 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2002-06-12 Mo DeJong <mdejong@users.sourceforge.net>
+
+ * library/choosedir.tcl (tk::dialog::file::chooseDir):
+ * library/clrpick.tcl (tk::dialog::file::chooseDir):
+ * library/msgbox.tcl (tk::MessageBox):
+ * library/tkfbox.tcl (tk::dialog::file):
+ * library/xmfbox.tcl (tk::MotifFDialog): Remove the
+ transient property on dialogs after they have been
+ dismissed to insulate them from further state changes
+ in the master. This keeps a withdrawn dialog from
+ being mapped when the master is deiconified. [Tk patch 568278]
+
2002-06-12 Jeff Hobbs <jeffh@ActiveState.com>
* win/tkWinCursor.c (TkGetCursorByName): reverted fix from
@@ -46,7 +58,7 @@
deleting a master in wm transient command to avoid
deleting the callback when an error is raised.
Add support for MapNotify and UnmapNotify events
- to the master callback.
+ to the master callback. [Tk patch 561708]
2002-06-11 Joe English <jenglish@users.sf.net>
diff --git a/library/choosedir.tcl b/library/choosedir.tcl
index e224d60..3875c7b 100644
--- a/library/choosedir.tcl
+++ b/library/choosedir.tcl
@@ -5,7 +5,7 @@
# Copyright (c) 1998-2000 by Scriptics Corporation.
# All rights reserved.
#
-# RCS: @(#) $Id: choosedir.tcl,v 1.13 2002/06/12 23:08:12 mdejong Exp $
+# RCS: @(#) $Id: choosedir.tcl,v 1.14 2002/06/13 06:17:21 mdejong Exp $
# Make sure the tk::dialog namespace, in which all dialogs should live, exists
namespace eval ::tk::dialog {}
@@ -96,6 +96,13 @@ proc ::tk::dialog::file::chooseDir:: {args} {
::tk::RestoreFocusGrab $w $data(ent) withdraw
+ # Remove the transient property to insulate the
+ # dialog from changes in the master's state.
+
+ if {[winfo exists $w]} {
+ wm transient $w {}
+ }
+
# Cleanup traces on selectPath variable
#
diff --git a/library/clrpick.tcl b/library/clrpick.tcl
index 6a39220..f80d752 100644
--- a/library/clrpick.tcl
+++ b/library/clrpick.tcl
@@ -3,7 +3,7 @@
# Color selection dialog for platforms that do not support a
# standard color selection dialog.
#
-# RCS: @(#) $Id: clrpick.tcl,v 1.17 2002/06/12 23:08:12 mdejong Exp $
+# RCS: @(#) $Id: clrpick.tcl,v 1.18 2002/06/13 06:17:21 mdejong Exp $
#
# Copyright (c) 1996 Sun Microsystems, Inc.
#
@@ -109,6 +109,13 @@ proc ::tk::dialog::color:: {args} {
::tk::RestoreFocusGrab $w $data(okBtn)
unset data
+ # Remove the transient property to insulate the
+ # dialog from changes in the master's state.
+
+ if {[winfo exists $w]} {
+ wm transient $w {}
+ }
+
return $Priv(selectColor)
}
diff --git a/library/msgbox.tcl b/library/msgbox.tcl
index bd62167..4208d2c 100644
--- a/library/msgbox.tcl
+++ b/library/msgbox.tcl
@@ -3,7 +3,7 @@
# Implements messageboxes for platforms that do not have native
# messagebox support.
#
-# RCS: @(#) $Id: msgbox.tcl,v 1.19 2002/06/12 23:08:12 mdejong Exp $
+# RCS: @(#) $Id: msgbox.tcl,v 1.20 2002/06/13 06:17:21 mdejong Exp $
#
# Copyright (c) 1994-1997 Sun Microsystems, Inc.
#
@@ -404,5 +404,12 @@ proc ::tk::MessageBox {args} {
::tk::RestoreFocusGrab $w $focus
+ # Remove the transient property to insulate the
+ # dialog from changes in the master's state.
+
+ if {[winfo exists $w]} {
+ wm transient $w {}
+ }
+
return $Priv(button)
}
diff --git a/library/tkfbox.tcl b/library/tkfbox.tcl
index 6d7ce2f..0255cad 100644
--- a/library/tkfbox.tcl
+++ b/library/tkfbox.tcl
@@ -11,7 +11,7 @@
# files by clicking on the file icons or by entering a filename
# in the "Filename:" entry.
#
-# RCS: @(#) $Id: tkfbox.tcl,v 1.35 2002/06/12 23:08:12 mdejong Exp $
+# RCS: @(#) $Id: tkfbox.tcl,v 1.36 2002/06/13 06:17:21 mdejong Exp $
#
# Copyright (c) 1994-1998 Sun Microsystems, Inc.
#
@@ -878,6 +878,13 @@ proc ::tk::dialog::file:: {type args} {
::tk::RestoreFocusGrab $w $data(ent) withdraw
+ # Remove the transient property to insulate the
+ # dialog from changes in the master's state.
+
+ if {[winfo exists $w]} {
+ wm transient $w {}
+ }
+
# Cleanup traces on selectPath variable
#
diff --git a/library/xmfbox.tcl b/library/xmfbox.tcl
index 53df5dc..74eff0e 100644
--- a/library/xmfbox.tcl
+++ b/library/xmfbox.tcl
@@ -4,7 +4,7 @@
# Unix platform. This implementation is used only if the
# "::tk_strictMotif" flag is set.
#
-# RCS: @(#) $Id: xmfbox.tcl,v 1.21 2002/06/12 23:08:12 mdejong Exp $
+# RCS: @(#) $Id: xmfbox.tcl,v 1.22 2002/06/13 06:17:21 mdejong Exp $
#
# Copyright (c) 1996 Sun Microsystems, Inc.
# Copyright (c) 1998-2000 Scriptics Corporation
@@ -56,6 +56,13 @@ proc ::tk::MotifFDialog {type args} {
vwait ::tk::Priv(selectFilePath)
::tk::RestoreFocusGrab $w $data(sEnt) withdraw
+ # Remove the transient property to insulate the
+ # dialog from changes in the master's state.
+
+ if {[winfo exists $w]} {
+ wm transient $w {}
+ }
+
return $Priv(selectFilePath)
}