Diff
Modified: trunk/Source/WebCore/ChangeLog (110936 => 110937)
--- trunk/Source/WebCore/ChangeLog 2012-03-16 03:39:18 UTC (rev 110936)
+++ trunk/Source/WebCore/ChangeLog 2012-03-16 03:45:29 UTC (rev 110937)
@@ -1,3 +1,38 @@
+2012-03-15 Tommy Widenflycht <tom...@google.com>
+
+ MediaStream API (JSEP): Introducing MediaHints and IceOptions
+ https://bugs.webkit.org/show_bug.cgi?id=81207
+
+ Reviewed by Adam Barth.
+
+ Patch #4 in a series of patches to change the PeerConnection from ROAP to JSEP,
+ see bug 80589 for more information.
+ Introducing the platform MediaHints and IceOptions helper classes.
+
+ Not possible to test until the entire JSEP feature is commited.
+
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * platform/mediastream/IceOptions.cpp: Added.
+ (WebCore):
+ (WebCore::IceOptions::create):
+ * platform/mediastream/IceOptions.h: Added.
+ (WebCore):
+ (IceOptions):
+ (WebCore::IceOptions::~IceOptions):
+ (WebCore::IceOptions::useCandidates):
+ (WebCore::IceOptions::IceOptions):
+ * platform/mediastream/MediaHints.cpp: Added.
+ (WebCore):
+ (WebCore::MediaHints::create):
+ (WebCore::MediaHints::audio):
+ (WebCore::MediaHints::video):
+ * platform/mediastream/MediaHints.h: Added.
+ (WebCore):
+ (MediaHints):
+ (WebCore::MediaHints::~MediaHints):
+ (WebCore::MediaHints::MediaHints):
+
2012-03-15 Shinya Kawanaka <shin...@chromium.org>
[Crash] Adding <content> into a ShadowRoot causes crash.
Modified: trunk/Source/WebCore/GNUmakefile.list.am (110936 => 110937)
--- trunk/Source/WebCore/GNUmakefile.list.am 2012-03-16 03:39:18 UTC (rev 110936)
+++ trunk/Source/WebCore/GNUmakefile.list.am 2012-03-16 03:45:29 UTC (rev 110937)
@@ -3330,6 +3330,10 @@
Source/WebCore/platform/mediastream/DeprecatedPeerConnectionHandlerClient.h \
Source/WebCore/platform/mediastream/IceCandidateDescriptor.cpp \
Source/WebCore/platform/mediastream/IceCandidateDescriptor.h \
+ Source/WebCore/platform/mediastream/IceOptions.cpp \
+ Source/WebCore/platform/mediastream/IceOptions.h \
+ Source/WebCore/platform/mediastream/MediaHints.cpp \
+ Source/WebCore/platform/mediastream/MediaHints.h \
Source/WebCore/platform/mediastream/MediaStreamCenter.cpp \
Source/WebCore/platform/mediastream/MediaStreamCenter.h \
Source/WebCore/platform/mediastream/MediaStreamComponent.h \
Modified: trunk/Source/WebCore/WebCore.gypi (110936 => 110937)
--- trunk/Source/WebCore/WebCore.gypi 2012-03-16 03:39:18 UTC (rev 110936)
+++ trunk/Source/WebCore/WebCore.gypi 2012-03-16 03:45:29 UTC (rev 110937)
@@ -420,6 +420,10 @@
'platform/mediastream/DeprecatedPeerConnectionHandlerClient.h',
'platform/mediastream/IceCandidateDescriptor.cpp',
'platform/mediastream/IceCandidateDescriptor.h',
+ 'platform/mediastream/IceOptions.cpp',
+ 'platform/mediastream/IceOptions.h',
+ 'platform/mediastream/MediaHints.cpp',
+ 'platform/mediastream/MediaHints.h',
'platform/mediastream/MediaStreamCenter.cpp',
'platform/mediastream/MediaStreamCenter.h',
'platform/mediastream/MediaStreamComponent.h',
Added: trunk/Source/WebCore/platform/mediastream/IceOptions.cpp (0 => 110937)
--- trunk/Source/WebCore/platform/mediastream/IceOptions.cpp (rev 0)
+++ trunk/Source/WebCore/platform/mediastream/IceOptions.cpp 2012-03-16 03:45:29 UTC (rev 110937)
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2012 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * 3. Neither the name of Google Inc. nor the names of its contributors
+ * may be used to endorse or promote products derived from this
+ * software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+
+#if ENABLE(MEDIA_STREAM)
+
+#include "IceOptions.h"
+
+namespace WebCore {
+
+PassRefPtr<IceOptions> IceOptions::create(UseCandidatesOption useCandidates)
+{
+ return adoptRef(new IceOptions(useCandidates));
+}
+
+} // namespace WebCore
+
+#endif // ENABLE(MEDIA_STREAM)
Added: trunk/Source/WebCore/platform/mediastream/IceOptions.h (0 => 110937)
--- trunk/Source/WebCore/platform/mediastream/IceOptions.h (rev 0)
+++ trunk/Source/WebCore/platform/mediastream/IceOptions.h 2012-03-16 03:45:29 UTC (rev 110937)
@@ -0,0 +1,64 @@
+/*
+ * Copyright (C) 2012 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * 3. Neither the name of Google Inc. nor the names of its contributors
+ * may be used to endorse or promote products derived from this
+ * software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef IceOptions_h
+#define IceOptions_h
+
+#if ENABLE(MEDIA_STREAM)
+
+#include <wtf/PassRefPtr.h>
+#include <wtf/RefCounted.h>
+
+namespace WebCore {
+
+class IceOptions : public RefCounted<IceOptions> {
+public:
+ enum UseCandidatesOption {
+ ALL,
+ NO_RELAY,
+ ONLY_RELAY,
+ };
+
+ static PassRefPtr<IceOptions> create(UseCandidatesOption);
+ virtual ~IceOptions() { }
+
+ UseCandidatesOption useCandidates() { return m_useCandidates; }
+
+ private:
+ IceOptions(UseCandidatesOption useCandidates) : m_useCandidates(useCandidates) { }
+
+ UseCandidatesOption m_useCandidates;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(MEDIA_STREAM)
+
+#endif // IceOptions_h
Added: trunk/Source/WebCore/platform/mediastream/MediaHints.cpp (0 => 110937)
--- trunk/Source/WebCore/platform/mediastream/MediaHints.cpp (rev 0)
+++ trunk/Source/WebCore/platform/mediastream/MediaHints.cpp 2012-03-16 03:45:29 UTC (rev 110937)
@@ -0,0 +1,56 @@
+/*
+ * Copyright (C) 2012 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * 3. Neither the name of Google Inc. nor the names of its contributors
+ * may be used to endorse or promote products derived from this
+ * software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+
+#if ENABLE(MEDIA_STREAM)
+
+#include "MediaHints.h"
+
+namespace WebCore {
+
+PassRefPtr<MediaHints> MediaHints::create(bool audio, bool video)
+{
+ return adoptRef(new MediaHints(audio, video));
+}
+
+bool MediaHints::audio()
+{
+ return m_audio;
+}
+
+bool MediaHints::video()
+{
+ return m_video;
+}
+
+} // namespace WebCore
+
+#endif // ENABLE(MEDIA_STREAM)
Added: trunk/Source/WebCore/platform/mediastream/MediaHints.h (0 => 110937)
--- trunk/Source/WebCore/platform/mediastream/MediaHints.h (rev 0)
+++ trunk/Source/WebCore/platform/mediastream/MediaHints.h 2012-03-16 03:45:29 UTC (rev 110937)
@@ -0,0 +1,60 @@
+/*
+ * Copyright (C) 2012 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * 3. Neither the name of Google Inc. nor the names of its contributors
+ * may be used to endorse or promote products derived from this
+ * software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef MediaHints_h
+#define MediaHints_h
+
+#if ENABLE(MEDIA_STREAM)
+
+#include <wtf/PassRefPtr.h>
+#include <wtf/RefCounted.h>
+
+namespace WebCore {
+
+class MediaHints : public RefCounted<MediaHints> {
+public:
+ static PassRefPtr<MediaHints> create(bool audio, bool video);
+ virtual ~MediaHints() { }
+
+ bool audio();
+ bool video();
+
+ private:
+ MediaHints(bool audio, bool video) : m_audio(audio), m_video(video) { }
+
+ bool m_audio;
+ bool m_video;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(MEDIA_STREAM)
+
+#endif // MediaHints_h