git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] git-gui: use gray selection background for inactive text widgets

From
serg.partizan@gmail.com <serg.partizan@gmail.com>
Date
Nov 23, 2020, 20:08 UTC
Message-ID
<HLM9KQ.QZTOWNY8EICB1@gmail.com>
In-Reply-To
<23d6eb6c-4c7b-b9dd-d0df-fe0feaa0dc17@haller-berlin.de>

On Mon, Nov 23, 2020 at 20:03, Stefan Haller <stefan@haller-berlin.de> wrote:

Show 17 quoted lines
>>>  +        bind $i <FocusIn> {
>>>  +            foreach tag [list in_diff in_sel] {
>>>  +                %W tag conf $tag \
>>>  +                    -background $color::select_bg \
>>>  +                    -foreground $color::select_fg
>>>  +            }
>>>  +        }
>>>  +        bind $i <FocusOut> {
>>>  +            foreach tag [list in_diff in_sel] {
>> 
>>  This two `foreach` can be combined into one?
> 
> I don't see how; any concrete suggestions? But I have other ideas how 
> to
> simplify the code (by using one function set_selection_colors that 
> takes
> a has_focus bool and is used for both bindings).

I tried to do this, and now i understand why my suggestion was wrong, i was looking at this as "cycle inside cycle", but it's actually "cycle inside event handler".

Show 9 quoted lines
> 
>>>  +                %W tag conf $tag \
>> 
>>  And this `%W`, probably should be `$i`?
> 
> No, $i wouldn't work because we're inside curly braces, so $i wouldn't
> get expanded. It would be possible to work around this by using ""
> instead of {}, but why? Using %W seems to be the idiomatic way in
> bindings, we do this everywhere else too.
Oh, now i see it's used in the same way in other places!
 > %W  The path name of the window to which the event was reported (the 
window field from the event).
Now I understand it.
Previous: Stefan HallerNext: Stefan Haller
Message 16 of 37 in “git-gui: Basic dark mode support”
  1. git-gui: Basic dark mode supportSerg Tereshchenko, Aug 24, 2020
  2. Matthias AßhauerAug 25, 2020
  3. Pratyush YadavSep 22, 2020
  4. git-gui: Basic dark mode supportSerg Tereshchenko, Sep 26, 2020
  5. Pratyush YadavOct 7, 2020
  6. Serg TereshchenkoOct 8, 2020
  7. Pratyush YadavOct 8, 2020
  8. Stefan HallerNov 21, 2020
  9. serg.partizan@gmail.comNov 22, 2020
  10. git-gui: Fix selected text colorsSerg Tereshchenko, Nov 22, 2020
  11. Stefan HallerNov 22, 2020
  12. serg.partizan@gmail.comNov 22, 2020
  13. git-gui: use gray selection background for inactive text widgetsStefan Haller, Nov 23, 2020
  14. serg.partizan@gmail.comNov 23, 2020
  15. Stefan HallerNov 23, 2020
  16. serg.partizan@gmail.comNov 23, 2020
  17. Stefan HallerNov 29, 2020
  18. serg.partizan@gmail.comNov 30, 2020
  19. Pratyush YadavNov 30, 2020
  20. Stefan HallerNov 30, 2020
  21. git-gui: keep showing selection when diff view gets deactivated on MacStefan Haller, Nov 30, 2020
  22. Stefan HallerNov 23, 2020
  23. serg.partizan@gmail.comNov 23, 2020
  24. Stefan HallerNov 24, 2020
  25. git-gui: use gray background for inactive text widgetsStefan Haller, Nov 24, 2020
  26. Pratyush YadavDec 17, 2020
  27. Stefan HallerDec 17, 2020
  28. Pratyush YadavDec 18, 2020
  29. Stefan HallerDec 18, 2020
  30. git-gui: use gray background for inactive text widgetsStefan Haller, Dec 18, 2020
  31. Pratyush YadavDec 18, 2020
  32. Pratyush YadavDec 18, 2020
  33. Pratyush YadavDec 17, 2020
  34. Pratyush YadavOct 7, 2020
  35. Serg TereshchenkoOct 8, 2020
  36. Pratyush YadavOct 8, 2020
  37. Serg TereshchenkoOct 8, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.