git-gui: add hotkey to toggle "Amend Last Commit"
authorBirger Skogeng Pedersen <birger.sp@gmail.com>
Sat, 14 Sep 2019 09:18:35 +0000 (11:18 +0200)
committerPratyush Yadav <me@yadavpratyush.com>
Sat, 14 Sep 2019 17:52:00 +0000 (23:22 +0530)
Selecting whether to "Amend Last Commit" or not does not have a hotkey.

With this patch, the user may toggle between the two options with
CTRL/CMD+e.

Signed-off-by: Birger Skogeng Pedersen <birger.sp@gmail.com>
Rebased-by: Bert Wesarg <bert.wesarg@googlemail.com>
Signed-off-by: Pratyush Yadav <me@yadavpratyush.com>
git-gui.sh
index c7d9103f003077a2cd32a2644fe5a93e2e6d261d..c345b5c6bedfc98f147547e8ecbdc90f24d2ecae 100755 (executable)
@@ -2664,6 +2664,12 @@ proc focus_widget {widget} {
        }
 }
 
        }
 }
 
+proc toggle_commit_type {} {
+       global commit_type_is_amend
+       set commit_type_is_amend [expr !$commit_type_is_amend]
+       do_select_commit_type
+}
+
 ######################################################################
 ##
 ## ui construction
 ######################################################################
 ##
 ## ui construction
@@ -2854,6 +2860,7 @@ if {[is_enabled multicommit] || [is_enabled singlecommit]} {
        if {![is_enabled nocommit]} {
                .mbar.commit add checkbutton \
                        -label [mc "Amend Last Commit"] \
        if {![is_enabled nocommit]} {
                .mbar.commit add checkbutton \
                        -label [mc "Amend Last Commit"] \
+                       -accelerator $M1T-E \
                        -variable commit_type_is_amend \
                        -command do_select_commit_type
                lappend disable_on_lock \
                        -variable commit_type_is_amend \
                        -command do_select_commit_type
                lappend disable_on_lock \
@@ -3892,6 +3899,8 @@ bind .   <$M1B-Key-j> do_revert_selection
 bind .   <$M1B-Key-J> do_revert_selection
 bind .   <$M1B-Key-i> do_add_all
 bind .   <$M1B-Key-I> do_add_all
 bind .   <$M1B-Key-J> do_revert_selection
 bind .   <$M1B-Key-i> do_add_all
 bind .   <$M1B-Key-I> do_add_all
+bind .   <$M1B-Key-e> toggle_commit_type
+bind .   <$M1B-Key-E> toggle_commit_type
 bind .   <$M1B-Key-minus> {show_less_context;break}
 bind .   <$M1B-Key-KP_Subtract> {show_less_context;break}
 bind .   <$M1B-Key-equal> {show_more_context;break}
 bind .   <$M1B-Key-minus> {show_less_context;break}
 bind .   <$M1B-Key-KP_Subtract> {show_less_context;break}
 bind .   <$M1B-Key-equal> {show_more_context;break}