After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 676817 - universal access: Allow to control color-related shader options in the shell
universal access: Allow to control color-related shader options in the shell
Status: RESOLVED FIXED
Product: gnome-control-center
Classification: Core
Component: Universal Access
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Control-Center Maintainers
Control-Center Maintainers
Depends on: 676782 676814
Blocks:
 
 
Reported: 2012-05-25 13:31 UTC by Matthias Clasen
Modified: 2012-08-16 09:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Test UI for demo'ing the lightness, brightness, and contrast effects. (63.64 KB, text/plain)
2012-07-24 14:39 UTC, Joseph Scheuhammer
  Details
Modified gnome-control-center zoom-options.ui that includes color effects (60.53 KB, text/plain)
2012-07-24 20:01 UTC, Joseph Scheuhammer
  Details
Screen shot of the dialog specified in attachment 219601 (63.04 KB, image/png)
2012-07-24 20:04 UTC, Joseph Scheuhammer
  Details
Patch that implements UI described in comment 5 (41.43 KB, patch)
2012-07-27 20:07 UTC, Joseph Scheuhammer
reviewed Details | Review
zoom options mockup (35.91 KB, image/png)
2012-08-15 09:54 UTC, Allan Day
  Details
Split the zoom dialog using tabs and cleaning (113.65 KB, patch)
2012-08-15 16:27 UTC, Alejandro Piñeiro Iglesias (IRC: infapi00)
reviewed Details | Review
Dialog after patch on comment 14, first tab (237.26 KB, image/jpeg)
2012-08-15 16:27 UTC, Alejandro Piñeiro Iglesias (IRC: infapi00)
  Details
Dialog after patch on comment 14, last tab (192.73 KB, image/jpeg)
2012-08-15 16:28 UTC, Alejandro Piñeiro Iglesias (IRC: infapi00)
  Details
universal-access: Add zoom shader options (41.38 KB, patch)
2012-08-15 18:06 UTC, Bastien Nocera
committed Details | Review
universal-access: Split the zoom dialog options (113.63 KB, patch)
2012-08-15 18:06 UTC, Bastien Nocera
committed Details | Review
universal-access: Fix deprecation warnings (1.96 KB, patch)
2012-08-15 18:08 UTC, Bastien Nocera
committed Details | Review

Description Matthias Clasen 2012-05-25 13:31:08 UTC
Recently, support for contrast, lightness and brightness control was added to the shader effects used for the magnifier in gnome-shell. These can be controlled with gsettings in org.gnome.desktop.a11y.magnifier:

brightness-blue
brightness-green
brightness-red

contrast-blue
contrast-green
contrast-red

invert-lightness

Before exposing these in the panel, some work needs to happen in gnome-shell to make these effects available independent of the zoom settings. It is also possible that we may add support for grayscale / color saturation control as well. See blocking bugs.
Comment 1 Matthias Clasen 2012-05-25 13:32:05 UTC
And of course, this needs some design input too.
Comment 2 Matthias Clasen 2012-07-16 02:29:05 UTC
OS X ui for this:
http://etc.usf.edu/techease/wp-content/uploads/2009/12/display2.png
Comment 3 Joseph Scheuhammer 2012-07-24 14:39:46 UTC
Created attachment 219587 [details]
Test UI for demo'ing the lightness, brightness, and contrast effects.

