@@ -2138,12 +2138,14 @@ proc ttk_toplevel {w args} {
21382138 return $w
21392139}
21402140
2141- proc make_transient {window origin} {
2141+ proc make_transient {window origin {geometry " " } } {
21422142 wm transient $window $origin
21432143
2144- # Windows fails to place transient windows normally, so
2145- # schedule a callback to center them on the parent.
2146- if {[ tk windowingsystem] eq {win32}} {
2144+ if {$geometry ne " " } {
2145+ after idle [ list wm geometry $window $geometry ]
2146+ } elseif {[ tk windowingsystem] eq {win32}} {
2147+ # Windows fails to place transient windows normally, so
2148+ # schedule a callback to center them on the parent.
21472149 after idle [ list tk::PlaceWindow $window widget $origin ]
21482150 }
21492151}
@@ -10223,9 +10225,14 @@ proc showrefs {} {
1022310225 refill_reflist
1022410226 return
1022510227 }
10228+ if {[ info exists geometry(showrefs)] } {
10229+ set wndpos $geometry(showrefs)
10230+ } else {
10231+ set wndpos {}
10232+ }
1022610233 ttk_toplevel $top
1022710234 wm title $top [ mc " Tags and heads: %s" [file tail [pwd ] ]]
10228- make_transient $top .
10235+ make_transient $top . $wndpos
1022910236 text $top .list -background $bgcolor -foreground $fgcolor \
1023010237 -selectbackground $selectbgcolor -font mainfont \
1023110238 -xscrollcommand " $top .xsb set" -yscrollcommand " $top .ysb set" \
@@ -10261,9 +10268,6 @@ proc showrefs {} {
1026110268 bind $top .list <ButtonRelease-1> {sel_reflist %W %x %y; break}
1026210269 set reflist {}
1026310270 refill_reflist
10264- if {[ info exists geometry(showrefs)] } {
10265- after idle [ list wm geometry $top $geometry(showrefs) ]
10266- }
1026710271 # avoid <Configure> being bound to child windows
1026810272 bindtags $top [ linsert [bindtags $top ] 1 bind$top ]
1026910273 bind bind$top <Configure> {set geometry(showrefs) [ wm geometry %W] }
0 commit comments