Diff
Modified: trunk/Source/Platform/ChangeLog (124420 => 124421)
--- trunk/Source/Platform/ChangeLog 2012-08-02 08:22:57 UTC (rev 124420)
+++ trunk/Source/Platform/ChangeLog 2012-08-02 08:23:13 UTC (rev 124421)
@@ -1,3 +1,28 @@
+2012-08-02 Tommy Widenflycht <[email protected]>
+
+ MediaStream API: Move RTCConfiguration to its proper place
+ https://bugs.webkit.org/show_bug.cgi?id=92867
+
+ Reviewed by Adam Barth.
+
+ This patch moves RTCConfiguration to Source/WebCore/platform/mediastream,
+ and adds its WebKit interface for chromium.
+
+ * Platform.gypi:
+ * chromium/public/WebRTCConfiguration.h: Added.
+ (WebCore):
+ (WebKit):
+ (WebRTCICEServer):
+ (WebKit::WebRTCICEServer::WebRTCICEServer):
+ (WebKit::WebRTCICEServer::~WebRTCICEServer):
+ (WebKit::WebRTCICEServer::operator=):
+ (WebKit::WebRTCICEServer::isNull):
+ (WebRTCConfiguration):
+ (WebKit::WebRTCConfiguration::WebRTCConfiguration):
+ (WebKit::WebRTCConfiguration::~WebRTCConfiguration):
+ (WebKit::WebRTCConfiguration::operator=):
+ (WebKit::WebRTCConfiguration::isNull):
+
2012-08-01 James Robinson <[email protected]>
[chromium] Move compositor HUD font atlas initialization code out of compositor core
Modified: trunk/Source/Platform/Platform.gypi (124420 => 124421)
--- trunk/Source/Platform/Platform.gypi 2012-08-02 08:22:57 UTC (rev 124420)
+++ trunk/Source/Platform/Platform.gypi 2012-08-02 08:23:13 UTC (rev 124421)
@@ -106,6 +106,7 @@
'chromium/public/WebPrerenderingSupport.h',
'chromium/public/WebPrivateOwnPtr.h',
'chromium/public/WebPrivatePtr.h',
+ 'chromium/public/WebRTCConfiguration.h',
'chromium/public/WebRect.h',
'chromium/public/WebReferrerPolicy.h',
'chromium/public/WebRenderingStats.h',
Added: trunk/Source/Platform/chromium/public/WebRTCConfiguration.h (0 => 124421)
--- trunk/Source/Platform/chromium/public/WebRTCConfiguration.h (rev 0)
+++ trunk/Source/Platform/chromium/public/WebRTCConfiguration.h 2012-08-02 08:23:13 UTC (rev 124421)
@@ -0,0 +1,106 @@
+/*
+ * 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * 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 WebRTCConfiguration_h
+#define WebRTCConfiguration_h
+
+#include "WebCommon.h"
+#include "WebNonCopyable.h"
+#include "WebPrivatePtr.h"
+#include "WebVector.h"
+
+namespace WebCore {
+class RTCIceServer;
+class RTCConfiguration;
+}
+
+namespace WebKit {
+class WebString;
+class WebURL;
+
+class WebRTCICEServer {
+public:
+ WebRTCICEServer() { }
+ WebRTCICEServer(const WebRTCICEServer& other) { assign(other); }
+ ~WebRTCICEServer() { reset(); }
+
+ WebRTCICEServer& operator=(const WebRTCICEServer& other)
+ {
+ assign(other);
+ return *this;
+ }
+
+ WEBKIT_EXPORT void assign(const WebRTCICEServer&);
+
+ WEBKIT_EXPORT void reset();
+ bool isNull() const { return m_private.isNull(); }
+
+ WEBKIT_EXPORT WebURL uri() const;
+ WEBKIT_EXPORT WebString credential() const;
+
+#if WEBKIT_IMPLEMENTATION
+ WebRTCICEServer(const WTF::PassRefPtr<WebCore::RTCIceServer>&);
+#endif
+
+private:
+ WebPrivatePtr<WebCore::RTCIceServer> m_private;
+};
+
+class WebRTCConfiguration {
+public:
+ WebRTCConfiguration() { }
+ WebRTCConfiguration(const WebRTCConfiguration& other) { assign(other); }
+ ~WebRTCConfiguration() { reset(); }
+
+ WebRTCConfiguration& operator=(const WebRTCConfiguration& other)
+ {
+ assign(other);
+ return *this;
+ }
+
+ WEBKIT_EXPORT void assign(const WebRTCConfiguration&);
+
+ WEBKIT_EXPORT void reset();
+ bool isNull() const { return m_private.isNull(); }
+
+ WEBKIT_EXPORT size_t numberOfServers() const;
+ WEBKIT_EXPORT WebRTCICEServer server(size_t index) const;
+
+#if WEBKIT_IMPLEMENTATION
+ WebRTCConfiguration(const WTF::PassRefPtr<WebCore::RTCConfiguration>&);
+#endif
+
+private:
+ WebPrivatePtr<WebCore::RTCConfiguration> m_private;
+};
+
+} // namespace WebKit
+
+#endif // WebRTCConfiguration_h
Modified: trunk/Source/WebCore/ChangeLog (124420 => 124421)
--- trunk/Source/WebCore/ChangeLog 2012-08-02 08:22:57 UTC (rev 124420)
+++ trunk/Source/WebCore/ChangeLog 2012-08-02 08:23:13 UTC (rev 124421)
@@ -1,3 +1,46 @@
+2012-08-02 Tommy Widenflycht <[email protected]>
+
+ MediaStream API: Move RTCConfiguration to its proper place
+ https://bugs.webkit.org/show_bug.cgi?id=92867
+
+ Reviewed by Adam Barth.
+
+ This patch moves RTCConfiguration to Source/WebCore/platform/mediastream,
+ and adds its WebKit interface for chromium.
+
+ No functional code changes.
+
+ * GNUmakefile.list.am:
+ * Modules/mediastream/RTCPeerConnection.cpp:
+ * WebCore.gypi:
+ * platform/chromium/support/WebRTCConfiguration.cpp: Added.
+ (WebKit):
+ (WebKit::WebRTCICEServer::WebRTCICEServer):
+ (WebKit::WebRTCICEServer::assign):
+ (WebKit::WebRTCICEServer::reset):
+ (WebKit::WebRTCICEServer::uri):
+ (WebKit::WebRTCICEServer::credential):
+ (WebKit::WebRTCConfiguration::WebRTCConfiguration):
+ (WebKit::WebRTCConfiguration::assign):
+ (WebKit::WebRTCConfiguration::reset):
+ (WebKit::WebRTCConfiguration::numberOfServers):
+ (WebKit::WebRTCConfiguration::server):
+ * platform/mediastream/RTCConfiguration.h: Added.
+ (WebCore):
+ (RTCIceServer):
+ (WebCore::RTCIceServer::create):
+ (WebCore::RTCIceServer::~RTCIceServer):
+ (WebCore::RTCIceServer::uri):
+ (WebCore::RTCIceServer::credential):
+ (WebCore::RTCIceServer::RTCIceServer):
+ (RTCConfiguration):
+ (WebCore::RTCConfiguration::create):
+ (WebCore::RTCConfiguration::~RTCConfiguration):
+ (WebCore::RTCConfiguration::appendServer):
+ (WebCore::RTCConfiguration::numberOfServers):
+ (WebCore::RTCConfiguration::server):
+ (WebCore::RTCConfiguration::RTCConfiguration):
+
2012-08-02 Alexander Shalamov <[email protected]>
[EFL] Browser crashes when non-progress element with -webkit-appearance:progress-bar is rendered
Modified: trunk/Source/WebCore/GNUmakefile.list.am (124420 => 124421)
--- trunk/Source/WebCore/GNUmakefile.list.am 2012-08-02 08:22:57 UTC (rev 124420)
+++ trunk/Source/WebCore/GNUmakefile.list.am 2012-08-02 08:23:13 UTC (rev 124421)
@@ -3561,6 +3561,7 @@
Source/WebCore/platform/mediastream/PeerConnection00Handler.cpp \
Source/WebCore/platform/mediastream/PeerConnection00Handler.h \
Source/WebCore/platform/mediastream/PeerConnection00HandlerClient.h \
+ Source/WebCore/platform/mediastream/RTCConfiguration.h \
Source/WebCore/platform/mediastream/SessionDescriptionDescriptor.cpp \
Source/WebCore/platform/mediastream/SessionDescriptionDescriptor.h \
Source/WebCore/platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp \
Modified: trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp (124420 => 124421)
--- trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp 2012-08-02 08:22:57 UTC (rev 124420)
+++ trunk/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp 2012-08-02 08:23:13 UTC (rev 124421)
@@ -37,46 +37,11 @@
#include "ArrayValue.h"
#include "ExceptionCode.h"
#include "KURL.h"
+#include "RTCConfiguration.h"
#include "ScriptExecutionContext.h"
namespace WebCore {
-// FIXME: RTCIceServer and RTCConfigration are placed here temporarily.
-// Their final place is in Source/WebCore/platform/mediastream.
-class RTCIceServer : public RefCounted<RTCIceServer> {
-public:
- static PassRefPtr<RTCIceServer> create(const KURL& uri, const String& credential) { return adoptRef(new RTCIceServer(uri, credential)); }
- virtual ~RTCIceServer() { }
-
- const KURL& uri() { return m_uri; }
- const String& credential() { return m_credential; }
-
-private:
- RTCIceServer(const KURL& uri, const String& credential)
- : m_uri(uri)
- , m_credential(credential)
- {
- }
-
- KURL m_uri;
- String m_credential;
-};
-
-class RTCConfiguration : public RefCounted<RTCConfiguration> {
-public:
- static PassRefPtr<RTCConfiguration> create() { return adoptRef(new RTCConfiguration()); }
- virtual ~RTCConfiguration() { }
-
- void appendServer(PassRefPtr<RTCIceServer> server) { m_servers.append(server); }
- size_t numberOfServers() { return m_servers.size(); }
- RTCIceServer* server(size_t index) { return m_servers[index].get(); }
-
-private:
- RTCConfiguration() { }
-
- Vector<RefPtr<RTCIceServer> > m_servers;
-};
-
PassRefPtr<RTCConfiguration> RTCPeerConnection::parseConfiguration(const Dictionary& configuration, ExceptionCode& ec)
{
if (configuration.isUndefinedOrNull())
Modified: trunk/Source/WebCore/WebCore.gypi (124420 => 124421)
--- trunk/Source/WebCore/WebCore.gypi 2012-08-02 08:22:57 UTC (rev 124420)
+++ trunk/Source/WebCore/WebCore.gypi 2012-08-02 08:23:13 UTC (rev 124421)
@@ -450,6 +450,7 @@
'platform/mediastream/MediaStreamSource.h',
'platform/mediastream/PeerConnection00Handler.h',
'platform/mediastream/PeerConnection00HandlerClient.h',
+ 'platform/mediastream/RTCConfiguration.h',
'platform/mediastream/SessionDescriptionDescriptor.cpp',
'platform/mediastream/SessionDescriptionDescriptor.h',
'platform/mediastream/chromium/MediaStreamCenterChromium.cpp',
@@ -8221,12 +8222,12 @@
'platform/chromium/support/WebICECandidateDescriptor.cpp',
'platform/chromium/support/WebICEOptions.cpp',
'platform/chromium/support/WebMediaHints.cpp',
- 'platform/chromium/support/WebMediaHints.cpp',
'platform/chromium/support/WebMediaStreamComponent.cpp',
'platform/chromium/support/WebMediaStreamDescriptor.cpp',
'platform/chromium/support/WebMediaStreamSource.cpp',
'platform/chromium/support/WebMediaStreamSourcesRequest.cpp',
'platform/chromium/support/WebPrerender.cpp',
+ 'platform/chromium/support/WebRTCConfiguration.cpp',
'platform/chromium/support/WebThreadSafeData.cpp',
'platform/chromium/support/WebTransformationMatrix.cpp',
'platform/chromium/support/WebTransformOperations.cpp',
Added: trunk/Source/WebCore/platform/chromium/support/WebRTCConfiguration.cpp (0 => 124421)
--- trunk/Source/WebCore/platform/chromium/support/WebRTCConfiguration.cpp (rev 0)
+++ trunk/Source/WebCore/platform/chromium/support/WebRTCConfiguration.cpp 2012-08-02 08:23:13 UTC (rev 124421)
@@ -0,0 +1,102 @@
+/*
+ * 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * 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 <public/WebRTCConfiguration.h>
+
+#include "RTCConfiguration.h"
+#include <public/WebString.h>
+#include <public/WebURL.h>
+#include <public/WebVector.h>
+
+using namespace WebCore;
+
+namespace WebKit {
+
+WebRTCICEServer::WebRTCICEServer(const PassRefPtr<RTCIceServer>& iceServer)
+ : m_private(iceServer)
+{
+}
+
+void WebRTCICEServer::assign(const WebRTCICEServer& other)
+{
+ m_private = other.m_private;
+}
+
+void WebRTCICEServer::reset()
+{
+ m_private.reset();
+}
+
+WebURL WebRTCICEServer::uri() const
+{
+ ASSERT(!isNull());
+ return m_private->uri();
+}
+
+WebString WebRTCICEServer::credential() const
+{
+ ASSERT(!isNull());
+ return m_private->credential();
+}
+
+WebRTCConfiguration::WebRTCConfiguration(const PassRefPtr<RTCConfiguration>& configuration)
+ : m_private(configuration)
+{
+}
+
+void WebRTCConfiguration::assign(const WebRTCConfiguration& other)
+{
+ m_private = other.m_private;
+}
+
+void WebRTCConfiguration::reset()
+{
+ m_private.reset();
+}
+
+size_t WebRTCConfiguration::numberOfServers() const
+{
+ ASSERT(!isNull());
+ return m_private->numberOfServers();
+}
+
+WebRTCICEServer WebRTCConfiguration::server(size_t index) const
+{
+ ASSERT(!isNull());
+ return WebRTCICEServer(m_private->server(index));
+}
+
+} // namespace WebKit
+
+#endif // ENABLE(MEDIA_STREAM)
Added: trunk/Source/WebCore/platform/mediastream/RTCConfiguration.h (0 => 124421)
--- trunk/Source/WebCore/platform/mediastream/RTCConfiguration.h (rev 0)
+++ trunk/Source/WebCore/platform/mediastream/RTCConfiguration.h 2012-08-02 08:23:13 UTC (rev 124421)
@@ -0,0 +1,85 @@
+/*
+ * 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 RTCConfiguration_h
+#define RTCConfiguration_h
+
+#if ENABLE(MEDIA_STREAM)
+
+#include "KURL.h"
+#include <wtf/PassRefPtr.h>
+#include <wtf/RefCounted.h>
+#include <wtf/Vector.h>
+#include <wtf/text/WTFString.h>
+
+namespace WebCore {
+
+class RTCIceServer : public RefCounted<RTCIceServer> {
+public:
+ static PassRefPtr<RTCIceServer> create(const KURL& uri, const String& credential)
+ {
+ return adoptRef(new RTCIceServer(uri, credential));
+ }
+ virtual ~RTCIceServer() { }
+
+ const KURL& uri() { return m_uri; }
+ const String& credential() { return m_credential; }
+
+private:
+ RTCIceServer(const KURL& uri, const String& credential)
+ : m_uri(uri)
+ , m_credential(credential)
+ {
+ }
+
+ KURL m_uri;
+ String m_credential;
+};
+
+class RTCConfiguration : public RefCounted<RTCConfiguration> {
+public:
+ static PassRefPtr<RTCConfiguration> create() { return adoptRef(new RTCConfiguration()); }
+ virtual ~RTCConfiguration() { }
+
+ void appendServer(PassRefPtr<RTCIceServer> server) { m_servers.append(server); }
+ size_t numberOfServers() { return m_servers.size(); }
+ RTCIceServer* server(size_t index) { return m_servers[index].get(); }
+
+ private:
+ RTCConfiguration() { }
+
+ Vector<RefPtr<RTCIceServer> > m_servers;
+};
+
+} // namespace WebCore
+
+#endif // ENABLE(MEDIA_STREAM)
+
+#endif // RTCConfiguration_h