[gimp/pippin/linear-is-the-new-black: 1/10] app: make levels config request linear colors
- From: Øyvind Kolås <ok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp/pippin/linear-is-the-new-black: 1/10] app: make levels config request linear colors
- Date: Mon, 16 Jan 2017 16:49:11 +0000 (UTC)
commit bd034d460a89d34c73b9ac7703417b07682d4c49
Author: Øyvind Kolås <pippin gimp org>
Date: Wed Dec 14 21:31:25 2016 +0100
app: make levels config request linear colors
app/operations/gimplevelsconfig.c | 18 +++++++++++-------
1 files changed, 11 insertions(+), 7 deletions(-)
---
diff --git a/app/operations/gimplevelsconfig.c b/app/operations/gimplevelsconfig.c
index b6c9339..9237741 100644
--- a/app/operations/gimplevelsconfig.c
+++ b/app/operations/gimplevelsconfig.c
@@ -516,27 +516,31 @@ static gdouble
gimp_levels_config_input_from_color (GimpHistogramChannel channel,
const GimpRGB *color)
{
+ float rgba[4];
+ gimp_rgba_get_pixel (color, babl_format ("RGBA float"), rgba);
+
switch (channel)
{
case GIMP_HISTOGRAM_VALUE:
- return MAX (MAX (color->r, color->g), color->b);
+ return MAX (MAX (rgba[0], rgba[1]), rgba[2]);
case GIMP_HISTOGRAM_RED:
- return color->r;
+ return rgba[0];
case GIMP_HISTOGRAM_GREEN:
- return color->g;
+ return rgba[1];
case GIMP_HISTOGRAM_BLUE:
- return color->b;
+ return rgba[2];
case GIMP_HISTOGRAM_ALPHA:
- return color->a;
+ return rgba[3];
case GIMP_HISTOGRAM_RGB:
- return MIN (MIN (color->r, color->g), color->b);
+ return MIN (MIN (rgba[0], rgba[1]), rgba[2]);
- case GIMP_HISTOGRAM_LUMINANCE:
+ case GIMP_HISTOGRAM_LUMINANCE: // XXX: does this macro expect linear or
+ // gamma TRC?
return GIMP_RGB_LUMINANCE (color->r, color->g, color->b);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]