OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/child/notifications/notification_data_conversions.h" | 5 #include "content/child/notifications/notification_data_conversions.h" |
6 | 6 |
7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
8 #include "third_party/WebKit/public/platform/WebString.h" | 8 #include "third_party/WebKit/public/platform/WebString.h" |
9 #include "third_party/WebKit/public/platform/WebURL.h" | 9 #include "third_party/WebKit/public/platform/WebURL.h" |
10 | 10 |
11 using blink::WebNotificationData; | 11 using blink::WebNotificationData; |
12 | 12 |
13 namespace content { | 13 namespace content { |
14 | 14 |
15 PlatformNotificationData ToPlatformNotificationData( | 15 PlatformNotificationData ToPlatformNotificationData( |
16 const WebNotificationData& web_data) { | 16 const WebNotificationData& web_data) { |
17 PlatformNotificationData platform_data; | 17 PlatformNotificationData platform_data; |
18 platform_data.title = web_data.title; | 18 platform_data.title = web_data.title; |
19 platform_data.direction = | 19 |
20 web_data.direction == WebNotificationData::DirectionLeftToRight | 20 switch (web_data.direction) { |
21 ? PlatformNotificationData::NotificationDirectionLeftToRight | 21 case WebNotificationData::DirectionLeftToRight: |
22 : PlatformNotificationData::NotificationDirectionRightToLeft; | 22 platform_data.direction = |
| 23 PlatformNotificationData::DIRECTION_LEFT_TO_RIGHT; |
| 24 break; |
| 25 case WebNotificationData::DirectionRightToLeft: |
| 26 platform_data.direction = |
| 27 PlatformNotificationData::DIRECTION_RIGHT_TO_LEFT; |
| 28 break; |
| 29 case WebNotificationData::DirectionAuto: |
| 30 platform_data.direction = |
| 31 PlatformNotificationData::DIRECTION_AUTO; |
| 32 break; |
| 33 } |
| 34 |
23 platform_data.lang = base::UTF16ToUTF8(base::StringPiece16(web_data.lang)); | 35 platform_data.lang = base::UTF16ToUTF8(base::StringPiece16(web_data.lang)); |
24 platform_data.body = web_data.body; | 36 platform_data.body = web_data.body; |
25 platform_data.tag = base::UTF16ToUTF8(base::StringPiece16(web_data.tag)); | 37 platform_data.tag = base::UTF16ToUTF8(base::StringPiece16(web_data.tag)); |
26 platform_data.icon = GURL(web_data.icon.string()); | 38 platform_data.icon = GURL(web_data.icon.string()); |
27 platform_data.vibration_pattern.assign(web_data.vibrate.begin(), | 39 platform_data.vibration_pattern.assign(web_data.vibrate.begin(), |
28 web_data.vibrate.end()); | 40 web_data.vibrate.end()); |
29 platform_data.silent = web_data.silent; | 41 platform_data.silent = web_data.silent; |
30 platform_data.data.assign(web_data.data.begin(), web_data.data.end()); | 42 platform_data.data.assign(web_data.data.begin(), web_data.data.end()); |
31 | 43 |
32 return platform_data; | 44 return platform_data; |
33 } | 45 } |
34 | 46 |
35 WebNotificationData ToWebNotificationData( | 47 WebNotificationData ToWebNotificationData( |
36 const PlatformNotificationData& platform_data) { | 48 const PlatformNotificationData& platform_data) { |
37 WebNotificationData web_data; | 49 WebNotificationData web_data; |
38 web_data.title = platform_data.title; | 50 web_data.title = platform_data.title; |
39 web_data.direction = | 51 |
40 platform_data.direction == | 52 switch (platform_data.direction) { |
41 PlatformNotificationData::NotificationDirectionLeftToRight | 53 case PlatformNotificationData::DIRECTION_LEFT_TO_RIGHT: |
42 ? WebNotificationData::DirectionLeftToRight | 54 web_data.direction = WebNotificationData::DirectionLeftToRight; |
43 : WebNotificationData::DirectionRightToLeft; | 55 break; |
| 56 case PlatformNotificationData::DIRECTION_RIGHT_TO_LEFT: |
| 57 web_data.direction = WebNotificationData::DirectionRightToLeft; |
| 58 break; |
| 59 case PlatformNotificationData::DIRECTION_AUTO: |
| 60 web_data.direction = WebNotificationData::DirectionAuto; |
| 61 break; |
| 62 } |
| 63 |
44 web_data.lang = blink::WebString::fromUTF8(platform_data.lang); | 64 web_data.lang = blink::WebString::fromUTF8(platform_data.lang); |
45 web_data.body = platform_data.body; | 65 web_data.body = platform_data.body; |
46 web_data.tag = blink::WebString::fromUTF8(platform_data.tag); | 66 web_data.tag = blink::WebString::fromUTF8(platform_data.tag); |
47 web_data.icon = blink::WebURL(platform_data.icon); | 67 web_data.icon = blink::WebURL(platform_data.icon); |
48 web_data.vibrate = platform_data.vibration_pattern; | 68 web_data.vibrate = platform_data.vibration_pattern; |
49 web_data.silent = platform_data.silent; | 69 web_data.silent = platform_data.silent; |
50 web_data.data = platform_data.data; | 70 web_data.data = platform_data.data; |
51 | 71 |
52 return web_data; | 72 return web_data; |
53 } | 73 } |
54 | 74 |
55 } // namespace content | 75 } // namespace content |
OLD | NEW |