Chromium Code Reviews| Index: third_party/WebKit/Source/modules/app_banner/BeforeInstallPromptEvent.h |
| diff --git a/third_party/WebKit/Source/modules/app_banner/BeforeInstallPromptEvent.h b/third_party/WebKit/Source/modules/app_banner/BeforeInstallPromptEvent.h |
| index c245656243a394bc9fe94c10bd6daa5450a808e9..3a0cf70c1d08c75664ed5527b1e137f16df7774a 100644 |
| --- a/third_party/WebKit/Source/modules/app_banner/BeforeInstallPromptEvent.h |
| +++ b/third_party/WebKit/Source/modules/app_banner/BeforeInstallPromptEvent.h |
| @@ -7,34 +7,39 @@ |
| #include "bindings/core/v8/ScriptPromise.h" |
| #include "bindings/core/v8/ScriptPromiseProperty.h" |
| +#include "core/frame/LocalFrame.h" |
| #include "modules/EventModules.h" |
| #include "modules/app_banner/AppBannerPromptResult.h" |
| -#include "platform/heap/Handle.h" |
| +#include "mojo/public/cpp/bindings/binding.h" |
| +#include "public/platform/modules/app_banner/app_banner.mojom-blink.h" |
| +#include <utility> |
| namespace blink { |
| class BeforeInstallPromptEvent; |
| class BeforeInstallPromptEventInit; |
| -class WebAppBannerClient; |
| using UserChoiceProperty = |
| ScriptPromiseProperty<Member<BeforeInstallPromptEvent>, |
| Member<AppBannerPromptResult>, |
| ToV8UndefinedGenerator>; |
| -class BeforeInstallPromptEvent final : public Event { |
| +class BeforeInstallPromptEvent final : public Event, |
| + public mojom::blink::AppBannerEvent { |
| DEFINE_WRAPPERTYPEINFO(); |
| + USING_PRE_FINALIZER(BeforeInstallPromptEvent, dispose); |
| public: |
| ~BeforeInstallPromptEvent() override; |
| - static BeforeInstallPromptEvent* create(const AtomicString& name, |
| - ExecutionContext* executionContext, |
| - const Vector<String>& platforms, |
| - int requestId, |
| - WebAppBannerClient* client) { |
| - return new BeforeInstallPromptEvent(name, executionContext, platforms, |
| - requestId, client); |
| + static BeforeInstallPromptEvent* create( |
| + const AtomicString& name, |
| + LocalFrame* frame, |
| + mojom::blink::AppBannerServicePtr servicePtr, |
| + mojom::blink::AppBannerEventRequest eventRequest, |
| + const Vector<String>& platforms) { |
| + return new BeforeInstallPromptEvent(name, frame, std::move(servicePtr), |
| + std::move(eventRequest), platforms); |
| } |
| static BeforeInstallPromptEvent* create( |
| @@ -43,6 +48,8 @@ class BeforeInstallPromptEvent final : public Event { |
| return new BeforeInstallPromptEvent(name, init); |
| } |
| + void dispose(); |
| + |
| Vector<String> platforms() const; |
| ScriptPromise userChoice(ScriptState*); |
| ScriptPromise prompt(ScriptState*); |
| @@ -54,19 +61,22 @@ class BeforeInstallPromptEvent final : public Event { |
| private: |
| BeforeInstallPromptEvent(const AtomicString& name, |
| - ExecutionContext*, |
| - const Vector<String>& platforms, |
| - int requestId, |
| - WebAppBannerClient*); |
| + LocalFrame*, |
|
dcheng
2016/10/19 06:15:58
Let's make LocalFrame* a reference here (and in cr
dominickn
2016/10/19 08:17:00
Done.
|
| + mojom::blink::AppBannerServicePtr, |
| + mojom::blink::AppBannerEventRequest, |
| + const Vector<String>& platforms); |
| BeforeInstallPromptEvent(const AtomicString& name, |
| const BeforeInstallPromptEventInit&); |
| - Vector<String> m_platforms; |
| + // mojom::blink::AppBannerEvent methods: |
| + void BannerAccepted(const String& platform) override; |
| + void BannerDismissed() override; |
| - int m_requestId; |
| - WebAppBannerClient* m_client; |
| + mojom::blink::AppBannerServicePtr m_bannerService; |
| + mojo::Binding<mojom::blink::AppBannerEvent> m_binding; |
| + Vector<String> m_platforms; |
| Member<UserChoiceProperty> m_userChoice; |
| - bool m_registered; |
| + bool m_promptCalled; |
| }; |
| DEFINE_TYPE_CASTS(BeforeInstallPromptEvent, |