[Python-checkins] gh-104499: IDLE - fix completions for tk aqua 8.7 (#104591)

terryjreedy webhook-mailer at python.org
Wed May 17 21:37:16 EDT 2023


https://github.com/python/cpython/commit/678bf57ed04b8c250f0bc031ebd264bece76e731
commit: 678bf57ed04b8c250f0bc031ebd264bece76e731
branch: main
author: Terry Jan Reedy <tjreedy at udel.edu>
committer: terryjreedy <tjreedy at udel.edu>
date: 2023-05-17T21:36:58-04:00
summary:

gh-104499: IDLE - fix completions for tk aqua 8.7 (#104591)

files:
A Misc/NEWS.d/next/IDLE/2023-05-17-17-32-21.gh-issue-104499.hNeqV4.rst
M Lib/idlelib/NEWS.txt
M Lib/idlelib/autocomplete_w.py

diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index f78e45e671c9..553b932aa6b6 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -4,6 +4,8 @@ Released on 2023-10-02
 =========================
 
 
+gh-104499: Fix completions for Tk Aqua 8.7 (currently blank).
+
 gh-104486: Make About print both tcl and tk versions if different,
 as is expected someday.
 
diff --git a/Lib/idlelib/autocomplete_w.py b/Lib/idlelib/autocomplete_w.py
index 0f835a9cc1d0..5bd7ce7f5e5a 100644
--- a/Lib/idlelib/autocomplete_w.py
+++ b/Lib/idlelib/autocomplete_w.py
@@ -182,16 +182,11 @@ def show_window(self, comp_lists, index, complete, mode, userWantsWin):
         self.userwantswindow = userWantsWin
         self.lasttypedstart = self.start
 
-        # Put widgets in place
         self.autocompletewindow = acw = Toplevel(self.widget)
-        # Put it in a position so that it is not seen.
-        acw.wm_geometry("+10000+10000")
-        # Make it float
+        acw.withdraw()
         acw.wm_overrideredirect(1)
         try:
-            # This command is only needed and available on Tk >= 8.4.0 for OSX
-            # Without it, call tips intrude on the typing process by grabbing
-            # the focus.
+            # Prevent grabbing focus on maxOS.
             acw.tk.call("::tk::unsupported::MacWindowStyle", "style", acw._w,
                         "help", "noActivates")
         except TclError:
@@ -271,6 +266,7 @@ def winconfig_event(self, event):
                 # place acw above current line
                 new_y -= acw_height
             acw.wm_geometry("+%d+%d" % (new_x, new_y))
+            acw.deiconify()
             acw.update_idletasks()
         except TclError:
             pass
diff --git a/Misc/NEWS.d/next/IDLE/2023-05-17-17-32-21.gh-issue-104499.hNeqV4.rst b/Misc/NEWS.d/next/IDLE/2023-05-17-17-32-21.gh-issue-104499.hNeqV4.rst
new file mode 100644
index 000000000000..20cbd9ab9e57
--- /dev/null
+++ b/Misc/NEWS.d/next/IDLE/2023-05-17-17-32-21.gh-issue-104499.hNeqV4.rst
@@ -0,0 +1 @@
+Fix completions for Tk Aqua 8.7 (currently blank).



More information about the Python-checkins mailing list