From d3810c2118652605cf7258a6a7213fa8034e93e1 Mon Sep 17 00:00:00 2001 From: Adrian Robert Date: Wed, 21 Jan 2009 22:28:45 +0000 Subject: [PATCH] * nsimage.m (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color values in onTiger section. * nsterm.m (ns_defined_color): Fix settings of the XColor variable fields: red,green,blue scale to 2-byte, pixel's components to 1-byte. (Bug#1663) --- src/ChangeLog | 8 ++++++-- src/nsimage.m | 3 ++- src/nsterm.m | 10 +++++----- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index c250ead9cc4..90e83f03667 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -18,9 +18,13 @@ (EmacsPrefsController-setPanelFromDefaultValues) New function. (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801) (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused. + (ns_defined_color): Fix settings of the XColor variable fields: + red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663) - * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore DPI. - (Bug#1316) + * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image + DPI. (Bug#1316) + (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color + values in onTiger section. 2009-01-19 Chong Yidong diff --git a/src/nsimage.m b/src/nsimage.m index f99a9d2a03e..b13c12903ad 100644 --- a/src/nsimage.m +++ b/src/nsimage.m @@ -453,7 +453,8 @@ static EmacsImage *ImageList = nil; else if (onTiger) { [bmRep setColor: - [NSColor colorWithCalibratedRed: r green: g blue: b alpha: a] + [NSColor colorWithCalibratedRed: (r/255.0) green: (g/255.0) + blue: (b/255.0) alpha: (a/255.0)] atX: x y: y]; } } diff --git a/src/nsterm.m b/src/nsterm.m index fba0e726e47..826efc4a22a 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -1610,14 +1610,14 @@ ns_defined_color (struct frame *f, char *name, XColor *color_def, int alloc, color_def->pixel = ns_index_color(temp, f); /* [temp retain]; */ [temp getRed: &r green: &g blue: &b alpha: &a]; - color_def->red = r * 256; - color_def->green = g * 256; - color_def->blue = b * 256; + color_def->red = r * 65535; + color_def->green = g * 65535; + color_def->blue = b * 65535; if (!makeIndex) color_def->pixel - = ARGB_TO_ULONG((int)(a*256), - color_def->red, color_def->green, color_def->blue); + = ARGB_TO_ULONG((int)(a*255), + (int)(r*255), (int)(g*255), (int)(b*255)); return 1; } -- 2.39.2