Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(392)

Unified Diff: third_party/WebKit/Source/modules/permissions/PermissionStatus.cpp

Issue 2255933002: Add PermissionDescriptor to the permissions Mojo interface. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@no_notification_dispatcher
Patch Set: Collect utility functions into PermissionUtils.h. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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()

Powered by Google App Engine
This is Rietveld 408576698