From 685f83fe13d0bb5f12d426febb0eb9d5c7610c38 Mon Sep 17 00:00:00 2001 From: CorpNewt <12772521+corpnewt@users.noreply.github.com> Date: Fri, 29 Nov 2024 14:48:38 -0600 Subject: [PATCH] Ctrl/cmd-F re-focuses the find entry first, closes the pane if already focused --- Scripts/plistwindow.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Scripts/plistwindow.py b/Scripts/plistwindow.py index 1d139da..d0b644d 100644 --- a/Scripts/plistwindow.py +++ b/Scripts/plistwindow.py @@ -985,8 +985,16 @@ class PlistWindow(tk.Toplevel): self._tree.focus_force() def hide_show_find(self, event=None, override=None): + if event and override is None and self.show_find_replace \ + and not str(event.widget.focus_get()).startswith(str(self.find_frame)): + # We got a non-overridden ctrl/cmd-f event triggered from somewhere + # other than our find/replace pane while that pane already exists. + # Let's just force focus to the find entry widget - and select all + # contents + self.f_text.focus() + self.f_text.select_all() # Let's find out if we're set to show - if self.show_find_replace != override: + elif self.show_find_replace != override: self.show_find_replace ^= True self.draw_frames(event,"hideshow") return "break"