Re: [PATCH] git-gui: Call do_quit before destroying the main window

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Pratyush Yadav <me@xxxxxxxxxxxxxxxxx> 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 <me@xxxxxxxxxxxxxxxxx>
>> ---
>>   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 {} {
>>



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux