OLD | NEW |
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 "chrome/browser/ui/views/toolbar/toolbar_action_view.h" | 5 #include "chrome/browser/ui/views/toolbar/toolbar_action_view.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "chrome/browser/chrome_notification_types.h" | 9 #include "chrome/browser/chrome_notification_types.h" |
10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
11 #include "chrome/browser/sessions/session_tab_helper.h" | 11 #include "chrome/browser/sessions/session_tab_helper.h" |
12 #include "chrome/browser/themes/theme_service.h" | 12 #include "chrome/browser/themes/theme_service.h" |
13 #include "chrome/browser/themes/theme_service_factory.h" | 13 #include "chrome/browser/themes/theme_service_factory.h" |
14 #include "chrome/browser/ui/toolbar/toolbar_action_view_controller.h" | 14 #include "chrome/browser/ui/toolbar/toolbar_action_view_controller.h" |
15 #include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" | 15 #include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" |
16 #include "chrome/browser/ui/view_ids.h" | 16 #include "chrome/browser/ui/view_ids.h" |
17 #include "chrome/grit/generated_resources.h" | 17 #include "chrome/grit/generated_resources.h" |
18 #include "content/public/browser/notification_source.h" | 18 #include "content/public/browser/notification_source.h" |
19 #include "grit/theme_resources.h" | 19 #include "grit/theme_resources.h" |
20 #include "ui/accessibility/ax_view_state.h" | 20 #include "ui/accessibility/ax_view_state.h" |
21 #include "ui/base/resource/resource_bundle.h" | 21 #include "ui/base/resource/resource_bundle.h" |
22 #include "ui/compositor/paint_context.h" | 22 #include "ui/compositor/paint_recorder.h" |
23 #include "ui/events/event.h" | 23 #include "ui/events/event.h" |
24 #include "ui/gfx/image/image_skia.h" | 24 #include "ui/gfx/image/image_skia.h" |
25 #include "ui/gfx/image/image_skia_operations.h" | 25 #include "ui/gfx/image/image_skia_operations.h" |
26 #include "ui/gfx/image/image_skia_source.h" | 26 #include "ui/gfx/image/image_skia_source.h" |
27 #include "ui/resources/grit/ui_resources.h" | 27 #include "ui/resources/grit/ui_resources.h" |
28 #include "ui/views/controls/button/label_button_border.h" | 28 #include "ui/views/controls/button/label_button_border.h" |
29 | 29 |
30 using views::LabelButtonBorder; | 30 using views::LabelButtonBorder; |
31 | 31 |
32 namespace { | 32 namespace { |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 if (details.is_add && !called_register_command_ && GetFocusManager()) { | 103 if (details.is_add && !called_register_command_ && GetFocusManager()) { |
104 view_controller_->RegisterCommand(); | 104 view_controller_->RegisterCommand(); |
105 called_register_command_ = true; | 105 called_register_command_ = true; |
106 } | 106 } |
107 | 107 |
108 MenuButton::ViewHierarchyChanged(details); | 108 MenuButton::ViewHierarchyChanged(details); |
109 } | 109 } |
110 | 110 |
111 void ToolbarActionView::PaintChildren(const ui::PaintContext& context) { | 111 void ToolbarActionView::PaintChildren(const ui::PaintContext& context) { |
112 View::PaintChildren(context); | 112 View::PaintChildren(context); |
113 view_controller_->PaintExtra(context.canvas(), GetLocalBounds(), | 113 ui::PaintRecorder recorder(context); |
| 114 view_controller_->PaintExtra(recorder.canvas(), GetLocalBounds(), |
114 GetCurrentWebContents()); | 115 GetCurrentWebContents()); |
115 } | 116 } |
116 | 117 |
117 void ToolbarActionView::OnPaintBorder(gfx::Canvas* canvas) { | 118 void ToolbarActionView::OnPaintBorder(gfx::Canvas* canvas) { |
118 if (!wants_to_run_) | 119 if (!wants_to_run_) |
119 views::MenuButton::OnPaintBorder(canvas); | 120 views::MenuButton::OnPaintBorder(canvas); |
120 else | 121 else |
121 wants_to_run_border_->Paint(*this, canvas); | 122 wants_to_run_border_->Paint(*this, canvas); |
122 } | 123 } |
123 | 124 |
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
293 views::MenuButton* reference_view = | 294 views::MenuButton* reference_view = |
294 static_cast<views::MenuButton*>(GetReferenceViewForPopup()); | 295 static_cast<views::MenuButton*>(GetReferenceViewForPopup()); |
295 pressed_lock_.reset(new views::MenuButton::PressedLock(reference_view)); | 296 pressed_lock_.reset(new views::MenuButton::PressedLock(reference_view)); |
296 } | 297 } |
297 } | 298 } |
298 | 299 |
299 void ToolbarActionView::OnPopupClosed() { | 300 void ToolbarActionView::OnPopupClosed() { |
300 delegate_->SetPopupOwner(nullptr); | 301 delegate_->SetPopupOwner(nullptr); |
301 pressed_lock_.reset(); // Unpress the menu button if it was pressed. | 302 pressed_lock_.reset(); // Unpress the menu button if it was pressed. |
302 } | 303 } |
OLD | NEW |