API requested I attach the dialog shown in the screen shots on the "Lightness, Brightness, and Contrast" 3.5 features page (https://live.gnome.org/ThreePointFive/Features/LightnessBrightnessContrastEffects).  I created this dialog for testing and demonstrating the colour effects.  It wasn't intended as polished end-user UI, but it could start the ball rolling.

The dialog has three panels named "General", "Brightness and Contrast", and "Crosshairs".  There is a checkbox near the bottom of the General tab panel labelled "Invert lightness" to control the inversion effect.  The "Brightness and Contrast" panel contains four spinners each for controlling brightness and contrast, respectively.  The top-most spinner in each group is for an overall brightness/contrast effect.  The remaining three allow for changing each individual red, green, and blue channel, for low vision users who needs to tint the screen.

As I noted on https://bugzilla.gnome.org/show_bug.cgi?id=676814#c6, a better first step is:
> ... adding a set of controls to the existing "Zoom Options" Panel:
> - a toggle for inversion.
> - a slider for brightness
> - a slider for contrast
> - a slider for grey scale.

I'll try to put this together today.
Comment 4 Matthias Clasen 2012-07-24 14:44:34 UTC
Thanks, I'll make sure to get designer input on this at guadec
Comment 5 Joseph Scheuhammer 2012-07-24 20:01:26 UTC
Created attachment 219601 [details]
Modified gnome-control-center zoom-options.ui that includes color effects

(In reply to comment #3)
> ...
> As I noted on https://bugzilla.gnome.org/show_bug.cgi?id=676814#c6, a better
> first step is:
> > ... adding a set of controls to the existing "Zoom Options" Panel:
> > - a toggle for inversion.
> > - a slider for brightness
> > - a slider for contrast
> > - a slider for grey scale.
> 
> I'll try to put this together today.

Here it is.  Screen shot coming up.
Comment 6 Joseph Scheuhammer 2012-07-24 20:04:55 UTC
Created attachment 219602 [details]
Screen shot of the dialog specified in attachment 219601 [details]

Screen shot showing attachment 219601 [details] (https://bugzilla.gnome.org/attachment.cgi?id=219601&action=edit).
Comment 7 Joseph Scheuhammer 2012-07-24 20:06:02 UTC
(In reply to comment #4)
> Thanks, I'll make sure to get designer input on this at guadec

Thanks.  Awesome.
Comment 8 Joseph Scheuhammer 2012-07-27 20:07:23 UTC
Created attachment 219754 [details] [review]
Patch that implements UI described in comment 5

UI and code that implements the addition of a "Color effects" section to the zoom options dialog as described in comment 5, and shown by the screen shot in attachment 219602 [details].

Note that the gray scale slider does not *appear* to work, but it does.  That's because of  a bug in the way the grayscale effect is implemented in gnome-shell (see bugzilla 680541).
Comment 9 Matthias Clasen 2012-08-07 13:41:43 UTC
Some initial impressions:

- Unfortunately, this makes the dialog grow beyond the height of my monitor.

We have to think hard about limiting the amount of options here. Does 'extends outside monitor really have to be an option ? (could just always turn that on). Can we turn the crosshair length in a combo box (with those choices that are currently markers), and put it in a single line together with the color ?

- The brightness and contrast sliders should have a midpoint marker

- The labels shouldn't be bold

- I think that 'White on black' would work better as a checkbox, maybe ?

- It would be handy to duplicate the Zoom on/off switch inside this dialog, so one doesn't have to close the dialog to turn the zoom on and try things out.
Comment 10 Allan Day 2012-08-07 14:42:22 UTC
Will this be implemented independently of the magnifier, as was suggested in the original bug report?
Comment 11 Matthias Clasen 2012-08-08 19:35:47 UTC
Allan, see the discussion in bug 676814
Comment 12 Alejandro Piñeiro Iglesias (IRC: infapi00) 2012-08-13 09:35:53 UTC
(In reply to comment #9)
> Some initial impressions:
> 
> - Unfortunately, this makes the dialog grow beyond the height of my monitor.

Yes, it became somewhat long. And taking into account any future addition, what about some tabs?

> We have to think hard about limiting the amount of options here. Does 'extends
> outside monitor really have to be an option ? (could just always turn that on).

Well, and why not off? What I mean is that for example, when I test that feature I usually don't need that on. Not sure what it is the preferred choice here.

> Can we turn the crosshair length in a combo box (with those choices that are
> currently markers), and put it in a single line together with the color ?
> 
> - The brightness and contrast sliders should have a midpoint marker

Agree.

> - The labels shouldn't be bold
> 
> - I think that 'White on black' would work better as a checkbox, maybe ?

From here:
https://live.gnome.org/GnomeOS/UX/Guidelines/SwitchWidget

"Appropriate usage
.... or when they affect the operation of the system in a significant way"

When activated all the colors of the system are affected, so I think that sentence applies here.

> - It would be handy to duplicate the Zoom on/off switch inside this dialog, so
> one doesn't have to close the dialog to turn the zoom on and try things out.

Well, I guess that the usual process is activate the zoom, and if you are not happy, open the dialog options to tweak it. Anyway, not against to this addition.
Comment 13 Allan Day 2012-08-15 09:54:26 UTC
Created attachment 221244 [details]
zoom options mockup

Here's a mockup for the color options. I'm suggesting that we use tabs here, since there's a lot of controls involved to show them all at once. I've also added the zoom switch that Matthias suggested - this seems like a good idea.
Comment 14 Alejandro Piñeiro Iglesias (IRC: infapi00) 2012-08-15 16:27:10 UTC
Created attachment 221282 [details] [review]
Split the zoom dialog using tabs and cleaning

This patch splits the zoom dialog options as shown in comment 13. This patch is additional to the one that Joseph uploaded on comment 8 (it doesn't replace it)

The only thing that this patch doesn't do with relation with the mockup is changing the justification of the labels to the right. Allan Day mentioned it, and it is true that some of the panels of the control center use that justification. But others not. And the universal access settings are not using it. If I change it it would feel somewhat inconsistent.

In my opinion changing the justification of the labels to the right needs to be a global ui review of all the elements of gnome-control-center, and for the moment it is better to keep the zoom dialog in this way.

(I will attach screenshots soon)
Comment 15 Alejandro Piñeiro Iglesias (IRC: infapi00) 2012-08-15 16:27:50 UTC
Created attachment 221283 [details]
Dialog after patch on comment 14, first tab
Comment 16 Alejandro Piñeiro Iglesias (IRC: infapi00) 2012-08-15 16:28:29 UTC
Created attachment 221284 [details]
Dialog after patch on comment 14, last tab
Comment 17 Allan Day 2012-08-15 16:33:49 UTC
(In reply to comment #16)
> Created an attachment (id=221284) [details]
> Dialog after patch on comment 14, last tab

Looks good. There's an alignment issue with the color slider: it is a different length to the others. Also, the stops below the sliders result in the a vertical misalignment with the labels...

One thing that I should have mentioned previously - in the color panel, I added the stops to indicate the default position of each slider. I hope that that makes sense.
Comment 18 Bastien Nocera 2012-08-15 17:53:17 UTC
Review of attachment 221282 [details] [review]:

Rest looks fine.

::: panels/universal-access/zoom-options.c
@@ +470,3 @@
     }
 
+  if (priv->application_settings)

g_clear_object()
Comment 19 Bastien Nocera 2012-08-15 18:00:25 UTC
Review of attachment 219754 [details] [review]:

Looks fine.
Comment 20 Bastien Nocera 2012-08-15 18:06:10 UTC
Created attachment 221298 [details] [review]
universal-access: Add zoom shader options

Add 'Color effects' section to zoom options dialogue:
- a toggle for inversion (White on black)
- a slider for brightness
- a slider for contrast
- a slider for grey scale
Comment 21 Bastien Nocera 2012-08-15 18:06:22 UTC
Created attachment 221299 [details] [review]
universal-access: Split the zoom dialog options

Split dialogue into 3 tabs:
  * Magnifier
  * Crosshair
  * Color Effects
and add a global zoom switch for easy access.
Comment 22 Bastien Nocera 2012-08-15 18:08:12 UTC
Created attachment 221300 [details] [review]
universal-access: Fix deprecation warnings

Related to GtkColorButton
Comment 23 Bastien Nocera 2012-08-15 18:09:26 UTC
All this looks good to me, but I haven't been able to test the actual settings, as I still have an old gnome-shell here. If it's functional, I can push those patches tomorrow.
Comment 24 Alejandro Piñeiro Iglesias (IRC: infapi00) 2012-08-16 07:46:04 UTC
(In reply to comment #23)
> All this looks good to me, but I haven't been able to test the actual settings,
> as I still have an old gnome-shell here. If it's functional, I can push those
> patches tomorrow.

Just tested the last three patches. Works for me.
Comment 25 Bastien Nocera 2012-08-16 09:47:03 UTC
Attachment 221298 [details] pushed as 2d6161d - universal-access: Add zoom shader options
Attachment 221299 [details] pushed as 131a5ce - universal-access: Split the zoom dialog options
Attachment 221300 [details] pushed as b106468 - universal-access: Fix deprecation warnings