From: Martin v. Löwis Date: Tue, 3 Aug 2004 18:36:25 +0000 (+0000) Subject: Wait for visibility before setting a grab. Fixes #946153. X-Git-Tag: v2.4a2~27 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b217cd802ec5c9647278b74c311a14a8cdf13d2e;p=python Wait for visibility before setting a grab. Fixes #946153. --- diff --git a/Lib/lib-tk/FileDialog.py b/Lib/lib-tk/FileDialog.py index 5e848daa73..b08d3a84f8 100644 --- a/Lib/lib-tk/FileDialog.py +++ b/Lib/lib-tk/FileDialog.py @@ -119,6 +119,7 @@ class FileDialog: self.set_selection(default) self.filter_command() self.selection.focus_set() + self.top.wait_visibility() # window needs to be visible for the grab self.top.grab_set() self.how = None self.master.mainloop() # Exited by self.quit(how) diff --git a/Lib/lib-tk/SimpleDialog.py b/Lib/lib-tk/SimpleDialog.py index bb63a8df01..cb08318dbd 100644 --- a/Lib/lib-tk/SimpleDialog.py +++ b/Lib/lib-tk/SimpleDialog.py @@ -64,6 +64,7 @@ class SimpleDialog: widget.deiconify() # Become visible at the desired location def go(self): + self.root.wait_visibility() self.root.grab_set() self.root.mainloop() self.root.destroy() diff --git a/Lib/lib-tk/tkSimpleDialog.py b/Lib/lib-tk/tkSimpleDialog.py index 01709d8103..4d11ce0209 100644 --- a/Lib/lib-tk/tkSimpleDialog.py +++ b/Lib/lib-tk/tkSimpleDialog.py @@ -61,6 +61,7 @@ class Dialog(Toplevel): self.buttonbox() + self.wait_visibility() # window needs to be visible for the grab self.grab_set() if not self.initial_focus: