Re: [PATCH] git-gui: use gray selection background for inactive text widgets
- From
serg.partizan@gmail.com <serg.partizan@gmail.com>
- Date
- Nov 30, 2020, 13:41 UTC
- Message-ID
- <WC3MKQ.KLJ4EJGGRQYY2@gmail.com>
- In-Reply-To
- <1a42781d-0e4c-6478-f26d-5eccbd9c6205@haller-berlin.de>
On Sun, Nov 29, 2020 at 18:40, Stefan Haller <stefan@haller-berlin.de> wrote:
Show 28 quoted lines
> 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.