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

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

Issue 2066583004: mash: Move most files in //ash/system/tray to //ash/common/system/tray (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@trayupdatemove
Patch Set: rebase Created 4 years, 6 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
« no previous file with comments | « ash/system/tray/tray_popup_header_button.h ('k') | ash/system/tray/tray_popup_item_container.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "ash/system/tray/tray_popup_header_button.h"
6
7 #include "ash/common/ash_constants.h"
8 #include "ash/common/system/tray/tray_constants.h"
9 #include "ui/base/resource/resource_bundle.h"
10 #include "ui/views/background.h"
11 #include "ui/views/painter.h"
12
13 namespace ash {
14
15 // static
16 const char TrayPopupHeaderButton::kViewClassName[] =
17 "tray/TrayPopupHeaderButton";
18
19 TrayPopupHeaderButton::TrayPopupHeaderButton(views::ButtonListener* listener,
20 int enabled_resource_id,
21 int disabled_resource_id,
22 int enabled_resource_id_hover,
23 int disabled_resource_id_hover,
24 int accessible_name_id)
25 : views::ToggleImageButton(listener) {
26 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
27 SetImage(views::Button::STATE_NORMAL,
28 bundle.GetImageNamed(enabled_resource_id).ToImageSkia());
29 SetToggledImage(views::Button::STATE_NORMAL,
30 bundle.GetImageNamed(disabled_resource_id).ToImageSkia());
31 SetImage(views::Button::STATE_HOVERED,
32 bundle.GetImageNamed(enabled_resource_id_hover).ToImageSkia());
33 SetToggledImage(views::Button::STATE_HOVERED,
34 bundle.GetImageNamed(disabled_resource_id_hover).ToImageSkia());
35 SetImageAlignment(views::ImageButton::ALIGN_CENTER,
36 views::ImageButton::ALIGN_MIDDLE);
37 SetAccessibleName(bundle.GetLocalizedString(accessible_name_id));
38 SetFocusForPlatform();
39
40 SetFocusPainter(views::Painter::CreateSolidFocusPainter(
41 kFocusBorderColor,
42 gfx::Insets(1, 2, 2, 3)));
43 }
44
45 TrayPopupHeaderButton::~TrayPopupHeaderButton() {}
46
47 const char* TrayPopupHeaderButton::GetClassName() const {
48 return kViewClassName;
49 }
50
51 gfx::Size TrayPopupHeaderButton::GetPreferredSize() const {
52 return gfx::Size(ash::kTrayPopupItemHeight, ash::kTrayPopupItemHeight);
53 }
54
55 void TrayPopupHeaderButton::StateChanged() {
56 if (state() == STATE_HOVERED || state() == STATE_PRESSED) {
57 set_background(views::Background::CreateSolidBackground(
58 kTrayPopupHoverBackgroundColor));
59 } else {
60 set_background(nullptr);
61 }
62 SchedulePaint();
63 }
64
65 } // namespace ash
OLDNEW
« no previous file with comments | « ash/system/tray/tray_popup_header_button.h ('k') | ash/system/tray/tray_popup_item_container.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698