Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(151)

Unified Diff: ash/frame/default_header_painter.cc

Issue 1505223004: Do not use assets for Ash window control button backgrounds (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: WIP for pkasting and estade feedback Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ash/frame/default_header_painter.cc
diff --git a/ash/frame/default_header_painter.cc b/ash/frame/default_header_painter.cc
index 62a8465748b729fdcc2a512936fdaf31200aa6c4..68f4d1140c0fbb67e2cf7fdefdbd7b4e3f8fb984 100644
--- a/ash/frame/default_header_painter.cc
+++ b/ash/frame/default_header_painter.cc
@@ -31,18 +31,27 @@ namespace {
// Color for the window title text.
const SkColor kTitleTextColor = SkColorSetRGB(40, 40, 40);
+
// Color of the active window header/content separator line.
const SkColor kHeaderContentSeparatorColor = SkColorSetRGB(150, 150, 152);
+
// Color of the inactive window header/content separator line.
const SkColor kHeaderContentSeparatorInactiveColor =
SkColorSetRGB(180, 180, 182);
+
// The default color of the frame.
const SkColor kDefaultFrameColor = SkColorSetRGB(242, 242, 242);
+
// Duration of crossfade animation for activating and deactivating frame.
const int kActivationCrossfadeDurationMs = 200;
+
// Luminance below which to use white caption buttons.
const int kMaxLuminanceForLightButtons = 125;
+// The dimensions of the control buttons used in the header.
+const int kButtonWidth = 32;
+const int kButtonHeight = 33;
tdanderson 2015/12/17 18:00:54 Peter, I'd like to not have these hard-coded here
Peter Kasting 2015/12/17 20:56:08 I would create a separate set of layout constants
tdanderson 2015/12/18 17:42:53 Done.
+
// Tiles an image into an area, rounding the top corners.
void TileRoundRect(gfx::Canvas* canvas,
const SkPaint& paint,
@@ -101,6 +110,8 @@ void DefaultHeaderPainter::Init(
frame_ = frame;
view_ = header_view;
caption_button_container_ = caption_button_container;
+ caption_button_container_->SetButtonSize(
+ gfx::Size(kButtonWidth, kButtonHeight));
tdanderson 2015/12/17 18:00:54 Peter, WDYT about adding a GetLayoutSize() to the
Peter Kasting 2015/12/17 20:56:08 Seems fine to me.
tdanderson 2015/12/18 17:42:53 Acknowledged.
UpdateAllButtonImages();
}
@@ -293,35 +304,27 @@ bool DefaultHeaderPainter::ShouldUseLightImages() {
void DefaultHeaderPainter::UpdateAllButtonImages() {
bool use_light_images = ShouldUseLightImages();
- caption_button_container_->SetButtonImages(
+ caption_button_container_->SetButtonImage(
CAPTION_BUTTON_ICON_MINIMIZE,
use_light_images ? IDR_AURA_WINDOW_CONTROL_ICON_MINIMIZE_WHITE
- : IDR_AURA_WINDOW_CONTROL_ICON_MINIMIZE,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_H,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_P);
+ : IDR_AURA_WINDOW_CONTROL_ICON_MINIMIZE);
UpdateSizeButtonImages(use_light_images);
- caption_button_container_->SetButtonImages(
- CAPTION_BUTTON_ICON_CLOSE,
- use_light_images ? IDR_AURA_WINDOW_CONTROL_ICON_CLOSE_WHITE
- : IDR_AURA_WINDOW_CONTROL_ICON_CLOSE,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_H,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_P);
+ caption_button_container_->SetButtonImage(
+ CAPTION_BUTTON_ICON_CLOSE, use_light_images
+ ? IDR_AURA_WINDOW_CONTROL_ICON_CLOSE_WHITE
tdanderson 2015/12/17 18:00:54 Evan, if this CL landed as-is, am I leaving things
Evan Stade 2015/12/17 21:52:37 I can't see how this gets us any farther away from
tdanderson 2015/12/18 17:42:53 Acknowledged.
+ : IDR_AURA_WINDOW_CONTROL_ICON_CLOSE);
- caption_button_container_->SetButtonImages(
+ caption_button_container_->SetButtonImage(
CAPTION_BUTTON_ICON_LEFT_SNAPPED,
use_light_images ? IDR_AURA_WINDOW_CONTROL_ICON_LEFT_SNAPPED_WHITE
- : IDR_AURA_WINDOW_CONTROL_ICON_LEFT_SNAPPED,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_H,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_P);
+ : IDR_AURA_WINDOW_CONTROL_ICON_LEFT_SNAPPED);
- caption_button_container_->SetButtonImages(
+ caption_button_container_->SetButtonImage(
CAPTION_BUTTON_ICON_RIGHT_SNAPPED,
use_light_images ? IDR_AURA_WINDOW_CONTROL_ICON_RIGHT_SNAPPED_WHITE
- : IDR_AURA_WINDOW_CONTROL_ICON_RIGHT_SNAPPED,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_H,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_P);
+ : IDR_AURA_WINDOW_CONTROL_ICON_RIGHT_SNAPPED);
}
void DefaultHeaderPainter::UpdateSizeButtonImages(bool use_light_images) {
@@ -333,11 +336,8 @@ void DefaultHeaderPainter::UpdateSizeButtonImages(bool use_light_images) {
icon_id = use_light_images ? IDR_AURA_WINDOW_CONTROL_ICON_MAXIMIZE_WHITE
: IDR_AURA_WINDOW_CONTROL_ICON_MAXIMIZE;
}
- caption_button_container_->SetButtonImages(
- CAPTION_BUTTON_ICON_MAXIMIZE_RESTORE,
- icon_id,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_H,
- IDR_AURA_WINDOW_CONTROL_BACKGROUND_P);
+ caption_button_container_->SetButtonImage(
+ CAPTION_BUTTON_ICON_MAXIMIZE_RESTORE, icon_id);
}
gfx::Rect DefaultHeaderPainter::GetLocalBounds() const {

Powered by Google App Engine
This is Rietveld 408576698