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

Unified Diff: chrome/browser/notifications/notification_conversion_helper.cc

Issue 1825913002: [Extensions] Convert APIs to use movable types [7] (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Steven's Created 4 years, 9 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/notifications/notification_conversion_helper.cc
diff --git a/chrome/browser/notifications/notification_conversion_helper.cc b/chrome/browser/notifications/notification_conversion_helper.cc
index 5b78d20c571fa97f438bed747b0acf2ce049d14b..c470a66d28a5a911f84e363d657f42633cf21b86 100644
--- a/chrome/browser/notifications/notification_conversion_helper.cc
+++ b/chrome/browser/notifications/notification_conversion_helper.cc
@@ -61,24 +61,20 @@ void NotificationConversionHelper::NotificationToNotificationOptions(
new std::string(base::UTF16ToUTF8(rich_data->context_message)));
if (!rich_data->buttons.empty()) {
- scoped_ptr<std::vector<
- linked_ptr<extensions::api::notifications::NotificationButton> > >
- button_list(new std::vector<
- linked_ptr<extensions::api::notifications::NotificationButton> >);
- for (size_t i = 0; i < rich_data->buttons.size(); i++) {
- linked_ptr<extensions::api::notifications::NotificationButton> button(
- new extensions::api::notifications::NotificationButton);
- button->title = base::UTF16ToUTF8(rich_data->buttons[i].title);
-
- if (!rich_data->buttons[i].icon.IsEmpty()) {
+ options->buttons.reset(
+ new std::vector<extensions::api::notifications::NotificationButton>());
+ for (const message_center::ButtonInfo& button_info : rich_data->buttons) {
+ extensions::api::notifications::NotificationButton button;
+ button.title = base::UTF16ToUTF8(button_info.title);
+
+ if (!button_info.icon.IsEmpty()) {
scoped_ptr<extensions::api::notifications::NotificationBitmap> icon(
new extensions::api::notifications::NotificationBitmap());
- GfxImageToNotificationBitmap(&rich_data->buttons[i].icon, icon.get());
- button->icon_bitmap = std::move(icon);
+ GfxImageToNotificationBitmap(&button_info.icon, icon.get());
+ button.icon_bitmap = std::move(icon);
}
- button_list->push_back(button);
+ options->buttons->push_back(std::move(button));
}
- options->buttons = std::move(button_list);
}
// Only image type notifications should have images.
@@ -99,18 +95,14 @@ void NotificationConversionHelper::NotificationToNotificationOptions(
// Only list type notifications should have lists.
if (type == "list" && !rich_data->items.empty()) {
- scoped_ptr<std::vector<
- linked_ptr<extensions::api::notifications::NotificationItem> > >
- list(new std::vector<
- linked_ptr<extensions::api::notifications::NotificationItem> >);
- for (size_t j = 0; j < rich_data->items.size(); j++) {
- linked_ptr<extensions::api::notifications::NotificationItem> item(
- new extensions::api::notifications::NotificationItem);
- item->title = base::UTF16ToUTF8(rich_data->items[j].title);
- item->message = base::UTF16ToUTF8(rich_data->items[j].message);
- list->push_back(item);
+ options->items.reset(
+ new std::vector<extensions::api::notifications::NotificationItem>());
+ for (const message_center::NotificationItem& item : rich_data->items) {
+ extensions::api::notifications::NotificationItem api_item;
+ api_item.title = base::UTF16ToUTF8(item.title);
+ api_item.message = base::UTF16ToUTF8(item.message);
+ options->items->push_back(std::move(api_item));
}
- options->items = std::move(list);
} else if (type != "list" && !rich_data->items.empty()) {
DVLOG(1) << "Only list type notifications should have lists.";
}

Powered by Google App Engine
This is Rietveld 408576698