Re: [PATCH 1/1] git-gui: fix colored label backgrounds when using themed widgets

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

 



On 02/12/20 09:52AM, Stefan Haller wrote:
> 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.

Yes, that would be helpful.
 
> > 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.

Ok. Thanks for the clarification. Will apply the patch.
 
> -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@xxxxxxxxxxxxxxxx>
> >> ---
> >>  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 {
> > 

-- 
Regards,
Pratyush Yadav



[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