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..7a1d5e742c07b4e427f2b978bc98aa1396f03cae 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(); |
arv (Not doing code reviews)
2014/01/06 15:26:45
wrong indentation
Tom Cassiotis
2014/01/06 23:28:21
Done.
|
+#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(); |
arv (Not doing code reviews)
2014/01/06 15:26:45
indentation
Tom Cassiotis
2014/01/06 23:28:21
Done.
|
+ |
+ 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 |