diff options
author | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-03 04:52:53 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-03 04:52:53 +0000 |
commit | d43ed917b1f7e8f875d2ee2aa0587512e265e28e (patch) | |
tree | 64b04bda5e59e98a387235000779a2b050f9fa2b /webkit/glue/webmediaplayer_impl.cc | |
parent | 08e6413a6565ba434e1054a1df1c9fb778dad352 (diff) | |
download | chromium_src-d43ed917b1f7e8f875d2ee2aa0587512e265e28e.zip chromium_src-d43ed917b1f7e8f875d2ee2aa0587512e265e28e.tar.gz chromium_src-d43ed917b1f7e8f875d2ee2aa0587512e265e28e.tar.bz2 |
Merged with latest media pipeline and cleaned up some style stuff.
Changed WebMediaPlayerDelegateImpl to contains a PipelineImpl object rather keeping a pointer to Pipeline interface. Also added code for task coordination between pipeline thread and main thread.
Review URL: http://codereview.chromium.org/19481
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9069 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/webmediaplayer_impl.cc')
-rw-r--r-- | webkit/glue/webmediaplayer_impl.cc | 88 |
1 files changed, 13 insertions, 75 deletions
diff --git a/webkit/glue/webmediaplayer_impl.cc b/webkit/glue/webmediaplayer_impl.cc index 2c9fea3..e262ec4 100644 --- a/webkit/glue/webmediaplayer_impl.cc +++ b/webkit/glue/webmediaplayer_impl.cc @@ -37,7 +37,7 @@ void WebMediaPlayerImpl::Initialize(WebMediaPlayerDelegate* delegate){ } WebFrame* WebMediaPlayerImpl::GetWebFrame() { - if (media_player_private_->frameView()->frame()) { + if (media_player_private_ && media_player_private_->frameView()->frame()) { return WebFrameImpl::FromFrame( media_player_private_->frameView()->frame()); } else { @@ -45,93 +45,31 @@ WebFrame* WebMediaPlayerImpl::GetWebFrame() { } } -void WebMediaPlayerImpl::NotifynetworkStateChange() { - media_player_private_->networkStateChanged(); +void WebMediaPlayerImpl::NotifyNetworkStateChange() { + if (media_player_private_) + media_player_private_->networkStateChanged(); } void WebMediaPlayerImpl::NotifyReadyStateChange() { - media_player_private_->readyStateChanged(); + if (media_player_private_) + media_player_private_->readyStateChanged(); } void WebMediaPlayerImpl::NotifyTimeChange() { - media_player_private_->timeChanged(); + if (media_player_private_) + media_player_private_->timeChanged(); } void WebMediaPlayerImpl::NotifyVolumeChange() { - media_player_private_->volumeChanged(); + if (media_player_private_) + media_player_private_->volumeChanged(); } void WebMediaPlayerImpl::Repaint() { - media_player_private_->repaint(); -} - -void WebMediaPlayerImpl::LoadMediaResource(const GURL& url) { - // Make sure we cancel the previous load request before starting a new one. - CancelLoad(); - - WebCore::Frame* frame = static_cast<WebFrameImpl*>(GetWebFrame())->frame(); - WebCore::ResourceRequest request(webkit_glue::GURLToKURL(url), - WebCore::String(""), - WebCore::UseProtocolCachePolicy); - request.setTargetType(WebCore::ResourceRequest::TargetIsMedia); - request.setFrame(frame); - - resource_handle_ = WebCore::ResourceHandle::create(request, - this, - frame, - false, - true); -} - -void WebMediaPlayerImpl::CancelLoad() { - // Delegate the cancel call to ResourceHandle, this should be enough to - // stop any further callbacks from ResouceHandle. - if (resource_handle_) { - resource_handle_->cancel(); - resource_handle_ = NULL; - } -} - -void WebMediaPlayerImpl::willSendRequest( - WebCore::ResourceHandle* handle, - WebCore::ResourceRequest& request, - const WebCore::ResourceResponse& response) { - if (delegate_) { - delegate_->WillSendRequest(WebRequestImpl(request), - WebResponseImpl(response)); - } -} - -void WebMediaPlayerImpl::didReceiveResponse( - WebCore::ResourceHandle* handle, - const WebCore::ResourceResponse& response) { - if (delegate_) { - delegate_->DidReceiveResponse(WebResponseImpl(response)); - } -} - -void WebMediaPlayerImpl::didReceiveData(WebCore::ResourceHandle* handle, - const char *buffer, - int length, - int bytes_received) { - if (delegate_) { - delegate_->DidReceiveData(buffer, length); - } -} - -void WebMediaPlayerImpl::didFinishLoading(WebCore::ResourceHandle* handle) { - if (delegate_) { - delegate_->DidFinishLoading(); - } -} - -void WebMediaPlayerImpl::didFail(WebCore::ResourceHandle* handle, - const WebCore::ResourceError& error) { - if (delegate_) { - delegate_->DidFail(WebErrorImpl(error)); - } + if (media_player_private_) + media_player_private_->repaint(); } } // namespace webkit_glue -#endif +#endif // ENABLE(VIDEO) |