Title: [116317] trunk/Source
Revision
116317
Author
[email protected]
Date
2012-05-07 10:32:10 -0700 (Mon, 07 May 2012)

Log Message

MediaStream API: Allow UserMediaRequest::succeed to take an MediaStreamDescriptor
https://bugs.webkit.org/show_bug.cgi?id=85798

Reviewed by Adam Barth.

Source/Platform:

Adding another UserMediaRequest::succeed function that takes an MediaStreamDescriptor
instead of the two MediaStreamSource arrays.

* chromium/public/WebMediaStreamCenter.h:
(WebMediaStreamCenter):
(WebKit::WebMediaStreamCenter::constructSDP):

Source/WebCore:

Adding another UserMediaRequest::succeed function that takes an MediaStreamDescriptor
instead of the two MediaStreamSource arrays.

Not currently testable.

* Modules/mediastream/LocalMediaStream.cpp:
(WebCore::LocalMediaStream::create):
(WebCore):
(WebCore::LocalMediaStream::LocalMediaStream):
* Modules/mediastream/LocalMediaStream.h:
(LocalMediaStream):
* Modules/mediastream/UserMediaRequest.cpp:
(WebCore::UserMediaRequest::succeed):
(WebCore):
* Modules/mediastream/UserMediaRequest.h:
(WebCore):
(UserMediaRequest):

Source/WebKit/chromium:

Adding another WebUserMediaRequest::requestSucceed function that takes an
WebMediaStreamDescriptor instead of the two WebMediaStreamSource arrays.

* public/WebUserMediaRequest.h:
(WebKit):
(WebUserMediaRequest):
* src/WebUserMediaRequest.cpp:
(WebKit::WebUserMediaRequest::requestSucceeded):

Modified Paths

Diff

Modified: trunk/Source/Platform/ChangeLog (116316 => 116317)


--- trunk/Source/Platform/ChangeLog	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/Platform/ChangeLog	2012-05-07 17:32:10 UTC (rev 116317)
@@ -1,3 +1,17 @@
+2012-05-07  Tommy Widenflycht  <[email protected]>
+
+        MediaStream API: Allow UserMediaRequest::succeed to take an MediaStreamDescriptor
+        https://bugs.webkit.org/show_bug.cgi?id=85798
+
+        Reviewed by Adam Barth.
+
+        Adding another UserMediaRequest::succeed function that takes an MediaStreamDescriptor
+        instead of the two MediaStreamSource arrays.
+
+        * chromium/public/WebMediaStreamCenter.h:
+        (WebMediaStreamCenter):
+        (WebKit::WebMediaStreamCenter::constructSDP):
+
 2012-05-04  Tommy Widenflycht  <[email protected]>
 
         MediaStream API: Make PeerConnection00's API fully compliant with the draft

Modified: trunk/Source/WebCore/ChangeLog (116316 => 116317)


--- trunk/Source/WebCore/ChangeLog	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebCore/ChangeLog	2012-05-07 17:32:10 UTC (rev 116317)
@@ -1,3 +1,28 @@
+2012-05-07  Tommy Widenflycht  <[email protected]>
+
+        MediaStream API: Allow UserMediaRequest::succeed to take an MediaStreamDescriptor
+        https://bugs.webkit.org/show_bug.cgi?id=85798
+
+        Reviewed by Adam Barth.
+
+        Adding another UserMediaRequest::succeed function that takes an MediaStreamDescriptor
+        instead of the two MediaStreamSource arrays.
+
+        Not currently testable.
+
+        * Modules/mediastream/LocalMediaStream.cpp:
+        (WebCore::LocalMediaStream::create):
+        (WebCore):
+        (WebCore::LocalMediaStream::LocalMediaStream):
+        * Modules/mediastream/LocalMediaStream.h:
+        (LocalMediaStream):
+        * Modules/mediastream/UserMediaRequest.cpp:
+        (WebCore::UserMediaRequest::succeed):
+        (WebCore):
+        * Modules/mediastream/UserMediaRequest.h:
+        (WebCore):
+        (UserMediaRequest):
+
 2012-05-07  Michal Mocny  <[email protected]>
 
         [chromium] setContentsMemoryAllocationLimitBytes needs to setNeedsCommit.

