OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/bookmarks/bookmark_menu_controller_views.h" | 5 #include "chrome/browser/ui/views/bookmarks/bookmark_menu_controller_views.h" |
6 | 6 |
7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
9 #include "chrome/browser/bookmarks/bookmark_model.h" | 9 #include "chrome/browser/bookmarks/bookmark_model.h" |
10 #include "chrome/browser/bookmarks/bookmark_model_factory.h" | 10 #include "chrome/browser/bookmarks/bookmark_model_factory.h" |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 | 159 |
160 views::MenuItemView* BookmarkMenuController::GetSiblingMenu( | 160 views::MenuItemView* BookmarkMenuController::GetSiblingMenu( |
161 views::MenuItemView* menu, | 161 views::MenuItemView* menu, |
162 const gfx::Point& screen_point, | 162 const gfx::Point& screen_point, |
163 views::MenuItemView::AnchorPosition* anchor, | 163 views::MenuItemView::AnchorPosition* anchor, |
164 bool* has_mnemonics, | 164 bool* has_mnemonics, |
165 views::MenuButton** button) { | 165 views::MenuButton** button) { |
166 if (!bookmark_bar_ || for_drop_) | 166 if (!bookmark_bar_ || for_drop_) |
167 return NULL; | 167 return NULL; |
168 gfx::Point bookmark_bar_loc(screen_point); | 168 gfx::Point bookmark_bar_loc(screen_point); |
169 views::View::ConvertPointToView(NULL, bookmark_bar_, &bookmark_bar_loc); | 169 views::View::ConvertPointToTarget(NULL, bookmark_bar_, &bookmark_bar_loc); |
170 int start_index; | 170 int start_index; |
171 const BookmarkNode* node = bookmark_bar_->GetNodeForButtonAtModelIndex( | 171 const BookmarkNode* node = bookmark_bar_->GetNodeForButtonAtModelIndex( |
172 bookmark_bar_loc, &start_index); | 172 bookmark_bar_loc, &start_index); |
173 if (!node || !node->is_folder()) | 173 if (!node || !node->is_folder()) |
174 return NULL; | 174 return NULL; |
175 | 175 |
176 menu_delegate_->SetActiveMenu(node, start_index); | 176 menu_delegate_->SetActiveMenu(node, start_index); |
177 *button = bookmark_bar_->GetMenuButtonForNode(node); | 177 *button = bookmark_bar_->GetMenuButtonForNode(node); |
178 bookmark_bar_->GetAnchorPositionForButton(*button, anchor); | 178 bookmark_bar_->GetAnchorPositionForButton(*button, anchor); |
179 *has_mnemonics = false; | 179 *has_mnemonics = false; |
180 return this->menu(); | 180 return this->menu(); |
181 } | 181 } |
182 | 182 |
183 int BookmarkMenuController::GetMaxWidthForMenu(MenuItemView* view) { | 183 int BookmarkMenuController::GetMaxWidthForMenu(MenuItemView* view) { |
184 return menu_delegate_->GetMaxWidthForMenu(view); | 184 return menu_delegate_->GetMaxWidthForMenu(view); |
185 } | 185 } |
186 | 186 |
187 void BookmarkMenuController::BookmarkModelChanged() { | 187 void BookmarkMenuController::BookmarkModelChanged() { |
188 if (!menu_delegate_->is_mutating_model()) | 188 if (!menu_delegate_->is_mutating_model()) |
189 menu()->Cancel(); | 189 menu()->Cancel(); |
190 } | 190 } |
191 | 191 |
192 BookmarkMenuController::~BookmarkMenuController() { | 192 BookmarkMenuController::~BookmarkMenuController() { |
193 BookmarkModelFactory::GetForProfile( | 193 BookmarkModelFactory::GetForProfile( |
194 menu_delegate_->profile())->RemoveObserver(this); | 194 menu_delegate_->profile())->RemoveObserver(this); |
195 if (observer_) | 195 if (observer_) |
196 observer_->BookmarkMenuDeleted(this); | 196 observer_->BookmarkMenuDeleted(this); |
197 } | 197 } |
OLD | NEW |