| Index: webkit/media/android/webmediaplayer_proxy_android.cc
|
| diff --git a/webkit/media/android/webmediaplayer_proxy_android.cc b/webkit/media/android/webmediaplayer_proxy_android.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..902b15e38a3677d37d223641ab7099452fae3c63
|
| --- /dev/null
|
| +++ b/webkit/media/android/webmediaplayer_proxy_android.cc
|
| @@ -0,0 +1,102 @@
|
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "webkit/media/android/webmediaplayer_proxy_android.h"
|
| +
|
| +#include "base/bind.h"
|
| +#include "base/logging.h"
|
| +#include "base/message_loop.h"
|
| +#include "base/message_loop_proxy.h"
|
| +#include "webkit/media/android/webmediaplayer_android.h"
|
| +
|
| +namespace webkit_media {
|
| +
|
| +WebMediaPlayerProxyAndroid::WebMediaPlayerProxyAndroid(
|
| + const scoped_refptr<base::MessageLoopProxy>& render_loop)
|
| + : webmediaplayer_(NULL),
|
| + render_loop_(render_loop) {
|
| + DCHECK(render_loop_);
|
| +}
|
| +
|
| +WebMediaPlayerProxyAndroid::~WebMediaPlayerProxyAndroid() {
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::SetWebMediaPlayer(
|
| + WebMediaPlayerAndroid* webmediaplayer) {
|
| + webmediaplayer_ = webmediaplayer;
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::MediaErrorCallback(int error_type) {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::MediaErrorTask, this, error_type));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::MediaInfoCallback(int info_type) {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::MediaInfoTask, this, info_type));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::VideoSizeChangedCallback(
|
| + int width, int height) {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::VideoSizeChangedTask, this, width, height));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::BufferingUpdateCallback(int percent) {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::BufferingUpdateTask, this, percent));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::PlaybackCompleteCallback() {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::PlaybackCompleteTask, this));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::SeekCompleteCallback() {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::SeekCompleteTask, this));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::MediaPreparedCallback() {
|
| + render_loop_->PostTask(FROM_HERE, base::Bind(
|
| + &WebMediaPlayerProxyAndroid::MediaPreparedTask, this));
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::MediaErrorTask(int error_type) {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnMediaError(error_type);
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::MediaInfoTask(int info_type) {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnMediaInfo(info_type);
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::VideoSizeChangedTask(
|
| + int width, int height) {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnVideoSizeChanged(width, height);
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::BufferingUpdateTask(int percent) {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnBufferingUpdate(percent);
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::PlaybackCompleteTask() {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnPlaybackComplete();
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::SeekCompleteTask() {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnSeekComplete();
|
| +}
|
| +
|
| +void WebMediaPlayerProxyAndroid::MediaPreparedTask() {
|
| + if (webmediaplayer_)
|
| + webmediaplayer_->OnMediaPrepared();
|
| +}
|
| +
|
| +} // namespace webkit_media
|
|
|