From d1df81a730499cc6286d02afa6028a1e9c22bbbf Mon Sep 17 00:00:00 2001 From: Terry Jan Reedy Date: Thu, 3 Feb 2022 17:06:17 -0500 Subject: [PATCH] bpo-46630: Fix initial focus of IDLE query dialogs (GH-31112) On Windows, one had to Tab or click on the entry box to get a cursor and be able to enter anything. --- Lib/idlelib/NEWS.txt | 3 +++ Lib/idlelib/query.py | 2 +- Misc/NEWS.d/next/IDLE/2022-02-03-15-47-53.bpo-46630.tREOjo.rst | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/IDLE/2022-02-03-15-47-53.bpo-46630.tREOjo.rst diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt index 34b2c08a922..0bfadfd81e2 100644 --- a/Lib/idlelib/NEWS.txt +++ b/Lib/idlelib/NEWS.txt @@ -4,6 +4,9 @@ Released on 2022-10-03 ========================= +bpo-46630: Make query dialogs on Windows start with a cursor in the +entry box. + bpo-46591: Make the IDLE doc URL on the About IDLE dialog clickable. bpo-45296: Clarify close, quit, and exit in IDLE. In the File menu, diff --git a/Lib/idlelib/query.py b/Lib/idlelib/query.py index fefa5aac1b7..df02f2123ab 100644 --- a/Lib/idlelib/query.py +++ b/Lib/idlelib/query.py @@ -83,6 +83,7 @@ class Query(Toplevel): if not _utest: self.deiconify() # Unhide now that geometry set. + self.entry.focus_set() self.wait_window() def create_widgets(self, ok_text='OK'): # Do not replace. @@ -100,7 +101,6 @@ class Query(Toplevel): text=self.message) self.entryvar = StringVar(self, self.text0) self.entry = Entry(frame, width=30, textvariable=self.entryvar) - self.entry.focus_set() self.error_font = Font(name='TkCaptionFont', exists=True, root=self.parent) self.entry_error = Label(frame, text=' ', foreground='red', diff --git a/Misc/NEWS.d/next/IDLE/2022-02-03-15-47-53.bpo-46630.tREOjo.rst b/Misc/NEWS.d/next/IDLE/2022-02-03-15-47-53.bpo-46630.tREOjo.rst new file mode 100644 index 00000000000..81e35486eaf --- /dev/null +++ b/Misc/NEWS.d/next/IDLE/2022-02-03-15-47-53.bpo-46630.tREOjo.rst @@ -0,0 +1 @@ +Make query dialogs on Windows start with a cursor in the entry box.