| 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 |