Modified: trunk/Source/WebCore/Modules/mediastream/LocalMediaStream.cpp (116316 => 116317)


--- trunk/Source/WebCore/Modules/mediastream/LocalMediaStream.cpp	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebCore/Modules/mediastream/LocalMediaStream.cpp	2012-05-07 17:32:10 UTC (rev 116317)
@@ -35,14 +35,19 @@
 
 PassRefPtr<LocalMediaStream> LocalMediaStream::create(ScriptExecutionContext* context, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources)
 {
-    return adoptRef(new LocalMediaStream(context, audioSources, videoSources));
+    return adoptRef(new LocalMediaStream(context, MediaStreamDescriptor::create(createCanonicalUUIDString(), audioSources, videoSources)));
 }
 
-LocalMediaStream::LocalMediaStream(ScriptExecutionContext* context, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources)
-    : MediaStream(context, MediaStreamDescriptor::create(createCanonicalUUIDString(), audioSources, videoSources))
+PassRefPtr<LocalMediaStream> LocalMediaStream::create(ScriptExecutionContext* context, PassRefPtr<MediaStreamDescriptor> streamDescriptor)
 {
+    return adoptRef(new LocalMediaStream(context, streamDescriptor));
 }
 
+LocalMediaStream::LocalMediaStream(ScriptExecutionContext* context, PassRefPtr<MediaStreamDescriptor> streamDescriptor)
+    : MediaStream(context, streamDescriptor)
+{
+}
+
 void LocalMediaStream::stop()
 {
     if (readyState() == ENDED)

Modified: trunk/Source/WebCore/Modules/mediastream/LocalMediaStream.h (116316 => 116317)


--- trunk/Source/WebCore/Modules/mediastream/LocalMediaStream.h	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebCore/Modules/mediastream/LocalMediaStream.h	2012-05-07 17:32:10 UTC (rev 116317)
@@ -35,6 +35,7 @@
 class LocalMediaStream : public MediaStream {
 public:
     static PassRefPtr<LocalMediaStream> create(ScriptExecutionContext*, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources);
+    static PassRefPtr<LocalMediaStream> create(ScriptExecutionContext*, PassRefPtr<MediaStreamDescriptor>);
     virtual ~LocalMediaStream();
 
     void stop();
@@ -43,7 +44,7 @@
     virtual const AtomicString& interfaceName() const OVERRIDE;
 
 private:
-    LocalMediaStream(ScriptExecutionContext*, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources);
+    LocalMediaStream(ScriptExecutionContext*, PassRefPtr<MediaStreamDescriptor>);
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp (116316 => 116317)


--- trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp	2012-05-07 17:32:10 UTC (rev 116317)
@@ -38,6 +38,7 @@
 #include "Dictionary.h"
 #include "LocalMediaStream.h"
 #include "MediaStreamCenter.h"
+#include "MediaStreamDescriptor.h"
 #include "SpaceSplitString.h"
 #include "UserMediaController.h"
 
@@ -88,6 +89,15 @@
     m_successCallback->handleEvent(stream.get());
 }
 
+void UserMediaRequest::succeed(PassRefPtr<MediaStreamDescriptor> streamDescriptor)
+{
+    if (!m_scriptExecutionContext)
+        return;
+
+    RefPtr<LocalMediaStream> stream = LocalMediaStream::create(m_scriptExecutionContext, streamDescriptor);
+    m_successCallback->handleEvent(stream.get());
+}
+
 void UserMediaRequest::fail()
 {
     if (!m_scriptExecutionContext)

Modified: trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.h (116316 => 116317)


--- trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.h	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.h	2012-05-07 17:32:10 UTC (rev 116317)
@@ -45,6 +45,7 @@
 namespace WebCore {
 
 class Dictionary;
+class MediaStreamDescriptor;
 class UserMediaController;
 
 class UserMediaRequest : public MediaStreamSourcesQueryClient, public ContextDestructionObserver {
@@ -58,6 +59,7 @@
     void start();
 
     void succeed(const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources);
+    void succeed(PassRefPtr<MediaStreamDescriptor>);
     void fail();
 
     // MediaStreamSourcesQueryClient

Modified: trunk/Source/WebKit/chromium/ChangeLog (116316 => 116317)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-05-07 17:32:10 UTC (rev 116317)
@@ -1,3 +1,19 @@
+2012-05-07  Tommy Widenflycht  <[email protected]>
+
+        MediaStream API: Allow UserMediaRequest::succeed to take an MediaStreamDescriptor
+        https://bugs.webkit.org/show_bug.cgi?id=85798
+
+        Reviewed by Adam Barth.
+
+        Adding another WebUserMediaRequest::requestSucceed function that takes an
+        WebMediaStreamDescriptor instead of the two WebMediaStreamSource arrays.
+
+        * public/WebUserMediaRequest.h:
+        (WebKit):
+        (WebUserMediaRequest):
+        * src/WebUserMediaRequest.cpp:
+        (WebKit::WebUserMediaRequest::requestSucceeded):
+
 2012-05-07  Kinuko Yasuda  <[email protected]>
 
         Unreviewed: the same fix in another file for chromium win build.  Adding WebCore namespace to FileSystemTypes.

Modified: trunk/Source/WebKit/chromium/public/WebUserMediaRequest.h (116316 => 116317)


--- trunk/Source/WebKit/chromium/public/WebUserMediaRequest.h	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebKit/chromium/public/WebUserMediaRequest.h	2012-05-07 17:32:10 UTC (rev 116317)
@@ -41,6 +41,7 @@
 
 namespace WebKit {
 
+class WebMediaStreamDescriptor;
 class WebMediaStreamSource;
 class WebString;
 template <typename T> class WebVector;
@@ -67,7 +68,11 @@
 
     WEBKIT_EXPORT WebSecurityOrigin securityOrigin() const;
 
+    // DEPRECATED
     WEBKIT_EXPORT void requestSucceeded(const WebVector<WebMediaStreamSource>& audioSources, const WebVector<WebMediaStreamSource>& videoSources);
+
+    WEBKIT_EXPORT void requestSucceeded(const WebMediaStreamDescriptor&);
+
     WEBKIT_EXPORT void requestFailed();
 
 #if WEBKIT_IMPLEMENTATION

Modified: trunk/Source/WebKit/chromium/src/WebUserMediaRequest.cpp (116316 => 116317)


--- trunk/Source/WebKit/chromium/src/WebUserMediaRequest.cpp	2012-05-07 17:25:27 UTC (rev 116316)
+++ trunk/Source/WebKit/chromium/src/WebUserMediaRequest.cpp	2012-05-07 17:32:10 UTC (rev 116317)
@@ -36,11 +36,13 @@
 
 #include "Document.h"
 #include "Frame.h"
+#include "MediaStreamDescriptor.h"
 #include "MediaStreamSource.h"
 #include "Page.h"
 #include "SecurityOrigin.h"
 #include "UserMediaRequest.h"
 #include "WebSecurityOrigin.h"
+#include "platform/WebMediaStreamDescriptor.h"
 #include "platform/WebMediaStreamSource.h"
 #include "platform/WebString.h"
 #include "platform/WebVector.h"
@@ -95,6 +97,15 @@
     m_private->succeed(audio, video);
 }
 
+void WebUserMediaRequest::requestSucceeded(const WebMediaStreamDescriptor& streamDescriptor)
+{
+    ASSERT(!streamDescriptor.isNull());
+    if (m_private.isNull())
+        return;
+
+    m_private->succeed(streamDescriptor);
+}
+
 void WebUserMediaRequest::requestFailed()
 {
     m_private->fail();
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to