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

Side by Side Diff: ash/common/system/tray/tray_popup_header_button.cc

Issue 2264383002: More closely align palette to spec. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@tool-magnifier
Patch Set: Initial upload Created 4 years, 4 months 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ash/common/system/tray/tray_popup_header_button.h" 5 #include "ash/common/system/tray/tray_popup_header_button.h"
6 6
7 #include "ash/common/ash_constants.h" 7 #include "ash/common/ash_constants.h"
8 #include "ash/common/system/tray/tray_constants.h" 8 #include "ash/common/system/tray/tray_constants.h"
9 #include "ui/base/resource/resource_bundle.h" 9 #include "ui/base/resource/resource_bundle.h"
10 #include "ui/views/background.h" 10 #include "ui/views/background.h"
11 #include "ui/views/painter.h" 11 #include "ui/views/painter.h"
12 12
13 namespace ash { 13 namespace ash {
14 14
15 namespace {
16
17 const gfx::ImageSkia* GetImageForResourceId(int resource_id) {
18 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
19 return bundle.GetImageNamed(resource_id).ToImageSkia();
20 }
21
22 } // namespace
23
15 // static 24 // static
16 const char TrayPopupHeaderButton::kViewClassName[] = 25 const char TrayPopupHeaderButton::kViewClassName[] =
17 "tray/TrayPopupHeaderButton"; 26 "tray/TrayPopupHeaderButton";
18 27
19 TrayPopupHeaderButton::TrayPopupHeaderButton(views::ButtonListener* listener, 28 TrayPopupHeaderButton::TrayPopupHeaderButton(views::ButtonListener* listener,
20 int icon_resource_id, 29 const gfx::ImageSkia& icon,
21 int accessible_name_id) 30 int accessible_name_id)
22 : views::ToggleImageButton(listener) { 31 : views::ToggleImageButton(listener) {
23 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance(); 32 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
24 SetImage(views::Button::STATE_NORMAL, 33 SetImage(views::Button::STATE_NORMAL, &icon);
25 bundle.GetImageNamed(icon_resource_id).ToImageSkia());
26 SetImageAlignment(views::ImageButton::ALIGN_CENTER, 34 SetImageAlignment(views::ImageButton::ALIGN_CENTER,
27 views::ImageButton::ALIGN_MIDDLE); 35 views::ImageButton::ALIGN_MIDDLE);
28 SetAccessibleName(bundle.GetLocalizedString(accessible_name_id)); 36 SetAccessibleName(bundle.GetLocalizedString(accessible_name_id));
29 SetFocusForPlatform(); 37 SetFocusForPlatform();
30 38
31 SetFocusPainter(views::Painter::CreateSolidFocusPainter( 39 SetFocusPainter(views::Painter::CreateSolidFocusPainter(
32 kFocusBorderColor, gfx::Insets(1, 2, 2, 3))); 40 kFocusBorderColor, gfx::Insets(1, 2, 2, 3)));
33 } 41 }
34 42
35 TrayPopupHeaderButton::TrayPopupHeaderButton(views::ButtonListener* listener, 43 TrayPopupHeaderButton::TrayPopupHeaderButton(views::ButtonListener* listener,
36 int enabled_resource_id, 44 int enabled_resource_id,
37 int disabled_resource_id, 45 int disabled_resource_id,
38 int enabled_resource_id_hover, 46 int enabled_resource_id_hover,
39 int disabled_resource_id_hover, 47 int disabled_resource_id_hover,
40 int accessible_name_id) 48 int accessible_name_id)
41 : TrayPopupHeaderButton(listener, enabled_resource_id, accessible_name_id) { 49 : TrayPopupHeaderButton(listener,
50 *GetImageForResourceId(enabled_resource_id),
51 accessible_name_id) {
stevenjb 2016/08/24 15:58:57 This is awkward and may be tricky to debug if GetI
jdufault 2016/08/24 18:48:06 Done.
42 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance(); 52 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
43 SetToggledImage(views::Button::STATE_NORMAL, 53 SetToggledImage(views::Button::STATE_NORMAL,
44 bundle.GetImageNamed(disabled_resource_id).ToImageSkia()); 54 bundle.GetImageNamed(disabled_resource_id).ToImageSkia());
45 SetImage(views::Button::STATE_HOVERED, 55 SetImage(views::Button::STATE_HOVERED,
46 bundle.GetImageNamed(enabled_resource_id_hover).ToImageSkia()); 56 bundle.GetImageNamed(enabled_resource_id_hover).ToImageSkia());
47 SetToggledImage( 57 SetToggledImage(
48 views::Button::STATE_HOVERED, 58 views::Button::STATE_HOVERED,
49 bundle.GetImageNamed(disabled_resource_id_hover).ToImageSkia()); 59 bundle.GetImageNamed(disabled_resource_id_hover).ToImageSkia());
50 } 60 }
51 61
(...skipping 12 matching lines...) Expand all
64 if (state() == STATE_HOVERED || state() == STATE_PRESSED) { 74 if (state() == STATE_HOVERED || state() == STATE_PRESSED) {
65 set_background(views::Background::CreateSolidBackground( 75 set_background(views::Background::CreateSolidBackground(
66 kTrayPopupHoverBackgroundColor)); 76 kTrayPopupHoverBackgroundColor));
67 } else { 77 } else {
68 set_background(nullptr); 78 set_background(nullptr);
69 } 79 }
70 SchedulePaint(); 80 SchedulePaint();
71 } 81 }
72 82
73 } // namespace ash 83 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698