Title: [127083] trunk/Source/WebKit/blackberry
- Revision
- 127083
- Author
- commit-qu...@webkit.org
- Date
- 2012-08-29 19:07:51 -0700 (Wed, 29 Aug 2012)
Log Message
[BlackBerry] Move the handling of UserMedia requests to the client
https://bugs.webkit.org/show_bug.cgi?id=95317
PR #197283
Patch by Robin Cao <robin....@torchmobile.com.cn> on 2012-08-29
Reviewed by George Staikos.
Internally reviewed by George Staikos.
Move the logic for user media requests handling to the client, as it requires
inputs from users. Also adds a origin field to WebUserMediaRequest.
* Api/WebPageClient.h:
(Platform):
* WebCoreSupport/UserMediaClientImpl.cpp:
(WebCore::UserMediaClientImpl::UserMediaClientImpl):
(WebCore::UserMediaClientImpl::~UserMediaClientImpl):
(WebCore::UserMediaClientImpl::requestUserMedia):
(WebCore::UserMediaClientImpl::cancelUserMediaRequest):
* WebCoreSupport/UserMediaClientImpl.h:
(UserMediaClientImpl):
Modified Paths
Diff
Modified: trunk/Source/WebKit/blackberry/Api/WebPageClient.h (127082 => 127083)
--- trunk/Source/WebKit/blackberry/Api/WebPageClient.h 2012-08-30 02:05:15 UTC (rev 127082)
+++ trunk/Source/WebKit/blackberry/Api/WebPageClient.h 2012-08-30 02:07:51 UTC (rev 127083)
@@ -43,6 +43,7 @@
class IntRectRegion;
class NetworkRequest;
class NetworkStreamFactory;
+class WebUserMediaRequest;
namespace Graphics {
class Window;
@@ -269,6 +270,9 @@
virtual void registerProtocolHandler(const WebString& /*scheme*/, const WebString& /*baseURL*/, const WebString& /*url*/, const WebString& /*title*/) = 0;
virtual ProtocolHandlersState isProtocolHandlerRegistered(const WebString& /*scheme*/, const WebString& /*baseURL*/, const WebString& /*url*/) = 0;
virtual void unregisterProtocolHandler(const WebString& /*scheme*/, const WebString& /*baseURL*/, const WebString& /*url*/) = 0;
+
+ virtual void requestUserMedia(const Platform::WebUserMediaRequest&) = 0;
+ virtual void cancelUserMediaRequest(const Platform::WebUserMediaRequest&) = 0;
};
} // namespace WebKit
} // namespace BlackBerry
Modified: trunk/Source/WebKit/blackberry/ChangeLog (127082 => 127083)
--- trunk/Source/WebKit/blackberry/ChangeLog 2012-08-30 02:05:15 UTC (rev 127082)
+++ trunk/Source/WebKit/blackberry/ChangeLog 2012-08-30 02:07:51 UTC (rev 127083)
@@ -1,3 +1,26 @@
+2012-08-29 Robin Cao <robin....@torchmobile.com.cn>
+
+ [BlackBerry] Move the handling of UserMedia requests to the client
+ https://bugs.webkit.org/show_bug.cgi?id=95317
+ PR #197283
+
+ Reviewed by George Staikos.
+
+ Internally reviewed by George Staikos.
+
+ Move the logic for user media requests handling to the client, as it requires
+ inputs from users. Also adds a origin field to WebUserMediaRequest.
+
+ * Api/WebPageClient.h:
+ (Platform):
+ * WebCoreSupport/UserMediaClientImpl.cpp:
+ (WebCore::UserMediaClientImpl::UserMediaClientImpl):
+ (WebCore::UserMediaClientImpl::~UserMediaClientImpl):
+ (WebCore::UserMediaClientImpl::requestUserMedia):
+ (WebCore::UserMediaClientImpl::cancelUserMediaRequest):
+ * WebCoreSupport/UserMediaClientImpl.h:
+ (UserMediaClientImpl):
+
2012-08-29 Antonio Gomes <ago...@rim.com>
[BlackBerry] Replace blackberry specific HitTestRequest::FingerUp by TouchEvent + Release
Modified: trunk/Source/WebKit/blackberry/WebCoreSupport/UserMediaClientImpl.cpp (127082 => 127083)
--- trunk/Source/WebKit/blackberry/WebCoreSupport/UserMediaClientImpl.cpp 2012-08-30 02:05:15 UTC (rev 127082)
+++ trunk/Source/WebKit/blackberry/WebCoreSupport/UserMediaClientImpl.cpp 2012-08-30 02:07:51 UTC (rev 127083)
@@ -21,14 +21,18 @@
#if ENABLE(MEDIA_STREAM)
#include "MediaStreamDescriptor.h"
+#include "ScriptExecutionContext.h"
+#include "SecurityOrigin.h"
#include "WebPage.h"
+#include "WebPageClient.h"
#include <BlackBerryPlatformWebMediaStreamDescriptor.h>
-#include <BlackBerryPlatformWebUserMedia.h>
+#include <BlackBerryPlatformWebUserMediaRequest.h>
#include <wtf/HashMap.h>
#include <wtf/OwnPtr.h>
#include <wtf/PassOwnPtr.h>
#include <wtf/RefPtr.h>
+#include <wtf/text/CString.h>
using namespace BlackBerry::Platform;
@@ -95,14 +99,13 @@
RefPtr<UserMediaRequest> m_request;
};
-UserMediaClientImpl::UserMediaClientImpl(BlackBerry::WebKit::WebPage*)
- : m_webUserMedia(0)
+UserMediaClientImpl::UserMediaClientImpl(BlackBerry::WebKit::WebPage* page)
+ : m_page(page)
{
}
UserMediaClientImpl::~UserMediaClientImpl()
{
- BlackBerry::Platform::deleteGuardedObject(m_webUserMedia);
}
void UserMediaClientImpl::pageDestroyed()
@@ -114,7 +117,8 @@
UserMediaRequest* request = prpRequest.get();
OwnPtr<WebUserMediaRequestClientImpl> requestClient = adoptPtr(new WebUserMediaRequestClientImpl(prpRequest));
- webUserMedia()->requestUserMedia(WebUserMediaRequest(request->audio(), request->video(), requestClient.get()));
+ SecurityOrigin* origin = request->scriptExecutionContext()->securityOrigin();
+ m_page->client()->requestUserMedia(WebUserMediaRequest(request->audio(), request->video(), origin->toString().utf8().data(), requestClient.get()));
userMediaRequestsMap().add(request, requestClient.release());
}
@@ -124,16 +128,10 @@
if (it == userMediaRequestsMap().end())
return;
- webUserMedia()->cancelUserMediaRequest(WebUserMediaRequest(request->audio(), request->video(), it->second.get()));
+ SecurityOrigin* origin = request->scriptExecutionContext()->securityOrigin();
+ m_page->client()->cancelUserMediaRequest(WebUserMediaRequest(request->audio(), request->video(), origin->toString().utf8().data(), it->second.get()));
userMediaRequestsMap().remove(it);
}
-BlackBerry::Platform::WebUserMedia* UserMediaClientImpl::webUserMedia()
-{
- if (!m_webUserMedia)
- m_webUserMedia = new WebUserMedia;
- return m_webUserMedia;
}
-
-}
#endif
Modified: trunk/Source/WebKit/blackberry/WebCoreSupport/UserMediaClientImpl.h (127082 => 127083)
--- trunk/Source/WebKit/blackberry/WebCoreSupport/UserMediaClientImpl.h 2012-08-30 02:05:15 UTC (rev 127082)
+++ trunk/Source/WebKit/blackberry/WebCoreSupport/UserMediaClientImpl.h 2012-08-30 02:07:51 UTC (rev 127083)
@@ -30,11 +30,7 @@
namespace WebKit {
class WebPage;
}
-
-namespace Platform {
-class WebUserMedia;
}
-}
namespace WebCore {
@@ -51,9 +47,8 @@
private:
UserMediaClientImpl();
- BlackBerry::Platform::WebUserMedia* webUserMedia();
- BlackBerry::Platform::WebUserMedia* m_webUserMedia;
+ BlackBerry::WebKit::WebPage* m_page;
};
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes