Anonymous avatar Anonymous committed 0eab69a

git-gui: Remove the loaded column from the blame viewer

Originally I had placed this loaded column between the line number
and the file line data to help users know if a particular line has
received annotation data or not yet. This way users would know if
the line(s) they were interested in were ready for viewing, or if
they still had to wait. It also was an entertaining way for the
user to spend their time waiting for git-blame --incremental to
compute the complete set of annotations.

However it is completely useless now that we show the abbreviated
commit SHA-1 and author initials in the leftmost column. That area
is empty until we get the annotation data, and as soon as we get it
in we display something there, indicating to the user that there is
now blame data ready. Further with the tooltips the user is likely
to see the data as soon as it comes in, as they are probably not
keeping their mouse perfectly still. So I'm removing the field to
save screen space for more useful things, like file content.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>;

Comments (0)

Files changed (1)

 field w_path     ; # label showing the current file path
 field w_line     ; # text column: all line numbers
 field w_cgrp     ; # text column: abbreviated commit SHA-1s
-field w_load     ; # text column: loaded indicator
 field w_file     ; # text column: actual file data
 field w_cmit     ; # pane showing commit message
 field status     ; # text variable bound to status bar
 		-height 25 \
 		-width 100
 
-	set w_load $w.file_pane.out.loaded_t
-	text $w_load \
-		-background white -borderwidth 0 \
-		-state disabled \
-		-wrap none \
-		-height 40 \
-		-width 1 \
-		-font font_diff
-	$w_load tag conf annotated -background grey
-
 	set w_line $w.file_pane.out.linenumber_t
 	text $w_line \
 		-background white -borderwidth 0 \
 	scrollbar $w.file_pane.out.sby \
 		-orient v \
 		-command [list scrollbar2many [list \
-		$w_load \
 		$w_line \
 		$w_cgrp \
 		$w_file \
 	grid \
 		$w_cgrp \
 		$w_line \
-		$w_load \
 		$w_file \
 		$w.file_pane.out.sby \
 		-sticky nsew
-	grid conf $w.file_pane.out.sbx -column 3 -sticky we
-	grid columnconfigure $w.file_pane.out 3 -weight 1
+	grid conf $w.file_pane.out.sbx -column 2 -sticky we
+	grid columnconfigure $w.file_pane.out 2 -weight 1
 	grid rowconfigure $w.file_pane.out 0 -weight 1
 
 	set w_cmit $w.file_pane.cm.t
 
 	foreach i [list \
 		$w_cgrp \
-		$w_load \
 		$w_line \
 		$w_file] {
 		$i conf -cursor $cursor_ptr
 		$i conf -yscrollcommand \
 			[list many2scrollbar [list \
 			$w_cgrp \
-			$w_load \
 			$w_line \
 			$w_file \
 			] yview $w.file_pane.out.sby]
 
 	foreach i [list \
 		$w_cgrp \
-		$w_load \
 		$w_line \
 		$w_file \
 		$w_cmit] {
 		array unset line_commit
 		array unset line_file
 
-		$w_load conf -state normal
 		$w_cgrp conf -state normal
 		$w_line conf -state normal
 		$w_file conf -state normal
 
-		$w_load delete 0.0 end
 		$w_cgrp delete 0.0 end
 		$w_line delete 0.0 end
 		$w_file delete 0.0 end
 
-		$w_load conf -state disabled
 		$w_cgrp conf -state disabled
 		$w_line conf -state disabled
 		$w_file conf -state disabled
 		return
 	}
 
-	$w_load conf -state normal
 	$w_cgrp conf -state normal
 	$w_line conf -state normal
 	$w_file conf -state normal
 		incr total_lines
 
 		if {$total_lines > 1} {
-			$w_load insert end "\n"
 			$w_cgrp insert end "\n"
 			$w_line insert end "\n"
 			$w_file insert end "\n"
 		$w_line insert end "$total_lines" linenumber
 		$w_file insert end "$line"
 	}
-	$w_load conf -state disabled
 	$w_cgrp conf -state disabled
 	$w_line conf -state disabled
 	$w_file conf -state disabled
 
 			while {$n > 0} {
 				set lno_e "$lno.0 lineend + 1c"
-				if {[catch {set g g$line_commit($lno)}]} {
-					$w_load tag add annotated $lno.0 $lno_e
-				} else {
+				if {![catch {set g g$line_commit($lno)}]} {
 					$w_cgrp tag remove g$g $lno.0 $lno_e
 					$w_line tag remove g$g $lno.0 $lno_e
 					$w_file tag remove g$g $lno.0 $lno_e
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.