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/wrench_toolbar_button.h" | 5 #include "chrome/browser/ui/views/toolbar/wrench_toolbar_button.h" |
6 | 6 |
7 #include "base/message_loop/message_loop.h" | 7 #include "base/location.h" |
| 8 #include "base/single_thread_task_runner.h" |
| 9 #include "base/thread_task_runner_handle.h" |
8 #include "base/time/time.h" | 10 #include "base/time/time.h" |
9 #include "chrome/browser/ui/browser.h" | 11 #include "chrome/browser/ui/browser.h" |
10 #include "chrome/browser/ui/views/extensions/browser_action_drag_data.h" | 12 #include "chrome/browser/ui/views/extensions/browser_action_drag_data.h" |
11 #include "chrome/browser/ui/views/toolbar/toolbar_action_view.h" | 13 #include "chrome/browser/ui/views/toolbar/toolbar_action_view.h" |
12 #include "chrome/browser/ui/views/toolbar/toolbar_view.h" | 14 #include "chrome/browser/ui/views/toolbar/toolbar_view.h" |
13 #include "extensions/common/feature_switch.h" | 15 #include "extensions/common/feature_switch.h" |
14 #include "grit/theme_resources.h" | 16 #include "grit/theme_resources.h" |
15 #include "ui/base/resource/resource_bundle.h" | 17 #include "ui/base/resource/resource_bundle.h" |
16 #include "ui/base/theme_provider.h" | 18 #include "ui/base/theme_provider.h" |
17 #include "ui/views/controls/button/label_button_border.h" | 19 #include "ui/views/controls/button/label_button_border.h" |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 return allow_extension_dragging_ ? | 83 return allow_extension_dragging_ ? |
82 BrowserActionDragData::CanDrop(data, | 84 BrowserActionDragData::CanDrop(data, |
83 toolbar_view_->browser()->profile()) : | 85 toolbar_view_->browser()->profile()) : |
84 views::View::CanDrop(data); | 86 views::View::CanDrop(data); |
85 } | 87 } |
86 | 88 |
87 void WrenchToolbarButton::OnDragEntered(const ui::DropTargetEvent& event) { | 89 void WrenchToolbarButton::OnDragEntered(const ui::DropTargetEvent& event) { |
88 DCHECK(allow_extension_dragging_); | 90 DCHECK(allow_extension_dragging_); |
89 DCHECK(!weak_factory_.HasWeakPtrs()); | 91 DCHECK(!weak_factory_.HasWeakPtrs()); |
90 if (!g_open_wrench_immediately_for_testing) { | 92 if (!g_open_wrench_immediately_for_testing) { |
91 base::MessageLoop::current()->PostDelayedTask( | 93 base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( |
92 FROM_HERE, | 94 FROM_HERE, base::Bind(&WrenchToolbarButton::ShowOverflowMenu, |
93 base::Bind(&WrenchToolbarButton::ShowOverflowMenu, | 95 weak_factory_.GetWeakPtr()), |
94 weak_factory_.GetWeakPtr()), | |
95 base::TimeDelta::FromMilliseconds(views::GetMenuShowDelay())); | 96 base::TimeDelta::FromMilliseconds(views::GetMenuShowDelay())); |
96 } else { | 97 } else { |
97 ShowOverflowMenu(); | 98 ShowOverflowMenu(); |
98 } | 99 } |
99 } | 100 } |
100 | 101 |
101 int WrenchToolbarButton::OnDragUpdated(const ui::DropTargetEvent& event) { | 102 int WrenchToolbarButton::OnDragUpdated(const ui::DropTargetEvent& event) { |
102 DCHECK(allow_extension_dragging_); | 103 DCHECK(allow_extension_dragging_); |
103 return ui::DragDropTypes::DRAG_MOVE; | 104 return ui::DragDropTypes::DRAG_MOVE; |
104 } | 105 } |
(...skipping 12 matching lines...) Expand all Loading... |
117 views::MenuButton::OnPaint(canvas); | 118 views::MenuButton::OnPaint(canvas); |
118 wrench_icon_painter_->Paint(canvas, | 119 wrench_icon_painter_->Paint(canvas, |
119 GetThemeProvider(), | 120 GetThemeProvider(), |
120 gfx::Rect(size()), | 121 gfx::Rect(size()), |
121 WrenchIconPainter::BEZEL_NONE); | 122 WrenchIconPainter::BEZEL_NONE); |
122 } | 123 } |
123 | 124 |
124 void WrenchToolbarButton::ShowOverflowMenu() { | 125 void WrenchToolbarButton::ShowOverflowMenu() { |
125 toolbar_view_->ShowAppMenu(true); // For drop. | 126 toolbar_view_->ShowAppMenu(true); // For drop. |
126 } | 127 } |
OLD | NEW |