diff options
-rw-r--r-- | vcl/unx/gtk/salnativewidgets-gtk.cxx | 14 | ||||
-rw-r--r-- | vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 14 |
2 files changed, 12 insertions, 16 deletions
diff --git a/vcl/unx/gtk/salnativewidgets-gtk.cxx b/vcl/unx/gtk/salnativewidgets-gtk.cxx index 5e07ade6ea93..e8e8cdd81ef7 100644 --- a/vcl/unx/gtk/salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk/salnativewidgets-gtk.cxx @@ -3943,14 +3943,12 @@ void GtkSalGraphics::updateSettings( AllSettings& rSettings ) Color aDarkShadowColor = getColor( pStyle->fg[GTK_STATE_INSENSITIVE] ); aStyleSet.SetDarkShadowColor( aDarkShadowColor ); - int nRedDiff = aBackFieldColor.GetRed() - aDarkShadowColor.GetRed(); - int nGreenDiff = aBackFieldColor.GetGreen() - aDarkShadowColor.GetGreen(); - int nBlueDiff = aBackFieldColor.GetBlue() - aDarkShadowColor.GetBlue(); - - Color aShadowColor(aBackFieldColor.GetRed() + nRedDiff / 2, - aBackFieldColor.GetGreen() + nGreenDiff / 2, - aBackFieldColor.GetBlue() + nBlueDiff / 2); - aStyleSet.SetShadowColor( aShadowColor ); + ::Color aShadowColor(aBackColor); + if (aDarkShadowColor.GetLuminance() > aBackColor.GetLuminance()) + aShadowColor.IncreaseLuminance(64); + else + aShadowColor.DecreaseLuminance(64); + aStyleSet.SetShadowColor(aShadowColor); // highlighting colors Color aHighlightColor = getColor( pStyle->base[GTK_STATE_SELECTED] ); diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx index 48edf22f9d72..e036c207489f 100644 --- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx @@ -2585,14 +2585,12 @@ void GtkSalGraphics::updateSettings( AllSettings& rSettings ) ::Color aDarkShadowColor = getColor( color ); aStyleSet.SetDarkShadowColor( aDarkShadowColor ); - int nRedDiff = aBackFieldColor.GetRed() - aDarkShadowColor.GetRed(); - int nGreenDiff = aBackFieldColor.GetGreen() - aDarkShadowColor.GetGreen(); - int nBlueDiff = aBackFieldColor.GetBlue() - aDarkShadowColor.GetBlue(); - - ::Color aShadowColor(aBackFieldColor.GetRed() + nRedDiff / 2, - aBackFieldColor.GetGreen() + nGreenDiff / 2, - aBackFieldColor.GetBlue() + nBlueDiff / 2); - aStyleSet.SetShadowColor( aShadowColor ); + ::Color aShadowColor(aBackColor); + if (aDarkShadowColor.GetLuminance() > aBackColor.GetLuminance()) + aShadowColor.IncreaseLuminance(64); + else + aShadowColor.DecreaseLuminance(64); + aStyleSet.SetShadowColor(aShadowColor); g_object_unref( pCStyle ); |