summaryrefslogtreecommitdiff
path: root/Source/WebCore/Modules/notifications/NotificationController.cpp
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebCore/Modules/notifications/NotificationController.cpp
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/WebCore/Modules/notifications/NotificationController.cpp')
-rw-r--r--Source/WebCore/Modules/notifications/NotificationController.cpp27
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