Pratyush Yadav <m...@yadavpratyush.com> writes:

> If there are no comments/objections with this patch, can it be merged
> please?

It usually works the other way around (no comments by default means
no interests), but sadly, a larger problem with this area is that
there currently is nobody who is actively working on maintaining the
'git-gui' project, which is a separate project that our tree merely
pulls from time to time.  So we need to find a volunteer to run that
project, send the patch in that direction and get it merged, and
then finally we can pull from them X-<.




>
> On 8/4/19 8:09 PM, Pratyush Yadav wrote:
>> If the toplevel window for the window being destroyed is the main window
>> (aka "."), then simply destroying it means the cleanup tasks are not
>> executed like saving the commit message buffer, saving window state,
>> etc. All this is handled by do_quit so, call it instead of directly
>> destroying the main window. For other toplevel windows, the old behavior
>> remains.
>>
>> Signed-off-by: Pratyush Yadav <m...@yadavpratyush.com>
>> ---
>>   git-gui/git-gui.sh | 19 +++++++++++++++++--
>>   1 file changed, 17 insertions(+), 2 deletions(-)
>>
>> diff --git a/git-gui/git-gui.sh b/git-gui/git-gui.sh
>> index 6de74ce639..6ec562d5da 100755
>> --- a/git-gui/git-gui.sh
>> +++ b/git-gui/git-gui.sh
>> @@ -3030,8 +3030,23 @@ unset doc_path doc_url
>>   wm protocol . WM_DELETE_WINDOW do_quit
>>   bind all <$M1B-Key-q> do_quit
>>   bind all <$M1B-Key-Q> do_quit
>> -bind all <$M1B-Key-w> {destroy [winfo toplevel %W]}
>> -bind all <$M1B-Key-W> {destroy [winfo toplevel %W]}
>> +
>> +set m1b_w_script {
>> +    set toplvl_win [winfo toplevel %W]
>> +
>> +    # If we are destroying the main window, we should call do_quit to take
>> +    # care of cleanup before exiting the program.
>> +    if {$toplvl_win eq "."} {
>> +            do_quit
>> +    } else {
>> +            destroy $toplvl_win
>> +    }
>> +}
>> +
>> +bind all <$M1B-Key-w> $m1b_w_script
>> +bind all <$M1B-Key-W> $m1b_w_script
>> +
>> +unset m1b_w_script
>>     set subcommand_args {}
>>   proc usage {} {
>>

Reply via email to