Chromium Code Reviews| Index: Source/modules/permissions/PermissionStatus.cpp |
| diff --git a/Source/modules/permissions/PermissionStatus.cpp b/Source/modules/permissions/PermissionStatus.cpp |
| index 18765425e9d548b7a12ac6ff85ea1fbc2a02fba4..2173ca0dc25ff294e70fc674695570bbccf217a6 100644 |
| --- a/Source/modules/permissions/PermissionStatus.cpp |
| +++ b/Source/modules/permissions/PermissionStatus.cpp |
| @@ -5,18 +5,30 @@ |
| #include "config.h" |
| #include "modules/permissions/PermissionStatus.h" |
| +#include "bindings/core/v8/ScriptPromiseResolver.h" |
| #include "modules/EventTargetModulesNames.h" |
| namespace blink { |
| // static |
| -PermissionStatus* PermissionStatus::create(ExecutionContext* executionContext) |
| +PermissionStatus* PermissionStatus::take(ScriptPromiseResolver* resolver, WebPermissionStatus* status, WebPermissionType type) |
| { |
| - return new PermissionStatus(executionContext); |
| + PermissionStatus* permissionStatus = new PermissionStatus(resolver->executionContext(), type, *status); |
| + delete status; |
| + return permissionStatus; |
| } |
| -PermissionStatus::PermissionStatus(ExecutionContext* executionContext) |
| +// static |
| +void PermissionStatus::dispose(WebPermissionStatus* status) |
| +{ |
| + if (status) |
| + delete status; |
|
jochen (gone - plz use gerrit)
2015/03/10 13:16:42
just delete status, it can cope with nullptr
mlamouri (slow - plz ping)
2015/03/11 10:56:56
Done.
|
| +} |
| + |
| +PermissionStatus::PermissionStatus(ExecutionContext* executionContext, WebPermissionType permissionType, WebPermissionStatus permissionStatus) |
| : ContextLifecycleObserver(executionContext) |
| + , m_type(permissionType) |
| + , m_status(permissionStatus) |
| { |
| } |
| @@ -42,8 +54,17 @@ DEFINE_TRACE(PermissionStatus) |
| String PermissionStatus::status() const |
| { |
| - // FIXME: implement. |
| - return String(); |
| + switch (m_status) { |
| + case WebPermissionStatusGranted: |
| + return "granted"; |
| + case WebPermissionStatusDenied: |
| + return "denied"; |
| + case WebPermissionStatusPrompt: |
| + return "prompt"; |
| + } |
| + |
| + ASSERT_NOT_REACHED(); |
| + return "denied"; |
| } |
| } // namespace blink |