Subject: [PATCH v2 3/4] git-gui--askyesno: allow overriding the window title

From: "Johannes Schindelin via GitGitGadget" <[email-masked]>
Date: Thu, 28 Aug 2025 08:58:49 +0000

From: Johannes Schindelin <[email-masked]>

"Question?" is maybe not the most informative thing to ask. In the
absence of better information, it is the best we can do, of course.

However, Git for Windows' auto updater just learned the trick to use
git-gui--askyesno to ask the user whether to update now or not. And in
this scripted scenario, we can easily pass a command-line option to
change the window title.

So let's support that with the new `--title <title>` option.

Signed-off-by: Johannes Schindelin <[email-masked]>
---
 git-gui--askyesno | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/git-gui--askyesno b/git-gui--askyesno
index f7312c70c2ca..d0c801c42c7c 100755
--- a/git-gui--askyesno
+++ b/git-gui--askyesno
@@ -5,6 +5,10 @@ exec wish "$0" -- "$@"
 # This is an implementation of a simple yes no dialog
 # which is injected into the git commandline by git gui
 # in case a yesno question needs to be answered.
+#
+# The window title, which defaults to "Question?", can be
+# overridden via the optional `--title` command-line
+# option.
 
 set NS {}
 set use_ttk [package vsatisfies [package provide Tk] 8.5]
@@ -12,10 +16,15 @@ if {$use_ttk} {
 	set NS ttk
 }
 
+set title "Question?"
 if {$argc < 1} {
 	puts stderr "Usage: $argv0 <question>"
 	exit 1
 } else {
+	if {$argc > 2 && [lindex $argv 0] == "--title"} {
+		set title [lindex $argv 1]
+		set argv [lreplace $argv 0 1]
+	}
 	set prompt [join $argv " "]
 }
 
@@ -38,5 +47,5 @@ pack .b -side bottom -fill x -ipadx 20 -ipady 15
 bind . <Key-Return> {exit 0}
 bind . <Key-Escape> {exit 1}
 
-wm title . "Question?"
+wm title . $title
 tk::PlaceWindow .
-- 
gitgitgadget