Index: third_party/WebKit/Source/modules/permissions/Permissions.h |
diff --git a/third_party/WebKit/Source/modules/permissions/Permissions.h b/third_party/WebKit/Source/modules/permissions/Permissions.h |
index cbac7809889557e0bca2c3147e76892ad3209011..3b4577e235c7a6bde2984f06f245e8638a694d12 100644 |
--- a/third_party/WebKit/Source/modules/permissions/Permissions.h |
+++ b/third_party/WebKit/Source/modules/permissions/Permissions.h |
@@ -8,28 +8,38 @@ |
#include "bindings/core/v8/ScriptPromise.h" |
#include "bindings/core/v8/ScriptWrappable.h" |
#include "platform/heap/Handle.h" |
+#include "public/platform/modules/permissions/permission.mojom-blink.h" |
namespace blink { |
class Dictionary; |
+class ScriptPromiseResolver; |
class ScriptState; |
class ScriptValue; |
class WebPermissionClient; |
class Permissions final |
- : public GarbageCollected<Permissions> |
+ : public GarbageCollectedFinalized<Permissions> |
, public ScriptWrappable { |
DEFINE_WRAPPERTYPEINFO(); |
public: |
DEFINE_INLINE_TRACE() { } |
// TODO(mlamouri): Find better place for this. https://crbug.com/510948 |
- static WebPermissionClient* getClient(ExecutionContext*); |
+ static bool connectToService(ExecutionContext*, mojom::blink::PermissionServiceRequest); |
ScriptPromise query(ScriptState*, const Dictionary&); |
ScriptPromise request(ScriptState*, const Dictionary&); |
ScriptPromise revoke(ScriptState*, const Dictionary&); |
ScriptPromise requestAll(ScriptState*, const Vector<Dictionary>&); |
+ |
+private: |
+ mojom::blink::PermissionService* getService(ExecutionContext*); |
+ void serviceConnectionError(); |
+ void taskComplete(ScriptPromiseResolver*, mojom::blink::PermissionName, mojom::blink::PermissionStatus); |
+ void batchTaskComplete(ScriptPromiseResolver*, Vector<mojom::blink::PermissionName>, Vector<int>, mojo::WTFArray<mojom::blink::PermissionStatus>); |
+ |
+ mojom::blink::PermissionServicePtr m_service; |
}; |
} // namespace blink |