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 |