Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(396)

Unified Diff: chrome/browser/bookmarks/bookmark_manager_extension_api.cc

Issue 10694085: Refactor extension event distribution to use Values instead of JSON strings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixing memory leak in a test. Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/bookmarks/bookmark_manager_extension_api.cc
diff --git a/chrome/browser/bookmarks/bookmark_manager_extension_api.cc b/chrome/browser/bookmarks/bookmark_manager_extension_api.cc
index 199056a9a6a8bdead00c80287618c1b248763f25..43e3b4d9dbd4ebf2dc43386561db261ea2bcff41 100644
--- a/chrome/browser/bookmarks/bookmark_manager_extension_api.cc
+++ b/chrome/browser/bookmarks/bookmark_manager_extension_api.cc
@@ -166,15 +166,13 @@ BookmarkManagerExtensionEventRouter::~BookmarkManagerExtensionEventRouter() {
tab_->bookmark_tab_helper()->SetBookmarkDragDelegate(NULL);
}
-void BookmarkManagerExtensionEventRouter::DispatchEvent(const char* event_name,
- const ListValue* args) {
+void BookmarkManagerExtensionEventRouter::DispatchEvent(
+ const char* event_name, scoped_ptr<ListValue> args) {
if (!profile_->GetExtensionEventRouter())
return;
- std::string json_args;
- base::JSONWriter::Write(args, &json_args);
profile_->GetExtensionEventRouter()->DispatchEventToRenderers(
- event_name, json_args, NULL, GURL(), extensions::EventFilteringInfo());
+ event_name, args.Pass(), NULL, GURL(), extensions::EventFilteringInfo());
}
void BookmarkManagerExtensionEventRouter::DispatchDragEvent(
@@ -182,9 +180,9 @@ void BookmarkManagerExtensionEventRouter::DispatchDragEvent(
if (data.size() == 0)
return;
- ListValue args;
- BookmarkNodeDataToJSON(profile_, data, &args);
- DispatchEvent(event_name, &args);
+ scoped_ptr<ListValue> args(new ListValue());
+ BookmarkNodeDataToJSON(profile_, data, args.get());
+ DispatchEvent(event_name, args.Pass());
}
void BookmarkManagerExtensionEventRouter::OnDragEnter(

Powered by Google App Engine
This is Rietveld 408576698