diff options
author | Chris Sherlock <chris.sherlock79@gmail.com> | 2019-07-13 20:56:27 +1000 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2019-09-16 11:13:46 +0200 |
commit | 78d225f51404d1a98795541bc9c84f7405502411 (patch) | |
tree | df565f5fe47e78c2f454c9e4247bc423ee596d26 /vcl/source | |
parent | e17c5e1247943300f333c8f0a0f34cebc10738d4 (diff) |
tdf#74702: remove GetOutDevType() from SmTmpDevice
Adds in logic to OutputDevice that takes a font color and the font's
background color - if the font and background is dark then return the
stock white color, if the font and background are bright, then return
the stock black color, otherwise just return the font color.
Also added a unit test to ensure that SmTmpDevice restores font and
test color correctly.
Change-Id: Id805682778d82826c644e7a27017c8d30b1ff5eb
Reviewed-on: https://gerrit.libreoffice.org/75524
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl/source')
-rw-r--r-- | vcl/source/outdev/wallpaper.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/vcl/source/outdev/wallpaper.cxx b/vcl/source/outdev/wallpaper.cxx index 8a64137ed407..ae3687d79f35 100644 --- a/vcl/source/outdev/wallpaper.cxx +++ b/vcl/source/outdev/wallpaper.cxx @@ -24,6 +24,16 @@ #include <vcl/outdev.hxx> #include <vcl/virdev.hxx> +Color OutputDevice::GetReadableFontColor(const Color& rFontColor, const Color& rBgColor) const +{ + if (rBgColor.IsDark() && rFontColor.IsDark()) + return COL_WHITE; + else if (rBgColor.IsBright() && rFontColor.IsBright()) + return COL_BLACK; + else + return rFontColor; +} + Color OutputDevice::GetBackgroundColor() const { return GetBackground().GetColor(); |