| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 86 } | 86 } |
| 87 | 87 |
| 88 RefPtr<SerializedScriptValue> data; | 88 RefPtr<SerializedScriptValue> data; |
| 89 if (options.hasData()) { | 89 if (options.hasData()) { |
| 90 data = SerializedScriptValueFactory::instance().create(options.data().is
olate(), options.data(), nullptr, exceptionState); | 90 data = SerializedScriptValueFactory::instance().create(options.data().is
olate(), options.data(), nullptr, exceptionState); |
| 91 if (exceptionState.hadException()) | 91 if (exceptionState.hadException()) |
| 92 return nullptr; | 92 return nullptr; |
| 93 } | 93 } |
| 94 | 94 |
| 95 for (NotificationAction action : options.actions()) { | 95 for (NotificationAction action : options.actions()) { |
| 96 if (action.action().isEmpty()) { |
| 97 exceptionState.throwTypeError("NotificationAction action must not be
empty."); |
| 98 return nullptr; |
| 99 } |
| 96 if (action.title().isEmpty()) { | 100 if (action.title().isEmpty()) { |
| 97 exceptionState.throwTypeError("Notification action titles must not b
e empty."); | 101 exceptionState.throwTypeError("NotificationAction title must not be
empty."); |
| 98 return nullptr; | 102 return nullptr; |
| 99 } | 103 } |
| 100 } | 104 } |
| 101 | 105 |
| 102 Notification* notification = new Notification(title, context); | 106 Notification* notification = new Notification(title, context); |
| 103 | 107 |
| 104 notification->setBody(options.body()); | 108 notification->setBody(options.body()); |
| 105 notification->setTag(options.tag()); | 109 notification->setTag(options.tag()); |
| 106 notification->setLang(options.lang()); | 110 notification->setLang(options.lang()); |
| 107 notification->setDir(options.dir()); | 111 notification->setDir(options.dir()); |
| (...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 302 // when Blink supports [Exposed] annotations on class members in IDL definit
ions. | 306 // when Blink supports [Exposed] annotations on class members in IDL definit
ions. |
| 303 if (NotificationPermissionClient* permissionClient = NotificationPermissionC
lient::from(context)) | 307 if (NotificationPermissionClient* permissionClient = NotificationPermissionC
lient::from(context)) |
| 304 permissionClient->requestPermission(context, callback); | 308 permissionClient->requestPermission(context, callback); |
| 305 } | 309 } |
| 306 | 310 |
| 307 void Notification::webActionsToActions(const WebVector<WebNotificationAction>& w
ebActions, Vector<NotificationAction>& actions) | 311 void Notification::webActionsToActions(const WebVector<WebNotificationAction>& w
ebActions, Vector<NotificationAction>& actions) |
| 308 { | 312 { |
| 309 actions.clear(); | 313 actions.clear(); |
| 310 actions.grow(webActions.size()); | 314 actions.grow(webActions.size()); |
| 311 for (size_t i = 0; i < webActions.size(); ++i) { | 315 for (size_t i = 0; i < webActions.size(); ++i) { |
| 316 actions[i].setAction(webActions[i].action); |
| 312 actions[i].setTitle(webActions[i].title); | 317 actions[i].setTitle(webActions[i].title); |
| 313 } | 318 } |
| 314 } | 319 } |
| 315 | 320 |
| 316 bool Notification::dispatchEventInternal(PassRefPtrWillBeRawPtr<Event> event) | 321 bool Notification::dispatchEventInternal(PassRefPtrWillBeRawPtr<Event> event) |
| 317 { | 322 { |
| 318 ASSERT(executionContext()->isContextThread()); | 323 ASSERT(executionContext()->isContextThread()); |
| 319 return EventTarget::dispatchEventInternal(event); | 324 return EventTarget::dispatchEventInternal(event); |
| 320 } | 325 } |
| 321 | 326 |
| (...skipping 24 matching lines...) Expand all Loading... |
| 346 return ScriptValue(scriptState, m_serializedData->deserialize(scriptState->i
solate())); | 351 return ScriptValue(scriptState, m_serializedData->deserialize(scriptState->i
solate())); |
| 347 } | 352 } |
| 348 | 353 |
| 349 DEFINE_TRACE(Notification) | 354 DEFINE_TRACE(Notification) |
| 350 { | 355 { |
| 351 RefCountedGarbageCollectedEventTargetWithInlineData<Notification>::trace(vis
itor); | 356 RefCountedGarbageCollectedEventTargetWithInlineData<Notification>::trace(vis
itor); |
| 352 ActiveDOMObject::trace(visitor); | 357 ActiveDOMObject::trace(visitor); |
| 353 } | 358 } |
| 354 | 359 |
| 355 } // namespace blink | 360 } // namespace blink |
| OLD | NEW |