Index: third_party/WebKit/Source/modules/permissions/PermissionStatus.cpp |
diff --git a/third_party/WebKit/Source/modules/permissions/PermissionStatus.cpp b/third_party/WebKit/Source/modules/permissions/PermissionStatus.cpp |
index 517b8e137a5f73e6c8283d401b48f1d35994ddc9..ab358f7469d531ce80977c9e7abe18b95f5331d3 100644 |
--- a/third_party/WebKit/Source/modules/permissions/PermissionStatus.cpp |
+++ b/third_party/WebKit/Source/modules/permissions/PermissionStatus.cpp |
@@ -8,31 +8,31 @@ |
#include "core/dom/Document.h" |
#include "core/events/Event.h" |
#include "modules/EventTargetModulesNames.h" |
-#include "modules/permissions/Permissions.h" |
+#include "modules/permissions/PermissionUtils.h" |
#include "public/platform/Platform.h" |
#include "wtf/Functional.h" |
namespace blink { |
// static |
-PermissionStatus* PermissionStatus::take(ScriptPromiseResolver* resolver, MojoPermissionStatus status, MojoPermissionName name) |
+PermissionStatus* PermissionStatus::take(ScriptPromiseResolver* resolver, MojoPermissionStatus status, MojoPermissionDescriptor descriptor) |
{ |
- return PermissionStatus::createAndListen(resolver->getExecutionContext(), status, name); |
+ return PermissionStatus::createAndListen(resolver->getExecutionContext(), status, std::move(descriptor)); |
} |
-PermissionStatus* PermissionStatus::createAndListen(ExecutionContext* executionContext, MojoPermissionStatus status, MojoPermissionName name) |
+PermissionStatus* PermissionStatus::createAndListen(ExecutionContext* executionContext, MojoPermissionStatus status, MojoPermissionDescriptor descriptor) |
{ |
- PermissionStatus* permissionStatus = new PermissionStatus(executionContext, status, name); |
+ PermissionStatus* permissionStatus = new PermissionStatus(executionContext, status, std::move(descriptor)); |
permissionStatus->suspendIfNeeded(); |
permissionStatus->startListening(); |
return permissionStatus; |
} |
-PermissionStatus::PermissionStatus(ExecutionContext* executionContext, MojoPermissionStatus status, MojoPermissionName name) |
+PermissionStatus::PermissionStatus(ExecutionContext* executionContext, MojoPermissionStatus status, MojoPermissionDescriptor descriptor) |
: ActiveScriptWrappable(this) |
, ActiveDOMObject(executionContext) |
, m_status(status) |
- , m_name(name) |
+ , m_descriptor(std::move(descriptor)) |
{ |
} |
@@ -58,7 +58,8 @@ void PermissionStatus::permissionChanged(MojoPermissionStatus status) |
m_status = status; |
dispatchEvent(Event::create(EventTypeNames::change)); |
- m_service->GetNextPermissionChange(m_name, getExecutionContext()->getSecurityOrigin(), m_status, convertToBaseCallback(WTF::bind(&PermissionStatus::permissionChanged, wrapWeakPersistent(this)))); |
+ |
+ m_service->GetNextPermissionChange(m_descriptor->Clone(), getExecutionContext()->getSecurityOrigin(), m_status, convertToBaseCallback(WTF::bind(&PermissionStatus::permissionChanged, wrapWeakPersistent(this)))); |
} |
bool PermissionStatus::hasPendingActivity() const |
@@ -84,8 +85,8 @@ void PermissionStatus::stop() |
void PermissionStatus::startListening() |
{ |
DCHECK(!m_service); |
- Permissions::connectToService(getExecutionContext(), mojo::GetProxy(&m_service)); |
- m_service->GetNextPermissionChange(m_name, getExecutionContext()->getSecurityOrigin(), m_status, convertToBaseCallback(WTF::bind(&PermissionStatus::permissionChanged, wrapWeakPersistent(this)))); |
+ connectToPermissionService(getExecutionContext(), mojo::GetProxy(&m_service)); |
+ m_service->GetNextPermissionChange(m_descriptor->Clone(), getExecutionContext()->getSecurityOrigin(), m_status, convertToBaseCallback(WTF::bind(&PermissionStatus::permissionChanged, wrapWeakPersistent(this)))); |
} |
void PermissionStatus::stopListening() |