From 37f9a29216ef9d2eb82476acca50f70df6d950e4 Mon Sep 17 00:00:00 2001 From: looncraz Date: Mon, 18 Jan 2016 15:30:59 +0000 Subject: [PATCH] Improve Default BButton Appearance Change control border color to 172, 172, 172 and use for default button indicator drawing. People doing an in-place upgrade will need to modify the border color from its previous default manually or by pressing "Default" in the Appearance preflet. This is a one-time annoyance. Signed-off-by: Adrien Destugues Fixes: #12589 --- src/kits/interface/ControlLook.cpp | 13 ++++++------- src/kits/interface/InterfaceDefs.cpp | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/kits/interface/ControlLook.cpp b/src/kits/interface/ControlLook.cpp index 931baf155c..252e400c20 100644 --- a/src/kits/interface/ControlLook.cpp +++ b/src/kits/interface/ControlLook.cpp @@ -2149,18 +2149,17 @@ BControlLook::_DrawButtonFrame(BView* view, BRect& rect, rgb_color edgeShadowColor; // default button frame color - // TODO: B_BLEND_FRAME - float defaultIndicatorTint = 1.2; - if ((flags & B_DISABLED) != 0) - defaultIndicatorTint = (B_NO_TINT + defaultIndicatorTint) / 2; - - rgb_color defaultIndicatorColor = tint_color(base, defaultIndicatorTint); + rgb_color defaultIndicatorColor = ui_color(B_CONTROL_BORDER_COLOR); rgb_color cornerBgColor; + if ((flags & B_DISABLED) != 0) { + defaultIndicatorColor = disable_color(defaultIndicatorColor, + background); + } + drawing_mode oldMode = view->DrawingMode(); if ((flags & B_DEFAULT_BUTTON) != 0) { - defaultIndicatorColor = ui_color(B_CONTROL_HIGHLIGHT_COLOR); cornerBgColor = defaultIndicatorColor; edgeLightColor = _EdgeLightColor(defaultIndicatorColor, contrast * ((flags & B_DISABLED) != 0 ? 0.3 : 0.8), diff --git a/src/kits/interface/InterfaceDefs.cpp b/src/kits/interface/InterfaceDefs.cpp index 97017b31e4..6c8d9802d8 100644 --- a/src/kits/interface/InterfaceDefs.cpp +++ b/src/kits/interface/InterfaceDefs.cpp @@ -86,7 +86,7 @@ static const rgb_color _kDefaultColors[kColorWhichCount] = { {0, 0, 0, 255}, // B_DOCUMENT_TEXT_COLOR {245, 245, 245, 255}, // B_CONTROL_BACKGROUND_COLOR {0, 0, 0, 255}, // B_CONTROL_TEXT_COLOR - {0, 0, 0, 255}, // B_CONTROL_BORDER_COLOR + {172, 172, 172, 255}, // B_CONTROL_BORDER_COLOR {102, 152, 203, 255}, // B_CONTROL_HIGHLIGHT_COLOR {0, 0, 0, 255}, // B_NAVIGATION_PULSE_COLOR {255, 255, 255, 255}, // B_SHINE_COLOR