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: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b217cd802ec5c9647278b74c311a14a8cdf13d2e;p=thirdparty%2FPython%2Fcpython.git Wait for visibility before setting a grab. Fixes #946153. --- diff --git a/Lib/lib-tk/FileDialog.py b/Lib/lib-tk/FileDialog.py index 5e848daa7365..b08d3a84f85d 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 bb63a8df01e0..cb08318dbdd7 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 01709d8103af..4d11ce020948 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: