From: Stefan Haller <stefan@haller-berlin.de>
To: Pratyush Yadav <me@yadavpratyush.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 1/1] git-gui: fix colored label backgrounds when using themed widgets
Date: Wed, 2 Dec 2020 09:52:12 +0100 [thread overview]
Message-ID: <c8cbdfa1-f3f3-725a-124d-6f70b96767d1@haller-berlin.de> (raw)
In-Reply-To: <20201201200634.bazwncj7yyp7vksn@yadavpratyush.com>
On 01.12.20 21:06, Pratyush Yadav wrote:
> Hi Stefan,
>
> Thanks for the patch.
>
> On 22/11/20 08:45PM, Stefan Haller wrote:
>> The aqua theme on Mac doesn't support changing the background color for labels
>> and frames [1]. Since the red, green, and yellow backgrounds of the labels for
>> unstaged and staged files and the diff pane are so important design elements of
>> git gui's main window, it's not acceptable for them to have grey backgrounds on
>> Mac.
>
> I unfortunately don't have access to a Mac machine to I can't test this
> patch.
I could send screenshots if that helps.
> Were the colors fine before c02efc1 (git-gui: improve dark mode support,
> 2020-09-26)? From what I understand that patch should not affect the
> colors of the "Staged Changes" or the "Unstaged Changes" parts.
>
> If the colors were fine earlier then we need to figure out why colors
> from the theme are being used even when we hard-code green or red when
> creating those labels.
>
> Can you give it a try on a commit before c02efc1 and see what happens?
No, the colors were wrong on Mac for the past ten years, all the way
back to when ttk widgets were introduced in c80d7be5e1 ("git-gui: use
themed tk widgets with Tk 8.5", 2010-01-26).
It is simply not possible to change the background color of a ttk button
or label on Mac; c02efc1 doesn't have anything to do with this.
-Stefan
>> To work around this, simply use non-themed widgets for all labels on Mac. This
>> is not a big problem because labels don't look extremely different between the
>> themed and non-themed versions. There are subtle differences, but they are not
>> as bad as having the wrong background color.
>
> Agreed. Though I certainly wish we didn't have to do this.
>
>> [1] https://stackoverflow.com/a/6723911
>>
>> Signed-off-by: Stefan Haller <stefan@haller-berlin.de>
>> ---
>> lib/themed.tcl | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/lib/themed.tcl b/lib/themed.tcl
>> index 83e3ac7..02aae90 100644
>> --- a/lib/themed.tcl
>> +++ b/lib/themed.tcl
>> @@ -174,7 +174,7 @@ proc InitEntryFrame {} {
>>
>> proc gold_frame {w args} {
>> global use_ttk
>> - if {$use_ttk} {
>> + if {$use_ttk && ![is_MacOSX]} {
>> eval [linsert $args 0 ttk::frame $w -style Gold.TFrame]
>> } else {
>> eval [linsert $args 0 frame $w -background gold]
>> @@ -183,7 +183,7 @@ proc gold_frame {w args} {
>>
>> proc tlabel {w args} {
>> global use_ttk
>> - if {$use_ttk} {
>> + if {$use_ttk && ![is_MacOSX]} {
>> set cmd [list ttk::label $w -style Color.TLabel]
>> foreach {k v} $args {
>> switch -glob -- $k {
>
next prev parent reply other threads:[~2020-12-02 8:57 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-22 19:45 [PATCH 0/1] git-gui: fix colored label backgrounds on Mac Stefan Haller
2020-11-22 19:45 ` [PATCH 1/1] git-gui: fix colored label backgrounds when using themed widgets Stefan Haller
2020-12-01 20:06 ` Pratyush Yadav
2020-12-02 8:52 ` Stefan Haller [this message]
2020-12-06 13:07 ` Pratyush Yadav
2020-12-08 15:20 ` Stefan Haller
2020-12-17 19:03 ` Pratyush Yadav
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c8cbdfa1-f3f3-725a-124d-6f70b96767d1@haller-berlin.de \
--to=stefan@haller-berlin.de \
--cc=git@vger.kernel.org \
--cc=me@yadavpratyush.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).