| 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/gtk/bookmark_bar_gtk.h" | 5 #include "chrome/browser/gtk/bookmark_bar_gtk.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "app/gfx/text_elider.h" | 9 #include "app/gfx/text_elider.h" |
| 10 #include "app/gtk_dnd_util.h" | 10 #include "app/gtk_dnd_util.h" |
| (...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 // Do minimal cleanup, presumably we'll be deleted shortly. | 291 // Do minimal cleanup, presumably we'll be deleted shortly. |
| 292 model_->RemoveObserver(this); | 292 model_->RemoveObserver(this); |
| 293 model_ = NULL; | 293 model_ = NULL; |
| 294 } | 294 } |
| 295 | 295 |
| 296 void BookmarkBarGtk::BookmarkNodeMoved(BookmarkModel* model, | 296 void BookmarkBarGtk::BookmarkNodeMoved(BookmarkModel* model, |
| 297 const BookmarkNode* old_parent, | 297 const BookmarkNode* old_parent, |
| 298 int old_index, | 298 int old_index, |
| 299 const BookmarkNode* new_parent, | 299 const BookmarkNode* new_parent, |
| 300 int new_index) { | 300 int new_index) { |
| 301 BookmarkNodeRemoved(model, old_parent, old_index, NULL); | 301 const BookmarkNode* node = new_parent->GetChild(new_index); |
| 302 BookmarkNodeRemoved(model, old_parent, old_index, node); |
| 302 BookmarkNodeAdded(model, new_parent, new_index); | 303 BookmarkNodeAdded(model, new_parent, new_index); |
| 303 } | 304 } |
| 304 | 305 |
| 305 void BookmarkBarGtk::BookmarkNodeAdded(BookmarkModel* model, | 306 void BookmarkBarGtk::BookmarkNodeAdded(BookmarkModel* model, |
| 306 const BookmarkNode* parent, | 307 const BookmarkNode* parent, |
| 307 int index) { | 308 int index) { |
| 308 if (parent != model_->GetBookmarkBarNode()) { | 309 if (parent != model_->GetBookmarkBarNode()) { |
| 309 // We only care about nodes on the bookmark bar. | 310 // We only care about nodes on the bookmark bar. |
| 310 return; | 311 return; |
| 311 } | 312 } |
| (...skipping 15 matching lines...) Expand all Loading... |
| 327 int old_index, | 328 int old_index, |
| 328 const BookmarkNode* node) { | 329 const BookmarkNode* node) { |
| 329 if (parent != model_->GetBookmarkBarNode()) { | 330 if (parent != model_->GetBookmarkBarNode()) { |
| 330 // We only care about nodes on the bookmark bar. | 331 // We only care about nodes on the bookmark bar. |
| 331 return; | 332 return; |
| 332 } | 333 } |
| 333 DCHECK(old_index >= 0 && old_index < GetBookmarkButtonCount()); | 334 DCHECK(old_index >= 0 && old_index < GetBookmarkButtonCount()); |
| 334 | 335 |
| 335 GtkWidget* to_remove = GTK_WIDGET(gtk_toolbar_get_nth_item( | 336 GtkWidget* to_remove = GTK_WIDGET(gtk_toolbar_get_nth_item( |
| 336 GTK_TOOLBAR(bookmark_toolbar_.get()), old_index)); | 337 GTK_TOOLBAR(bookmark_toolbar_.get()), old_index)); |
| 337 menu_bar_helper_.Remove(gtk_bin_get_child(GTK_BIN(to_remove))); | 338 if (node->is_folder()) |
| 339 menu_bar_helper_.Remove(gtk_bin_get_child(GTK_BIN(to_remove))); |
| 338 gtk_container_remove(GTK_CONTAINER(bookmark_toolbar_.get()), | 340 gtk_container_remove(GTK_CONTAINER(bookmark_toolbar_.get()), |
| 339 to_remove); | 341 to_remove); |
| 340 | 342 |
| 341 SetInstructionState(); | 343 SetInstructionState(); |
| 342 SetChevronState(); | 344 SetChevronState(); |
| 343 } | 345 } |
| 344 | 346 |
| 345 void BookmarkBarGtk::BookmarkNodeChanged(BookmarkModel* model, | 347 void BookmarkBarGtk::BookmarkNodeChanged(BookmarkModel* model, |
| 346 const BookmarkNode* node) { | 348 const BookmarkNode* node) { |
| 347 if (node->GetParent() != model_->GetBookmarkBarNode()) { | 349 if (node->GetParent() != model_->GetBookmarkBarNode()) { |
| (...skipping 668 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1016 break; | 1018 break; |
| 1017 } | 1019 } |
| 1018 } | 1020 } |
| 1019 DCHECK_NE(button_idx, -1); | 1021 DCHECK_NE(button_idx, -1); |
| 1020 | 1022 |
| 1021 // Find the GtkWidget* for the actual target button. | 1023 // Find the GtkWidget* for the actual target button. |
| 1022 int shift = dir == GTK_MENU_DIR_PARENT ? -1 : 1; | 1024 int shift = dir == GTK_MENU_DIR_PARENT ? -1 : 1; |
| 1023 button_idx = (button_idx + shift + folder_list.size()) % folder_list.size(); | 1025 button_idx = (button_idx + shift + folder_list.size()) % folder_list.size(); |
| 1024 PopupForButton(folder_list[button_idx]); | 1026 PopupForButton(folder_list[button_idx]); |
| 1025 } | 1027 } |
| OLD | NEW |