Index: third_party/WebKit/Source/modules/notifications/NotificationManager.h |
diff --git a/third_party/WebKit/Source/modules/notifications/NotificationManager.h b/third_party/WebKit/Source/modules/notifications/NotificationManager.h |
index d4b46f39331fae1e1bc863ffe6878be432526c18..afa0f0b1db31b94a48a5bad139294ec09b9b1422 100644 |
--- a/third_party/WebKit/Source/modules/notifications/NotificationManager.h |
+++ b/third_party/WebKit/Source/modules/notifications/NotificationManager.h |
@@ -8,6 +8,7 @@ |
#include "core/dom/ContextLifecycleObserver.h" |
#include "core/dom/ExecutionContext.h" |
#include "public/platform/modules/notifications/notification_service.mojom-blink.h" |
+#include "public/platform/modules/permissions/permission.mojom-blink.h" |
#include "wtf/Noncopyable.h" |
#include "wtf/text/WTFString.h" |
@@ -19,6 +20,11 @@ enum class PermissionStatus; |
} |
} |
+class NotificationPermissionCallback; |
+class ScriptPromise; |
+class ScriptPromiseResolver; |
+class ScriptState; |
+ |
// The notification manager, unique to the execution context, is responsible for |
// connecting and communicating with the Mojo notification service. |
// |
@@ -37,7 +43,9 @@ public: |
// Returns the notification permission status of the current origin. This |
// method is synchronous to support the Notification.permission getter. |
- mojom::blink::PermissionStatus permissionStatus() const; |
+ mojom::blink::PermissionStatus permissionStatus(); |
+ |
+ ScriptPromise requestPermission(ScriptState*, NotificationPermissionCallback* deprecatedCallback); |
// ContextLifecycleObserver implementation. |
void contextDestroyed() override; |
@@ -47,7 +55,10 @@ public: |
private: |
explicit NotificationManager(ExecutionContext*); |
- mojom::blink::NotificationServicePtr m_service; |
+ void onPermissionRequestComplete(ScriptPromiseResolver*, NotificationPermissionCallback*, mojom::blink::PermissionStatus); |
+ |
+ mojom::blink::NotificationServicePtr m_notificationService; |
+ mojom::blink::PermissionServicePtr m_permissionService; |
}; |
} // namespace blink |