| Index: chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.cc
|
| diff --git a/chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.cc b/chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.cc
|
| index e0b7a4e5d384e325fead39c2eec74f17d5c71a8f..aae34ee23bcea1c8f7af2a52635134630f423f16 100644
|
| --- a/chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.cc
|
| +++ b/chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.cc
|
| @@ -9,6 +9,7 @@
|
| #include "base/memory/linked_ptr.h"
|
| #include "base/prefs/pref_service.h"
|
| #include "base/strings/string_number_conversions.h"
|
| +#include "base/strings/utf_string_conversions.h"
|
| #include "base/values.h"
|
| #include "chrome/browser/bookmarks/bookmark_model.h"
|
| #include "chrome/browser/bookmarks/bookmark_model_factory.h"
|
| @@ -52,10 +53,12 @@ namespace GetSubtree = api::bookmark_manager_private::GetSubtree;
|
| namespace manager_keys = bookmark_manager_api_constants;
|
| namespace GetMetaInfo = api::bookmark_manager_private::GetMetaInfo;
|
| namespace Paste = api::bookmark_manager_private::Paste;
|
| +namespace RedoInfo = api::bookmark_manager_private::GetRedoInfo;
|
| namespace RemoveTrees = api::bookmark_manager_private::RemoveTrees;
|
| namespace SetMetaInfo = api::bookmark_manager_private::SetMetaInfo;
|
| namespace SortChildren = api::bookmark_manager_private::SortChildren;
|
| namespace StartDrag = api::bookmark_manager_private::StartDrag;
|
| +namespace UndoInfo = api::bookmark_manager_private::GetUndoInfo;
|
|
|
| using content::WebContents;
|
|
|
| @@ -574,4 +577,52 @@ bool BookmarkManagerPrivateRemoveTreesFunction::RunImpl() {
|
| return true;
|
| }
|
|
|
| +bool BookmarkManagerPrivateUndoFunction::RunImpl() {
|
| +#if !defined(OS_ANDROID)
|
| + BookmarkUndoServiceFactory::GetForProfile(GetProfile())->undo_manager()->
|
| + Undo();
|
| +#endif
|
| +
|
| + return true;
|
| +}
|
| +
|
| +bool BookmarkManagerPrivateRedoFunction::RunImpl() {
|
| +#if !defined(OS_ANDROID)
|
| + BookmarkUndoServiceFactory::GetForProfile(GetProfile())->undo_manager()->
|
| + Redo();
|
| +#endif
|
| +
|
| + return true;
|
| +}
|
| +
|
| +bool BookmarkManagerPrivateGetUndoInfoFunction::RunImpl() {
|
| +#if !defined(OS_ANDROID)
|
| + UndoManager* undo_manager =
|
| + BookmarkUndoServiceFactory::GetForProfile(GetProfile())->undo_manager();
|
| +
|
| + UndoInfo::Results::Result result;
|
| + result.enabled = undo_manager->undo_count() > 0;
|
| + result.label = UTF16ToUTF8(undo_manager->GetUndoLabel());
|
| +
|
| + results_ = UndoInfo::Results::Create(result);
|
| +#endif // !defined(OS_ANDROID)
|
| +
|
| + return true;
|
| +}
|
| +
|
| +bool BookmarkManagerPrivateGetRedoInfoFunction::RunImpl() {
|
| +#if !defined(OS_ANDROID)
|
| + UndoManager* undo_manager =
|
| + BookmarkUndoServiceFactory::GetForProfile(GetProfile())->undo_manager();
|
| +
|
| + RedoInfo::Results::Result result;
|
| + result.enabled = undo_manager->redo_count() > 0;
|
| + result.label = UTF16ToUTF8(undo_manager->GetRedoLabel());
|
| +
|
| + results_ = RedoInfo::Results::Create(result);
|
| +#endif // !defined(OS_ANDROID)
|
| +
|
| + return true;
|
| +}
|
| +
|
| } // namespace extensions
|
|
|