diff options
author | David Tardon <dtardon@redhat.com> | 2013-06-18 11:55:59 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2013-06-18 11:58:53 +0200 |
commit | 5ef3c40ff0e70704cbc7d846722db9618d01ca53 (patch) | |
tree | edcf493a86e6e2dad3ec693c505f2339cd50dc1f | |
parent | 1c104c449733767e4ce1b4071acea20d400400c8 (diff) |
fdo#65844 use right colors from palette
It is not correct to expect that the palette will always be the same as
default-constructed from VCL. For example, 1bit PICT images use reversed
white and black.
Change-Id: I6b5e7cd19af98202e80f4cff17fddaa3a3f0e3af
(cherry picked from commit 1b3a39bfa10177aed40a4a9a69d0fe1970229422)
Signed-off-by: David Tardon <dtardon@redhat.com>
-rw-r--r-- | vcl/unx/generic/gdi/salgdi2.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/vcl/unx/generic/gdi/salgdi2.cxx b/vcl/unx/generic/gdi/salgdi2.cxx index 0288e0555771..3a54d53f3674 100644 --- a/vcl/unx/generic/gdi/salgdi2.cxx +++ b/vcl/unx/generic/gdi/salgdi2.cxx @@ -471,8 +471,10 @@ void X11SalGraphics::drawBitmap( const SalTwoRect* pPosAry, const SalBitmap& rSa const BitmapPalette& rPalette = pBitmapBuffer->maPalette; if (rPalette.GetEntryCount() == 2) { - aNewVal.foreground = rColMap.GetPixel(ImplColorToSal(rPalette[0])); - aNewVal.background = rColMap.GetPixel(ImplColorToSal(rPalette[1])); + const BitmapColor aBlack( rPalette[rPalette.GetBestIndex( Color( COL_BLACK ) )] ); + const BitmapColor aWhite( rPalette[rPalette.GetBestIndex( Color( COL_WHITE ) )] ); + aNewVal.foreground = rColMap.GetPixel(ImplColorToSal(aWhite)); + aNewVal.background = rColMap.GetPixel(ImplColorToSal(aBlack)); } } |