emacs-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Re: About the :distant-foreground face attribute


From: Jan D.
Subject: Re: [PATCH] Re: About the :distant-foreground face attribute
Date: Tue, 14 Jan 2014 08:47:53 +0100
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:17.0) Gecko/20130328 Thunderbird/17.0.5

Hello.

Your mailer does not quote replies properly, which is distracting. Can you fix that?

Daniel Colascione skrev 2014-01-13 22:36:
On 01/13/2014 01:29 PM, Jan Djärv wrote:
13 jan 2014 kl. 19:41 skrev Daniel Colascione <address@hidden>:

On 01/13/2014 08:33 AM, Jan Djärv wrote:
13 jan 2014 kl. 14:13 skrev Daniel Colascione <address@hidden>:
The patch uses the CIE L*A*B colorspace algorithm by default.

Do not change the defaults please. Reinstate the
*_selection_fg_color.
They are system defined and should be honored.

There are two sane defaults: the 24.3 behavior, where we always use
the system selection foreground and background, and my proposed
behavior, where we use the fontified foreground and automatically
adjust it so that it's legible. The current behavior is worse because
it uses the system selection foreground only sometimes and doesn't
preserve theme hues when possible.

What theme hues? The default theme is not really a theme as
selection
colors are taken from system settings. And this is correct IMHO, any
application that doesn't do so by default (i.e. no user configuration
has been set in the application) is seriously broken.

Yes, but font-lock colors are specified with explicit colors (even in
the default "theme"), and we want to preserve these even in the presence
of a selection. We are *already* not honoring the system-specified
foreground selection color. At the same time, we want to make sure that
highlighted text is legible against a background of whatever the system
selection color happens to be. The best way to do that is to
automatically shift the foreground colors in value, but not hue, so that
they remain legible while being recognizably the same color.

Given the use case at hand, we know for a fact that the background is the region background, so I don't understand why a calculated foreground is needed. Just pick one that matches the background. There might be other use cases where a calculated foreground makes sense, but my imagination fails me here.

I would also support a scheme where, by default, 'region' sets
foreground *and* background colors to the system selection colors and
other faces don't show through. But we didn't decide to go in that
direction.

FWIW, here Eclipse, XCode and Visual Studio all shows the (equivalent of) foreground color from font lock face and background from region when selecting text with the mouse, so it is not as Eamcs is breaking new ground here.


If you talk about other themes, they can set :distant-foreground to
a
real color of their choosing and not rely on some automatically
generated one which most probably don't fit the theme anyway.
Automatically generated colors are a crutch which should be avoided if
possible, certainly not recommended.

There's no way that themes can take into account all the possible colors
users and packages might use. Automatic contrast adjustment can do that.

Again, I really don't see this use case.  Do you have one?


If you want the :distant-foreground behavior, it can be accommodated in
this patch. This patch also permits other schemes that some users might
find more useful.

I know that, this is just about defaults.

We should push policy to user customization when
possible instead of hardcoding policy in the logic of face attributes.

I don't think we do that, users can still customize faces as they see fit.

        Jan D.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]