Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(738)

Side by Side Diff: chrome/browser/views/bookmark_menu_controller_views.cc

Issue 199050: Wires up drag and drop for bookmark menus and cleans up a couple of... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698