OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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/views/bookmark_menu_controller_views.h" | 5 #include "chrome/browser/views/bookmark_menu_controller_views.h" |
6 | 6 |
7 #include "app/l10n_util.h" | 7 #include "app/l10n_util.h" |
8 #include "app/os_exchange_data.h" | 8 #include "app/os_exchange_data.h" |
9 #include "app/resource_bundle.h" | 9 #include "app/resource_bundle.h" |
10 #include "chrome/browser/bookmarks/bookmark_drag_data.h" | 10 #include "chrome/browser/bookmarks/bookmark_drag_data.h" |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 | 66 |
67 void BookmarkMenuController::ExecuteCommand(int id, int mouse_event_flags) { | 67 void BookmarkMenuController::ExecuteCommand(int id, int mouse_event_flags) { |
68 DCHECK(page_navigator_); | 68 DCHECK(page_navigator_); |
69 DCHECK(menu_id_to_node_map_.find(id) != menu_id_to_node_map_.end()); | 69 DCHECK(menu_id_to_node_map_.find(id) != menu_id_to_node_map_.end()); |
70 GURL url = menu_id_to_node_map_[id]->GetURL(); | 70 GURL url = menu_id_to_node_map_[id]->GetURL(); |
71 page_navigator_->OpenURL( | 71 page_navigator_->OpenURL( |
72 url, GURL(), event_utils::DispositionFromEventFlags(mouse_event_flags), | 72 url, GURL(), event_utils::DispositionFromEventFlags(mouse_event_flags), |
73 PageTransition::AUTO_BOOKMARK); | 73 PageTransition::AUTO_BOOKMARK); |
74 } | 74 } |
75 | 75 |
| 76 bool BookmarkMenuController::GetDropFormats( |
| 77 views::MenuItemView* menu, |
| 78 int* formats, |
| 79 std::set<OSExchangeData::CustomFormat>* custom_formats) { |
| 80 *formats = OSExchangeData::URL; |
| 81 custom_formats->insert(BookmarkDragData::GetBookmarkCustomFormat()); |
| 82 return true; |
| 83 } |
| 84 |
| 85 bool BookmarkMenuController::AreDropTypesRequired(views::MenuItemView* menu) { |
| 86 return true; |
| 87 } |
| 88 |
76 bool BookmarkMenuController::CanDrop(views::MenuItemView* menu, | 89 bool BookmarkMenuController::CanDrop(views::MenuItemView* menu, |
77 const OSExchangeData& data) { | 90 const OSExchangeData& data) { |
78 // Only accept drops of 1 node, which is the case for all data dragged from | 91 // Only accept drops of 1 node, which is the case for all data dragged from |
79 // bookmark bar and menus. | 92 // bookmark bar and menus. |
80 | 93 |
81 if (!drop_data_.Read(data) || drop_data_.elements.size() != 1) | 94 if (!drop_data_.Read(data) || drop_data_.elements.size() != 1) |
82 return false; | 95 return false; |
83 | 96 |
84 if (drop_data_.has_single_url()) | 97 if (drop_data_.has_single_url()) |
85 return true; | 98 return true; |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
247 } | 260 } |
248 menu_id_to_node_map_[id] = node; | 261 menu_id_to_node_map_[id] = node; |
249 } | 262 } |
250 } | 263 } |
251 | 264 |
252 BookmarkMenuController::~BookmarkMenuController() { | 265 BookmarkMenuController::~BookmarkMenuController() { |
253 profile_->GetBookmarkModel()->RemoveObserver(this); | 266 profile_->GetBookmarkModel()->RemoveObserver(this); |
254 if (observer_) | 267 if (observer_) |
255 observer_->BookmarkMenuDeleted(this); | 268 observer_->BookmarkMenuDeleted(this); |
256 } | 269 } |
OLD | NEW |