| 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 "components/undo/bookmark_undo_service.h" | 5 #include "components/undo/bookmark_undo_service.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 #include <utility> |
| 9 | 10 |
| 10 #include "base/macros.h" | 11 #include "base/macros.h" |
| 11 #include "components/bookmarks/browser/bookmark_model.h" | 12 #include "components/bookmarks/browser/bookmark_model.h" |
| 12 #include "components/bookmarks/browser/bookmark_node_data.h" | 13 #include "components/bookmarks/browser/bookmark_node_data.h" |
| 13 #include "components/bookmarks/browser/bookmark_undo_provider.h" | 14 #include "components/bookmarks/browser/bookmark_undo_provider.h" |
| 14 #include "components/bookmarks/browser/bookmark_utils.h" | 15 #include "components/bookmarks/browser/bookmark_utils.h" |
| 15 #include "components/bookmarks/browser/scoped_group_bookmark_actions.h" | 16 #include "components/bookmarks/browser/scoped_group_bookmark_actions.h" |
| 16 #include "components/undo/undo_operation.h" | 17 #include "components/undo/undo_operation.h" |
| 17 #include "grit/components_strings.h" | 18 #include "grit/components_strings.h" |
| 18 | 19 |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 BookmarkRemoveOperation::BookmarkRemoveOperation( | 120 BookmarkRemoveOperation::BookmarkRemoveOperation( |
| 120 BookmarkModel* model, | 121 BookmarkModel* model, |
| 121 BookmarkUndoProvider* undo_provider, | 122 BookmarkUndoProvider* undo_provider, |
| 122 const BookmarkNode* parent, | 123 const BookmarkNode* parent, |
| 123 int index, | 124 int index, |
| 124 scoped_ptr<BookmarkNode> node) | 125 scoped_ptr<BookmarkNode> node) |
| 125 : BookmarkUndoOperation(model), | 126 : BookmarkUndoOperation(model), |
| 126 undo_provider_(undo_provider), | 127 undo_provider_(undo_provider), |
| 127 parent_node_id_(parent->id()), | 128 parent_node_id_(parent->id()), |
| 128 index_(index), | 129 index_(index), |
| 129 node_(node.Pass()) { | 130 node_(std::move(node)) {} |
| 130 } | |
| 131 | 131 |
| 132 BookmarkRemoveOperation::~BookmarkRemoveOperation() { | 132 BookmarkRemoveOperation::~BookmarkRemoveOperation() { |
| 133 } | 133 } |
| 134 | 134 |
| 135 void BookmarkRemoveOperation::Undo() { | 135 void BookmarkRemoveOperation::Undo() { |
| 136 DCHECK(node_.get()); | 136 DCHECK(node_.get()); |
| 137 | 137 |
| 138 const BookmarkNode* parent = bookmarks::GetBookmarkNodeByID( | 138 const BookmarkNode* parent = bookmarks::GetBookmarkNodeByID( |
| 139 bookmark_model(), parent_node_id_); | 139 bookmark_model(), parent_node_id_); |
| 140 DCHECK(parent); | 140 DCHECK(parent); |
| 141 | 141 |
| 142 undo_provider_->RestoreRemovedNode(parent, index_, node_.Pass()); | 142 undo_provider_->RestoreRemovedNode(parent, index_, std::move(node_)); |
| 143 } | 143 } |
| 144 | 144 |
| 145 int BookmarkRemoveOperation::GetUndoLabelId() const { | 145 int BookmarkRemoveOperation::GetUndoLabelId() const { |
| 146 return IDS_BOOKMARK_BAR_UNDO_DELETE; | 146 return IDS_BOOKMARK_BAR_UNDO_DELETE; |
| 147 } | 147 } |
| 148 | 148 |
| 149 int BookmarkRemoveOperation::GetRedoLabelId() const { | 149 int BookmarkRemoveOperation::GetRedoLabelId() const { |
| 150 return IDS_BOOKMARK_BAR_REDO_ADD; | 150 return IDS_BOOKMARK_BAR_REDO_ADD; |
| 151 } | 151 } |
| 152 | 152 |
| (...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 359 undo_manager_.RemoveAllOperations(); | 359 undo_manager_.RemoveAllOperations(); |
| 360 } | 360 } |
| 361 | 361 |
| 362 void BookmarkUndoService::BookmarkNodeMoved(BookmarkModel* model, | 362 void BookmarkUndoService::BookmarkNodeMoved(BookmarkModel* model, |
| 363 const BookmarkNode* old_parent, | 363 const BookmarkNode* old_parent, |
| 364 int old_index, | 364 int old_index, |
| 365 const BookmarkNode* new_parent, | 365 const BookmarkNode* new_parent, |
| 366 int new_index) { | 366 int new_index) { |
| 367 scoped_ptr<UndoOperation> op(new BookmarkMoveOperation( | 367 scoped_ptr<UndoOperation> op(new BookmarkMoveOperation( |
| 368 model, old_parent, old_index, new_parent, new_index)); | 368 model, old_parent, old_index, new_parent, new_index)); |
| 369 undo_manager()->AddUndoOperation(op.Pass()); | 369 undo_manager()->AddUndoOperation(std::move(op)); |
| 370 } | 370 } |
| 371 | 371 |
| 372 void BookmarkUndoService::BookmarkNodeAdded(BookmarkModel* model, | 372 void BookmarkUndoService::BookmarkNodeAdded(BookmarkModel* model, |
| 373 const BookmarkNode* parent, | 373 const BookmarkNode* parent, |
| 374 int index) { | 374 int index) { |
| 375 scoped_ptr<UndoOperation> op( | 375 scoped_ptr<UndoOperation> op( |
| 376 new BookmarkAddOperation(model, parent, index)); | 376 new BookmarkAddOperation(model, parent, index)); |
| 377 undo_manager()->AddUndoOperation(op.Pass()); | 377 undo_manager()->AddUndoOperation(std::move(op)); |
| 378 } | 378 } |
| 379 | 379 |
| 380 void BookmarkUndoService::OnWillChangeBookmarkNode(BookmarkModel* model, | 380 void BookmarkUndoService::OnWillChangeBookmarkNode(BookmarkModel* model, |
| 381 const BookmarkNode* node) { | 381 const BookmarkNode* node) { |
| 382 scoped_ptr<UndoOperation> op(new BookmarkEditOperation(model, node)); | 382 scoped_ptr<UndoOperation> op(new BookmarkEditOperation(model, node)); |
| 383 undo_manager()->AddUndoOperation(op.Pass()); | 383 undo_manager()->AddUndoOperation(std::move(op)); |
| 384 } | 384 } |
| 385 | 385 |
| 386 void BookmarkUndoService::OnWillReorderBookmarkNode(BookmarkModel* model, | 386 void BookmarkUndoService::OnWillReorderBookmarkNode(BookmarkModel* model, |
| 387 const BookmarkNode* node) { | 387 const BookmarkNode* node) { |
| 388 scoped_ptr<UndoOperation> op(new BookmarkReorderOperation(model, node)); | 388 scoped_ptr<UndoOperation> op(new BookmarkReorderOperation(model, node)); |
| 389 undo_manager()->AddUndoOperation(op.Pass()); | 389 undo_manager()->AddUndoOperation(std::move(op)); |
| 390 } | 390 } |
| 391 | 391 |
| 392 void BookmarkUndoService::GroupedBookmarkChangesBeginning( | 392 void BookmarkUndoService::GroupedBookmarkChangesBeginning( |
| 393 BookmarkModel* model) { | 393 BookmarkModel* model) { |
| 394 undo_manager()->StartGroupingActions(); | 394 undo_manager()->StartGroupingActions(); |
| 395 } | 395 } |
| 396 | 396 |
| 397 void BookmarkUndoService::GroupedBookmarkChangesEnded(BookmarkModel* model) { | 397 void BookmarkUndoService::GroupedBookmarkChangesEnded(BookmarkModel* model) { |
| 398 undo_manager()->EndGroupingActions(); | 398 undo_manager()->EndGroupingActions(); |
| 399 } | 399 } |
| 400 | 400 |
| 401 void BookmarkUndoService::SetUndoProvider(BookmarkUndoProvider* undo_provider) { | 401 void BookmarkUndoService::SetUndoProvider(BookmarkUndoProvider* undo_provider) { |
| 402 undo_provider_ = undo_provider; | 402 undo_provider_ = undo_provider; |
| 403 } | 403 } |
| 404 | 404 |
| 405 void BookmarkUndoService::OnBookmarkNodeRemoved(BookmarkModel* model, | 405 void BookmarkUndoService::OnBookmarkNodeRemoved(BookmarkModel* model, |
| 406 const BookmarkNode* parent, | 406 const BookmarkNode* parent, |
| 407 int index, | 407 int index, |
| 408 scoped_ptr<BookmarkNode> node) { | 408 scoped_ptr<BookmarkNode> node) { |
| 409 DCHECK(undo_provider_); | 409 DCHECK(undo_provider_); |
| 410 scoped_ptr<UndoOperation> op(new BookmarkRemoveOperation( | 410 scoped_ptr<UndoOperation> op(new BookmarkRemoveOperation( |
| 411 model, undo_provider_, parent, index, node.Pass())); | 411 model, undo_provider_, parent, index, std::move(node))); |
| 412 undo_manager()->AddUndoOperation(op.Pass()); | 412 undo_manager()->AddUndoOperation(std::move(op)); |
| 413 } | 413 } |
| OLD | NEW |