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

Unified Diff: Source/modules/app_banner/BeforeInstallPromptEvent.cpp

Issue 1160413004: Add hooks for BeforeInstallPromptEvent to be redispatched. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 6 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: Source/modules/app_banner/BeforeInstallPromptEvent.cpp
diff --git a/Source/modules/app_banner/BeforeInstallPromptEvent.cpp b/Source/modules/app_banner/BeforeInstallPromptEvent.cpp
index a11e7cd5a000f3bdb356628b4544d541f294dc86..4b9df061afcd3a32979b359c614712c73d0cee16 100644
--- a/Source/modules/app_banner/BeforeInstallPromptEvent.cpp
+++ b/Source/modules/app_banner/BeforeInstallPromptEvent.cpp
@@ -22,6 +22,7 @@ BeforeInstallPromptEvent::BeforeInstallPromptEvent(const AtomicString& name, con
, m_platforms(platforms)
, m_requestId(requestId)
, m_client(client)
+ , m_redispatched(false)
{
}
@@ -30,6 +31,7 @@ BeforeInstallPromptEvent::BeforeInstallPromptEvent(const AtomicString& name, con
, m_platforms(init.platforms())
, m_requestId(-1)
, m_client(nullptr)
+ , m_redispatched(false)
{
}
@@ -59,4 +61,16 @@ const AtomicString& BeforeInstallPromptEvent::interfaceName() const
return EventNames::BeforeInstallPromptEvent;
}
+void BeforeInstallPromptEvent::prompt()
+{
+ // This will silently fail if preventDefault() has not previously been
+ // called (the event cannot be redispatched if it has not been stopped).
+ // It will also silently fail if the event has already been redispatched.
mlamouri (slow - plz ping) 2015/06/06 21:40:55 Why silently failing? Why not having prompt() retu
+ if (m_client && defaultPrevented() && !m_redispatched) {
+ ASSERT(m_requestId != -1);
+ m_redispatched = true;
+ m_client->resolveEventRedispatch(m_requestId);
+ }
+}
+
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698