diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebCore/Modules/notifications/NotificationController.cpp | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/WebCore/Modules/notifications/NotificationController.cpp')
-rw-r--r-- | Source/WebCore/Modules/notifications/NotificationController.cpp | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/Source/WebCore/Modules/notifications/NotificationController.cpp b/Source/WebCore/Modules/notifications/NotificationController.cpp index 0a90889d4..fc08b276f 100644 --- a/Source/WebCore/Modules/notifications/NotificationController.cpp +++ b/Source/WebCore/Modules/notifications/NotificationController.cpp @@ -10,10 +10,10 @@ * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * - * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY + * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR @@ -29,31 +29,26 @@ #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS) #include "NotificationClient.h" -#include <wtf/PassOwnPtr.h> namespace WebCore { NotificationController::NotificationController(NotificationClient* client) - : m_client(client) + : m_client(*client) { + ASSERT(client); } NotificationController::~NotificationController() { - if (m_client) - m_client->notificationControllerDestroyed(); + m_client.notificationControllerDestroyed(); } -PassOwnPtr<NotificationController> NotificationController::create(NotificationClient* client) +NotificationClient* NotificationController::clientFrom(Page& page) { - return adoptPtr(new NotificationController(client)); -} - -NotificationClient* NotificationController::clientFrom(Page* page) -{ - if (NotificationController* controller = NotificationController::from(page)) - return controller->client(); - return 0; + auto* controller = NotificationController::from(&page); + if (!controller) + return nullptr; + return &controller->client(); } const char* NotificationController::supplementName() @@ -63,7 +58,7 @@ const char* NotificationController::supplementName() void provideNotification(Page* page, NotificationClient* client) { - NotificationController::provideTo(page, NotificationController::supplementName(), NotificationController::create(client)); + NotificationController::provideTo(page, NotificationController::supplementName(), std::make_unique<NotificationController>(client)); } } // namespace WebCore |