Diff
Modified: trunk/Source/Platform/ChangeLog (139351 => 139352)
--- trunk/Source/Platform/ChangeLog 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/Platform/ChangeLog 2013-01-10 20:44:15 UTC (rev 139352)
@@ -1,3 +1,19 @@
+2013-01-10 Tommy Widenflycht <tom...@google.com>
+
+ MediaStream API: Adding the new id attribute to MediaStream and MediaStreamTrack
+ https://bugs.webkit.org/show_bug.cgi?id=106564
+
+ Reviewed by Adam Barth.
+
+ Specification: http://dev.w3.org/2011/webrtc/editor/getusermedia.html
+ MediaStream looses its label attribute and instead gets an id attribute.
+ MediaStreamTrack gets an id attribute.
+
+ * chromium/public/WebMediaStreamComponent.h:
+ (WebMediaStreamComponent):
+ * chromium/public/WebMediaStreamDescriptor.h:
+ (WebMediaStreamDescriptor):
+
2013-01-09 Chris Rogers <crog...@google.com>
Allow live/local audio input to be enabled only when needed
Modified: trunk/Source/Platform/chromium/public/WebMediaStreamComponent.h (139351 => 139352)
--- trunk/Source/Platform/chromium/public/WebMediaStreamComponent.h 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/Platform/chromium/public/WebMediaStreamComponent.h 2013-01-10 20:44:15 UTC (rev 139352)
@@ -56,9 +56,12 @@
return *this;
}
WEBKIT_EXPORT void assign(const WebMediaStreamComponent&);
+ WEBKIT_EXPORT void initialize(const WebMediaStreamSource&);
WEBKIT_EXPORT void reset();
bool isNull() const { return m_private.isNull(); }
+ WEBKIT_EXPORT WebString id() const;
+
WEBKIT_EXPORT WebMediaStreamSource source() const;
WEBKIT_EXPORT bool isEnabled() const;
Modified: trunk/Source/Platform/chromium/public/WebMediaStreamDescriptor.h (139351 => 139352)
--- trunk/Source/Platform/chromium/public/WebMediaStreamDescriptor.h 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/Platform/chromium/public/WebMediaStreamDescriptor.h 2013-01-10 20:44:15 UTC (rev 139352)
@@ -63,8 +63,11 @@
WEBKIT_EXPORT void reset();
bool isNull() const { return m_private.isNull(); }
+ // DEPRECATED
WEBKIT_EXPORT WebString label() const;
+ WEBKIT_EXPORT WebString id() const;
+
WEBKIT_EXPORT void audioSources(WebVector<WebMediaStreamComponent>&) const;
WEBKIT_EXPORT void videoSources(WebVector<WebMediaStreamComponent>&) const;
Modified: trunk/Source/WebCore/ChangeLog (139351 => 139352)
--- trunk/Source/WebCore/ChangeLog 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/ChangeLog 2013-01-10 20:44:15 UTC (rev 139352)
@@ -1,3 +1,46 @@
+2013-01-10 Tommy Widenflycht <tom...@google.com>
+
+ MediaStream API: Adding the new id attribute to MediaStream and MediaStreamTrack
+ https://bugs.webkit.org/show_bug.cgi?id=106564
+
+ Reviewed by Adam Barth.
+
+ Specification: http://dev.w3.org/2011/webrtc/editor/getusermedia.html
+ MediaStream looses its label attribute and instead gets an id attribute.
+ MediaStreamTrack gets an id attribute.
+
+ Not testable yet, will add tests in a followup patch.
+
+ * Modules/mediastream/MediaStream.h:
+ (WebCore::MediaStream::label):
+ (MediaStream):
+ (WebCore::MediaStream::id):
+ * Modules/mediastream/MediaStream.idl:
+ * Modules/mediastream/MediaStreamTrack.cpp:
+ (WebCore::MediaStreamTrack::id):
+ (WebCore):
+ * Modules/mediastream/MediaStreamTrack.h:
+ * Modules/mediastream/MediaStreamTrack.idl:
+ * platform/chromium/support/WebMediaStreamComponent.cpp:
+ (WebKit::WebMediaStreamComponent::initialize):
+ (WebKit):
+ (WebKit::WebMediaStreamComponent::isEnabled):
+ (WebKit::WebMediaStreamComponent::id):
+ (WebKit::WebMediaStreamComponent::source):
+ * platform/chromium/support/WebMediaStreamDescriptor.cpp:
+ (WebKit::WebMediaStreamDescriptor::label):
+ (WebKit):
+ (WebKit::WebMediaStreamDescriptor::id):
+ * platform/mediastream/MediaStreamComponent.h:
+ (WebCore::MediaStreamComponent::id):
+ (WebCore::MediaStreamComponent::MediaStreamComponent):
+ (MediaStreamComponent):
+ * platform/mediastream/MediaStreamDescriptor.h:
+ (WebCore::MediaStreamDescriptor::create):
+ (WebCore::MediaStreamDescriptor::id):
+ (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
+ (MediaStreamDescriptor):
+
2013-01-10 Ojan Vafai <o...@chromium.org>
Flexboxes incorrectly add the scrollbar width to the intrinsic width of fixed-width items
Modified: trunk/Source/WebCore/Modules/mediastream/MediaStream.h (139351 => 139352)
--- trunk/Source/WebCore/Modules/mediastream/MediaStream.h 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStream.h 2013-01-10 20:44:15 UTC (rev 139352)
@@ -53,8 +53,12 @@
DEFINE_ATTRIBUTE_EVENT_LISTENER(ended);
ReadyState readyState() const;
- String label() const { return m_descriptor->label(); }
+ // DEPRECATED
+ String label() const { return m_descriptor->id(); }
+
+ String id() const { return m_descriptor->id(); }
+
MediaStreamTrackList* audioTracks() { return m_audioTracks.get(); }
MediaStreamTrackList* videoTracks() { return m_videoTracks.get(); }
Modified: trunk/Source/WebCore/Modules/mediastream/MediaStream.idl (139351 => 139352)
--- trunk/Source/WebCore/Modules/mediastream/MediaStream.idl 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStream.idl 2013-01-10 20:44:15 UTC (rev 139352)
@@ -30,13 +30,15 @@
Constructor(in MediaStreamTrack[] tracks),
ConstructorParameters=0,
CallWith=ScriptExecutionContext,
- ] interface MediaStream {
+] interface MediaStream {
+ // DEPRECATED
readonly attribute DOMString label;
+
+ readonly attribute DOMString id;
+
readonly attribute MediaStreamTrackList audioTracks;
readonly attribute MediaStreamTrackList videoTracks;
- // FIXME: implement the record method when MediaStreamRecorder is available.
-
const unsigned short LIVE = 1;
const unsigned short ENDED = 2;
readonly attribute unsigned short readyState;
Modified: trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp (139351 => 139352)
--- trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp 2013-01-10 20:44:15 UTC (rev 139352)
@@ -71,6 +71,11 @@
return audioKind;
}
+String MediaStreamTrack::id() const
+{
+ return m_component->id();
+}
+
String MediaStreamTrack::label() const
{
return m_component->source()->name();
Modified: trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h (139351 => 139352)
--- trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h 2013-01-10 20:44:15 UTC (rev 139352)
@@ -53,6 +53,7 @@
virtual ~MediaStreamTrack();
String kind() const;
+ String id() const;
String label() const;
bool enabled() const;
Modified: trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl (139351 => 139352)
--- trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl 2013-01-10 20:44:15 UTC (rev 139352)
@@ -28,6 +28,7 @@
ActiveDOMObject
] interface MediaStreamTrack {
readonly attribute DOMString kind;
+ readonly attribute DOMString id;
readonly attribute DOMString label;
attribute boolean enabled;
Modified: trunk/Source/WebCore/platform/chromium/support/WebMediaStreamComponent.cpp (139351 => 139352)
--- trunk/Source/WebCore/platform/chromium/support/WebMediaStreamComponent.cpp 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/platform/chromium/support/WebMediaStreamComponent.cpp 2013-01-10 20:44:15 UTC (rev 139352)
@@ -54,6 +54,11 @@
return *this;
}
+void WebMediaStreamComponent::initialize(const WebMediaStreamSource& source)
+{
+ m_private = MediaStreamComponent::create(source);
+}
+
void WebMediaStreamComponent::reset()
{
m_private.reset();
@@ -72,13 +77,19 @@
bool WebMediaStreamComponent::isEnabled() const
{
ASSERT(!m_private.isNull());
- return m_private.get()->enabled();
+ return m_private->enabled();
}
+WebString WebMediaStreamComponent::id() const
+{
+ ASSERT(!m_private.isNull());
+ return m_private->id();
+}
+
WebMediaStreamSource WebMediaStreamComponent::source() const
{
ASSERT(!m_private.isNull());
- return WebMediaStreamSource(m_private.get()->source());
+ return WebMediaStreamSource(m_private->source());
}
void WebMediaStreamComponent::assign(const WebMediaStreamComponent& other)
Modified: trunk/Source/WebCore/platform/chromium/support/WebMediaStreamDescriptor.cpp (139351 => 139352)
--- trunk/Source/WebCore/platform/chromium/support/WebMediaStreamDescriptor.cpp 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/platform/chromium/support/WebMediaStreamDescriptor.cpp 2013-01-10 20:44:15 UTC (rev 139352)
@@ -65,9 +65,14 @@
WebString WebMediaStreamDescriptor::label() const
{
- return m_private->label();
+ return m_private->id();
}
+WebString WebMediaStreamDescriptor::id() const
+{
+ return m_private->id();
+}
+
class ExtraDataContainer : public WebCore::MediaStreamDescriptor::ExtraData {
public:
ExtraDataContainer(WebMediaStreamDescriptor::ExtraData* extraData) : m_extraData(WTF::adoptPtr(extraData)) { }
Modified: trunk/Source/WebCore/platform/mediastream/MediaStreamComponent.h (139351 => 139352)
--- trunk/Source/WebCore/platform/mediastream/MediaStreamComponent.h 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/platform/mediastream/MediaStreamComponent.h 2013-01-10 20:44:15 UTC (rev 139352)
@@ -34,6 +34,7 @@
#if ENABLE(MEDIA_STREAM)
#include "MediaStreamSource.h"
+#include "UUID.h"
namespace WebCore {
@@ -46,17 +47,20 @@
MediaStreamSource* source() const { return m_source.get(); }
+ String id() const { return m_id; }
bool enabled() const { return m_enabled; }
void setEnabled(bool enabled) { m_enabled = enabled; }
private:
MediaStreamComponent(PassRefPtr<MediaStreamSource> source)
: m_source(source)
+ , m_id(createCanonicalUUIDString())
, m_enabled(true)
{
}
RefPtr<MediaStreamSource> m_source;
+ String m_id;
bool m_enabled;
};
Modified: trunk/Source/WebCore/platform/mediastream/MediaStreamDescriptor.h (139351 => 139352)
--- trunk/Source/WebCore/platform/mediastream/MediaStreamDescriptor.h 2013-01-10 20:32:24 UTC (rev 139351)
+++ trunk/Source/WebCore/platform/mediastream/MediaStreamDescriptor.h 2013-01-10 20:44:15 UTC (rev 139352)
@@ -56,15 +56,15 @@
virtual ~ExtraData() { }
};
- static PassRefPtr<MediaStreamDescriptor> create(const String& label, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources)
+ static PassRefPtr<MediaStreamDescriptor> create(const String& id, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources)
{
- return adoptRef(new MediaStreamDescriptor(label, audioSources, videoSources));
+ return adoptRef(new MediaStreamDescriptor(id, audioSources, videoSources));
}
MediaStreamDescriptorClient* client() const { return m_client; }
void setClient(MediaStreamDescriptorClient* client) { m_client = client; }
- String label() const { return m_label; }
+ String id() const { return m_id; }
unsigned numberOfAudioComponents() const { return m_audioComponents.size(); }
MediaStreamComponent* audioComponent(unsigned index) const { return m_audioComponents[index].get(); }
@@ -79,9 +79,9 @@
void setExtraData(PassRefPtr<ExtraData> extraData) { m_extraData = extraData; }
private:
- MediaStreamDescriptor(const String& label, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources)
+ MediaStreamDescriptor(const String& id, const MediaStreamSourceVector& audioSources, const MediaStreamSourceVector& videoSources)
: m_client(0)
- , m_label(label)
+ , m_id(id)
, m_ended(false)
{
for (size_t i = 0; i < audioSources.size(); i++)
@@ -92,7 +92,7 @@
}
MediaStreamDescriptorClient* m_client;
- String m_label;
+ String m_id;
Vector<RefPtr<MediaStreamComponent> > m_audioComponents;
Vector<RefPtr<MediaStreamComponent> > m_videoComponents;
bool m_ended;