gitk: include y coord in recorded sash position

6cd80496e9 ("gitk: Resize panes correctly when reducing window size", 2020-10-03) introduces a mechanism to record previously-set sash positions to make sure that correct values are used while computing resize proportions. However, if we are not using ttk, then sash represents only the x coordinate and the recorded sash (`oldsash`) only includes the x coordinate. When we need to access the y coordinate via the recorded sash position, we generate the following Application Error popup: Error: expected integer but got "" expected integer but got "" expected integer but got "" while executing "$win sash place 0 $sash0 [lindex $s0 1]" (procedure "resizeclistpanes" line 38) invoked from within "resizeclistpanes .tf.histframe.pwclist 2818" (command bound to event) To fix this, if we are not using ttk, we append the sash positions with the y coordinates before recording them to match the use_ttk case. Signed-off-by: Halil Sen <halil.sen@gmail.com> Signed-off-by: Paul Mackerras <paulus@ozlabs.org>

halilsen committed Feb 20, 2022 at 19:47 UTC 465f03869ae11acd04abfa1b83c67879c867410c
1 file changed +3
gitk
+3
@@ -2991,6 +2991,8 @@ proc resizeclistpanes {win w} {
2991 } else {
2992 $win sash place 0 $sash0 [lindex $s0 1]
2993 $win sash place 1 $sash1 [lindex $s1 1]
2994 + set sash0 [list $sash0 [lindex $s0 1]]
2995 + set sash1 [list $sash1 [lindex $s1 1]]
2996 }
2997 set oldsash($win) [list $sash0 $sash1]
2998 }
@@ -3023,6 +3025,7 @@ proc resizecdetpanes {win w} {
3025 $win sashpos 0 $sash0
3026 } else {
3027 $win sash place 0 $sash0 [lindex $s0 1]
3028 + set sash0 [list $sash0 [lindex $s0 1]]
3029 }
3030 set oldsash($win) $sash0
3031 }