summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xgit-gui.sh23
1 files changed, 11 insertions, 12 deletions
diff --git a/git-gui.sh b/git-gui.sh
index b25b52fd11..559b62be03 100755
--- a/git-gui.sh
+++ b/git-gui.sh
@@ -2432,20 +2432,19 @@ proc popup_diff_menu {ctxm x y X Y} {
set ::cursorX $x
set ::cursorY $y
if {$::ui_index eq $::current_diff_side} {
- $ctxm entryconf $::ui_diff_applyhunk \
- -state normal \
- -label {Unstage Hunk From Commit}
- } elseif {$current_diff_path eq {}
- || ![info exists file_states($current_diff_path)]
- || {_O} eq [lindex $file_states($current_diff_path) 0]} {
- $ctxm entryconf $::ui_diff_applyhunk \
- -state disabled \
- -label {Stage Hunk For Commit}
+ set s normal
+ set l "Unstage Hunk From Commit"
} else {
- $ctxm entryconf $::ui_diff_applyhunk \
- -state normal \
- -label {Stage Hunk For Commit}
+ if {$current_diff_path eq {}
+ || ![info exists file_states($current_diff_path)]
+ || {_O} eq [lindex $file_states($current_diff_path) 0]} {
+ set s disabled
+ } else {
+ set s normal
+ }
+ set l "Stage Hunk For Commit"
}
+ $ctxm entryconf $::ui_diff_applyhunk -state $s -label $l
tk_popup $ctxm $X $Y
}
bind_button3 $ui_diff [list popup_diff_menu $ctxm %x %y %X %Y]