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:57:32 +0200 |
commit | 1b3a39bfa10177aed40a4a9a69d0fe1970229422 (patch) | |
tree | b91e9aa5d77979d69cced7ff040057af3f22bbaa /vcl/unx | |
parent | 33231f418f5ec0041a6d6377bf4028ca6028bdd4 (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
Diffstat (limited to 'vcl/unx')
-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 6ec682954a6f..5c53635c6e45 100644 --- a/vcl/unx/generic/gdi/salgdi2.cxx +++ b/vcl/unx/generic/gdi/salgdi2.cxx @@ -471,8 +471,10 @@ void X11SalGraphics::drawBitmap( const SalTwoRect& rPosAry, 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)); } } |