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

Unified Diff: content/child/notifications/notification_data_conversions.cc

Issue 2613003002: Use explicit WebString <-> string conversion methods for notifications (Closed)
Patch Set: build fix Created 3 years, 11 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
« no previous file with comments | « no previous file | content/child/notifications/notification_manager.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/child/notifications/notification_data_conversions.cc
diff --git a/content/child/notifications/notification_data_conversions.cc b/content/child/notifications/notification_data_conversions.cc
index 3e28497f81823af8c9f9c83fd9c779a3b74ab436..5e9e1406cae655bcbe782488cccffad04403dcd9 100644
--- a/content/child/notifications/notification_data_conversions.cc
+++ b/content/child/notifications/notification_data_conversions.cc
@@ -15,13 +15,14 @@
#include "third_party/WebKit/public/platform/modules/notifications/WebNotificationAction.h"
using blink::WebNotificationData;
+using blink::WebString;
namespace content {
PlatformNotificationData ToPlatformNotificationData(
const WebNotificationData& web_data) {
PlatformNotificationData platform_data;
- platform_data.title = web_data.title;
+ platform_data.title = web_data.title.utf16();
switch (web_data.direction) {
case WebNotificationData::DirectionLeftToRight:
@@ -37,12 +38,14 @@ PlatformNotificationData ToPlatformNotificationData(
break;
}
- platform_data.lang = base::UTF16ToUTF8(base::StringPiece16(web_data.lang));
- platform_data.body = web_data.body;
- platform_data.tag = base::UTF16ToUTF8(base::StringPiece16(web_data.tag));
- platform_data.image = blink::WebStringToGURL(web_data.image.string());
- platform_data.icon = blink::WebStringToGURL(web_data.icon.string());
- platform_data.badge = blink::WebStringToGURL(web_data.badge.string());
+ platform_data.lang = web_data.lang.utf8(
+ WebString::UTF8ConversionMode::kStrictReplacingErrorsWithFFFD);
+ platform_data.body = web_data.body.utf16();
+ platform_data.tag = web_data.tag.utf8(
+ WebString::UTF8ConversionMode::kStrictReplacingErrorsWithFFFD);
+ platform_data.image = WebStringToGURL(web_data.image.string());
+ platform_data.icon = WebStringToGURL(web_data.icon.string());
+ platform_data.badge = WebStringToGURL(web_data.badge.string());
platform_data.vibration_pattern.assign(web_data.vibrate.begin(),
web_data.vibrate.end());
platform_data.timestamp = base::Time::FromJsTime(web_data.timestamp);
@@ -64,12 +67,13 @@ PlatformNotificationData ToPlatformNotificationData(
NOTREACHED() << "Unknown notification action type: "
<< web_data.actions[i].type;
}
- platform_data.actions[i].action =
- base::UTF16ToUTF8(base::StringPiece16(web_data.actions[i].action));
- platform_data.actions[i].title = web_data.actions[i].title;
+ platform_data.actions[i].action = web_data.actions[i].action.utf8(
+ WebString::UTF8ConversionMode::kStrictReplacingErrorsWithFFFD);
+ platform_data.actions[i].title = web_data.actions[i].title.utf16();
platform_data.actions[i].icon =
- blink::WebStringToGURL(web_data.actions[i].icon.string());
- platform_data.actions[i].placeholder = web_data.actions[i].placeholder;
+ WebStringToGURL(web_data.actions[i].icon.string());
+ platform_data.actions[i].placeholder =
+ WebString::toNullableString16(web_data.actions[i].placeholder);
}
return platform_data;
@@ -78,7 +82,7 @@ PlatformNotificationData ToPlatformNotificationData(
WebNotificationData ToWebNotificationData(
const PlatformNotificationData& platform_data) {
WebNotificationData web_data;
- web_data.title = platform_data.title;
+ web_data.title = WebString::fromUTF16(platform_data.title);
switch (platform_data.direction) {
case PlatformNotificationData::DIRECTION_LEFT_TO_RIGHT:
@@ -92,9 +96,9 @@ WebNotificationData ToWebNotificationData(
break;
}
- web_data.lang = blink::WebString::fromUTF8(platform_data.lang);
- web_data.body = platform_data.body;
- web_data.tag = blink::WebString::fromUTF8(platform_data.tag);
+ web_data.lang = WebString::fromUTF8(platform_data.lang);
+ web_data.body = WebString::fromUTF16(platform_data.body);
+ web_data.tag = WebString::fromUTF8(platform_data.tag);
web_data.image = blink::WebURL(platform_data.image);
web_data.icon = blink::WebURL(platform_data.icon);
web_data.badge = blink::WebURL(platform_data.badge);
@@ -120,10 +124,12 @@ WebNotificationData ToWebNotificationData(
<< platform_data.actions[i].type;
}
web_data.actions[i].action =
- blink::WebString::fromUTF8(platform_data.actions[i].action);
- web_data.actions[i].title = platform_data.actions[i].title;
+ WebString::fromUTF8(platform_data.actions[i].action);
+ web_data.actions[i].title =
+ WebString::fromUTF16(platform_data.actions[i].title);
web_data.actions[i].icon = blink::WebURL(platform_data.actions[i].icon);
- web_data.actions[i].placeholder = platform_data.actions[i].placeholder;
+ web_data.actions[i].placeholder =
+ WebString::fromUTF16(platform_data.actions[i].placeholder);
}
return web_data;
« no previous file with comments | « no previous file | content/child/notifications/notification_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698