Subject: Re: [PATCH] git-gui: use gray selection background for inactivetext widgets

From: [email-masked]
Date: Mon, 30 Nov 2020 15:41:20 +0200

On Sun, Nov 29, 2020 at 18:40, Stefan Haller <[email-masked]> 
wrote:
> After spending quite a while single-stepping through lots of Tk code, 
> I
> found the reason. On Mac, disabled text widgets simply don't draw the
> selection background. [1]
> 
> I can see three options for solving this:
> 
> 1) Don't use "state focus" and "state !focus" on the text widgets, but
>    instead set the selection color manually using "text conf sel
>    -background". Disadvantage: have to calculate the disabled color
>    using a heuristic like I did for the file lists in my v2 patch.
> 
> 2) Don't use "configure -state disabled" to make the diff text widget
>    read-only; instead, use one of the other methods from [2].
>    Disadvantage: quite a big change, and seems complex to me.
> 
> 3) Enable the the diff widget when it loses focus, and disable it 
> again
>    when it gets focus. I tried this in a quick prototype, and it works
>    very well. It just *feels* wrong to enable a read-only text widget
>    while it is unfocused; but I couldn't find any situation where it
>    would behave wrong, because as soon as you try to interact with it,
>    the first thing that happens is that it gets disabled again.
> 
> I tend towards option 3, because it's reasonably simple and works. 
> I'll
> work on a patch tomorrow unless anybody has objections.
> 

I don't like any of this options, as it makes code complicated. I 
personally would prefer to not implement this feature at all, but 
that's just me.

Maybe Pratyush can say something reasonable about this, as maintainer.

I propose to wait a week or two for other opinions, before starting to 
write a patch.