sc/source/filter/excel/xlstyle.cxx |   20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

New commits:
commit 64fed0c4fde695bb7978390d2e0a303dc6d53fe7
Author: Noel Power <noel.po...@suse.com>
Date:   Tue May 7 16:41:27 2013 +0100

    fix for fdo#51300
    
    Hopefully a better choice for defaults will minimise the chance of a bad 
colour
    combination for notetext and notebackground colours when one colour ( more 
than
    likely the notetext colour ) is gleaned from some default ( e.g. like a 
system
     tooltip colour ). We change the choice from system helptext ( fg & bg ) 
colours
    and use Libreoffice default font and default note background colours 
instead.
    The rationale here being that even in the normal scenario it seems with 
modern
    excel documents the note background colour is a 'real' colour and not an 
index
    ( therefore the colour selection from some predefined colour doesn't happen 
)
    But the note text colour is generally a colour index ( therefore a colour is
    selected from defaults ). In say gnome3 the default tooltip colour is now 
white
     and a really bad contrast to the normal background colour for a note. I 
changed
    the code here to use the colours from libreoffice given that the default 
colours
    more or less match Excel default colours ( which will be by far the most
    frequently ) used combination
    
    Change-Id: I2ae38a44e0cbf201beb3b7d18a89f5ebdd644f8c

diff --git a/sc/source/filter/excel/xlstyle.cxx 
b/sc/source/filter/excel/xlstyle.cxx
index a6a39ed..e2b3f18 100644
--- a/sc/source/filter/excel/xlstyle.cxx
+++ b/sc/source/filter/excel/xlstyle.cxx
@@ -27,11 +27,11 @@
 #include <vcl/font.hxx>
 #include <sal/macros.h>
 #include <rtl/tencinfo.h>
+#include <svtools/colorcfg.hxx>
 #include <toolkit/unohlp.hxx>
 #include <editeng/svxfont.hxx>
 #include "global.hxx"
 #include "xlroot.hxx"
-
 // Color data =================================================================
 
 /** Standard EGA colors, bright. */
@@ -94,8 +94,22 @@ XclDefaultPalette::XclDefaultPalette( const XclRoot& rRoot ) 
:
     mnWindowText = rSett.GetWindowTextColor().GetColor();
     mnWindowBack = rSett.GetWindowColor().GetColor();
     mnFaceColor = rSett.GetFaceColor().GetColor();
-    mnNoteText = rSett.GetHelpTextColor().GetColor();
-    mnNoteBack = rSett.GetHelpColor().GetColor();
+    // Don't use the system HelpBack and HelpText colours as it causes problems
+    // with modern gnome. This is because mnNoteText and mnNoteBack are used
+    // when colour indices ( instead of real colours ) are specified.
+    // Note: That this it is not an unusual scenario that we get the Note
+    // background specified as a real colour and the text specified as a
+    // colour index. That means the text colour would be picked from
+    // the system where the note background would be picked from a real colour.
+    // Previously the the note text colour was picked from the system tooltip
+    // text colour, on modern gnome(e.g. 3) that tends to be 'white' with the
+    // default theme.
+    // Using the the Libreoffice defaults ( instead of system specific colours
+    // ) lessens the chance of the one colour being an unsuitable combination
+    // because by default the note text is black and the note background is
+    // a light yellow colour ( very similar to Excel's normal defaults )
+    mnNoteText =  svtools::ColorConfig::GetDefaultColor( svtools::FONTCOLOR 
).GetColor();
+    mnNoteBack =  svtools::ColorConfig::GetDefaultColor( 
svtools::CALCNOTESBACKGROUND ).GetColor();
 
     // default colors
     switch( rRoot.GetBiff() )
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to