gitk: Fallback to selecting the head commit upon load

Try selecting the head, if the previously selected commit
is not available in the new view.

Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
Alexander Gavrilov
2008-07-26 20:15:54 +04:00
committed by Paul Mackerras
parent 567c34e0ed
commit 835e62aef8

25
gitk
View File

@ -1506,8 +1506,15 @@ proc chewcommits {} {
global numcommits startmsecs global numcommits startmsecs
if {[info exists pending_select]} { if {[info exists pending_select]} {
set row [first_real_row] update
selectline $row 1 reset_pending_select {}
if {[commitinview $pending_select $curview]} {
selectline [rowofcommit $pending_select] 1
} else {
set row [first_real_row]
selectline $row 1
}
} }
if {$commitidx($curview) > 0} { if {$commitidx($curview) > 0} {
#set ms [expr {[clock clicks -milliseconds] - $startmsecs}] #set ms [expr {[clock clicks -milliseconds] - $startmsecs}]
@ -3372,14 +3379,18 @@ proc showview {n} {
drawvisible drawvisible
if {$row ne {}} { if {$row ne {}} {
selectline $row 0 selectline $row 0
} elseif {$mainheadid ne {} && [commitinview $mainheadid $curview]} {
selectline [rowofcommit $mainheadid] 1
} elseif {!$viewcomplete($n)} { } elseif {!$viewcomplete($n)} {
reset_pending_select $selid reset_pending_select $selid
} else { } else {
set row [first_real_row] reset_pending_select {}
if {$row < $numcommits} {
selectline $row 0 if {[commitinview $pending_select $curview]} {
selectline [rowofcommit $pending_select] 1
} else {
set row [first_real_row]
if {$row < $numcommits} {
selectline $row 0
}
} }
} }
if {!$viewcomplete($n)} { if {!$viewcomplete($n)} {