From: Alexey Borzenkov <snaury@gmail.com>
Date: Tue, 8 Sep 2009 19:22:36 +0000 (+0400)
Subject: gitk: restore wm state to normal before saving geometry information
X-Git-Url: http://www.privyetmir.co.uk/gitweb?a=commitdiff_plain;h=refs%2Fheads%2Fpt%2Frestore-state-patch;p=gitk

gitk: restore wm state to normal before saving geometry information

gitk now includes patches for saving and restoring wm state, however
because it saves wm geometry when window can still be maximized the
maximize/restore button becomes useless after restarting gitk (you
will get a huge displaced window if you try to restore it). This
patch fixes this issue by storing window geometry in normal state.

Signed-off-by: Alexey Borzenkov <snaury@gmail.com>
---

diff --git a/gitk b/gitk
index 1306178..bc31887 100755
--- a/gitk
+++ b/gitk
@@ -2555,8 +2555,11 @@ proc savestuff {w} {
 	puts $f [list set extdifftool $extdifftool]
 	puts $f [list set perfile_attrs $perfile_attrs]
 
-	puts $f "set geometry(main) [wm geometry .]"
 	puts $f "set geometry(state) [wm state .]"
+	if {[wm state .] eq {zoomed}} {
+		wm state . normal
+	}
+	puts $f "set geometry(main) [wm geometry .]"
 	puts $f "set geometry(topwidth) [winfo width .tf]"
 	puts $f "set geometry(topheight) [winfo height .tf]"
         puts $f "set geometry(pwsash0) \"[.tf.histframe.pwclist sash coord 0]\""