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

Unified Diff: third_party/WebKit/Source/modules/presentation/PresentationAvailability.cpp

Issue 2148643002: [Presentation API] Adds DOMString[] constructor to PresentationRequest. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix PresentationAvailabilityCallbacks Created 4 years, 5 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/presentation/PresentationAvailability.cpp
diff --git a/third_party/WebKit/Source/modules/presentation/PresentationAvailability.cpp b/third_party/WebKit/Source/modules/presentation/PresentationAvailability.cpp
index 07f62d09e25dbb2f4f04d22bc05b4cd1c9e24ca8..16982269ae73989fe27b9f8a4e33f90724bc8dbb 100644
--- a/third_party/WebKit/Source/modules/presentation/PresentationAvailability.cpp
+++ b/third_party/WebKit/Source/modules/presentation/PresentationAvailability.cpp
@@ -12,6 +12,7 @@
#include "modules/presentation/PresentationController.h"
#include "public/platform/Platform.h"
#include "public/platform/modules/presentation/WebPresentationClient.h"
+#include "wtf/Vector.h"
namespace blink {
@@ -31,23 +32,27 @@ WebPresentationClient* presentationClient(ExecutionContext* executionContext)
} // anonymous namespace
// static
-PresentationAvailability* PresentationAvailability::take(ScriptPromiseResolver* resolver, const KURL& url, bool value)
+PresentationAvailability* PresentationAvailability::take(ScriptPromiseResolver* resolver, const WTF::Vector<KURL>& urls, bool value)
{
- PresentationAvailability* presentationAvailability = new PresentationAvailability(resolver->getExecutionContext(), url, value);
+ PresentationAvailability* presentationAvailability = new PresentationAvailability(resolver->getExecutionContext(), urls, value);
presentationAvailability->suspendIfNeeded();
presentationAvailability->updateListening();
return presentationAvailability;
}
-PresentationAvailability::PresentationAvailability(ExecutionContext* executionContext, const KURL& url, bool value)
+PresentationAvailability::PresentationAvailability(ExecutionContext* executionContext, const WTF::Vector<KURL>& urls, bool value)
: ActiveScriptWrappable(this)
, ActiveDOMObject(executionContext)
, PageVisibilityObserver(toDocument(executionContext)->page())
- , m_url(url)
, m_value(value)
, m_state(State::Active)
{
ASSERT(executionContext->isDocument());
+ WebVector<WebURL> data(urls.size());
+ for (size_t i = 0; i < urls.size(); ++i) {
+ data[i] = WebURL(urls[i]);
+ }
mlamouri (slow - plz ping) 2016/07/19 12:45:03 style: we don't use { } when not needed usually.
mark a. foltz 2016/07/19 17:38:47 Done.
+ m_urls.swap(data);
mlamouri (slow - plz ping) 2016/07/19 12:45:03 nit: I am probably missing something but could you
mark a. foltz 2016/07/19 17:38:47 WebVector does not provide any method to resize it
mlamouri (slow - plz ping) 2016/07/20 13:02:10 I'm speechless :)
imcheng 2016/07/20 17:20:45 But you can initialize m_urls with a size param, r
}
PresentationAvailability::~PresentationAvailability()
@@ -125,9 +130,9 @@ void PresentationAvailability::updateListening()
client->stopListening(this);
}
-const WebURL PresentationAvailability::url() const
+const WebVector<WebURL>& PresentationAvailability::urls() const
{
- return WebURL(m_url);
+ return m_urls;
}
bool PresentationAvailability::value() const

Powered by Google App Engine
This is Rietveld 408576698