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_button.h" | 5 #include "chrome/browser/ui/views/toolbar/toolbar_button.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" | 8 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" |
9 #include "grit/theme_resources.h" | 9 #include "grit/theme_resources.h" |
10 #include "grit/ui_strings.h" | 10 #include "grit/ui_strings.h" |
(...skipping 28 matching lines...) Expand all Loading... |
39 } | 39 } |
40 | 40 |
41 void ToolbarButton::ClearPendingMenu() { | 41 void ToolbarButton::ClearPendingMenu() { |
42 show_menu_factory_.InvalidateWeakPtrs(); | 42 show_menu_factory_.InvalidateWeakPtrs(); |
43 } | 43 } |
44 | 44 |
45 bool ToolbarButton::IsMenuShowing() const { | 45 bool ToolbarButton::IsMenuShowing() const { |
46 return menu_showing_; | 46 return menu_showing_; |
47 } | 47 } |
48 | 48 |
49 gfx::Size ToolbarButton::GetPreferredSize() { | 49 gfx::Size ToolbarButton::GetPreferredSize() const { |
50 gfx::Size size(image()->GetPreferredSize()); | 50 gfx::Size size(image()->GetPreferredSize()); |
51 gfx::Size label_size = label()->GetPreferredSize(); | 51 gfx::Size label_size = label()->GetPreferredSize(); |
52 if (label_size.width() > 0) | 52 if (label_size.width() > 0) |
53 size.Enlarge(label_size.width() + LocationBarView::kItemPadding, 0); | 53 size.Enlarge(label_size.width() + LocationBarView::kItemPadding, 0); |
54 return size; | 54 return size; |
55 } | 55 } |
56 | 56 |
57 bool ToolbarButton::OnMousePressed(const ui::MouseEvent& event) { | 57 bool ToolbarButton::OnMousePressed(const ui::MouseEvent& event) { |
58 if (enabled() && ShouldShowMenu() && | 58 if (enabled() && ShouldShowMenu() && |
59 IsTriggerableEvent(event) && HitTestPoint(event.location())) { | 59 IsTriggerableEvent(event) && HitTestPoint(event.location())) { |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
226 | 226 |
227 // Need to explicitly clear mouse handler so that events get sent | 227 // Need to explicitly clear mouse handler so that events get sent |
228 // properly after the menu finishes running. If we don't do this, then | 228 // properly after the menu finishes running. If we don't do this, then |
229 // the first click to other parts of the UI is eaten. | 229 // the first click to other parts of the UI is eaten. |
230 SetMouseHandler(NULL); | 230 SetMouseHandler(NULL); |
231 | 231 |
232 // Set the state back to normal after the drop down menu is closed. | 232 // Set the state back to normal after the drop down menu is closed. |
233 if (state_ != STATE_DISABLED) | 233 if (state_ != STATE_DISABLED) |
234 SetState(STATE_NORMAL); | 234 SetState(STATE_NORMAL); |
235 } | 235 } |
OLD | NEW |