Revert "gitk: Only restore window size from ~/.gitk, not position"

This reverts commit b9bee11526ec (gitk: Only restore window size from ~/.gitk, not position, 2008-03-10). The earlier commit e9937d2a03a4 (Make gitk work reasonably well on Cygwin, 2007-02-01) reworked the window layout considerably. Much of this became irrelevant around 2011 after Cygwin gained an X11 server and switched to a supportable port of the Unix/X11 Tcl/Tk (it is now on the current 8.6 code base). Part of the necessary change was to restore the window size across sessions, but the position was also restored. This raised complaints on the mailing list[*], because Gitk was opened on the wrong monitor. b9bee11526ec was the compromise, because it was only the size that mattered for the Cygwin layout engine to work. I personally, find it annoying when Gitk pops up on a random location on the screen, in particular, since many other applications restore the window positions across sessions, so why not Gitk as well? (I do not operate multi-monitor setups, so I cannot test the case.) [*] https://lore.kernel.org/git/47AAA254.2020008@thorn.ws/ Helped-by: Mark Levedahl <mlevedahl@gmail.com> Signed-off-by: Johannes Sixt <j6t@kdbg.org>

Johannes Sixt committed Oct 17, 2025 at 18:37 UTC 8b5636a57ff078ac368f246f813b156552a0726c
1 file changed +2 -10
gitk
+2 -10
@@ -2764,17 +2764,9 @@ proc makewindow {} {
2764 .pwbottom add .bright
2765 .ctop add .pwbottom
2766
2767 - # restore window width & height if known
2767 + # restore window position if known
2768 if {[info exists geometry(main)]} {
2769 - if {[scan $geometry(main) "%dx%d" w h] >= 2} {
2770 - if {$w > [winfo screenwidth .]} {
2771 - set w [winfo screenwidth .]
2772 - }
2773 - if {$h > [winfo screenheight .]} {
2774 - set h [winfo screenheight .]
2775 - }
2776 - wm geometry . "${w}x$h"
2777 - }
2769 + wm geometry . "$geometry(main)"
2770 }
2771
2772 if {[info exists geometry(state)] && $geometry(state) eq "zoomed"} {