summaryrefslogtreecommitdiffstats
path: root/webkit/port/platform
diff options
context:
space:
mode:
authorhclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-12-18 21:40:36 +0000
committerhclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-12-18 21:40:36 +0000
commitec9212f3e7399920c6c50b8943549b995192c5cf (patch)
tree2f0ebe96ba5c4ec29457ea4f68aa702dc7a99afa /webkit/port/platform
parentf08f95e9d8e6f36be7162c77acefc834764209e1 (diff)
downloadchromium_src-ec9212f3e7399920c6c50b8943549b995192c5cf.zip
chromium_src-ec9212f3e7399920c6c50b8943549b995192c5cf.tar.gz
chromium_src-ec9212f3e7399920c6c50b8943549b995192c5cf.tar.bz2
Bridge out media player from MediaPlayerPrivate.
- Remove MediaPlayerPrivateChromium.cpp and move it to webkit/glue/media_player_private_impl.cc - Added the following classes: WebMediaPlayer WebMediaPlayerImpl WebMediaPlayerDelegate WebMediaPlayerDelegateImpl TestWebMediaPlayerDelegate VideoStackMediaPlayer (Just a forward declaration) - One include fix for webkit/glue/webframe.h - Overview of what each class is doing: WebMediaPlayer and WebMediaPlayerImpl Wrapper over the MediaPlayerPrivate, it provides methods like Repaint(), NotifyNetworkStateChange(), etc to VideoStackMediaPlayer. It also creates the ResourceHandle for VideoStackMediaPlayer for resource loading, or maybe VideoStackMediaPlayer can simply use webkit_glue::ResourceDispatcher? WebMediaPlayerDelegate, WebMediaPlayerDelegateImpl Delegate calls from webkit to the internal media player. MediaPlayerPrivate Forward calls to WebMidiaPlayerDelegate, creates WebMediaPlayerDelegate and WebMediaPlayer in the constructor. Expose some public methods to WebMediaPlayer so we can actually do repaint and notification of changes. Review URL: http://codereview.chromium.org/13762 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7256 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/port/platform')
-rw-r--r--webkit/port/platform/graphics/chromium/MediaPlayerPrivateChromium.h25
1 files changed, 17 insertions, 8 deletions
diff --git a/webkit/port/platform/graphics/chromium/MediaPlayerPrivateChromium.h b/webkit/port/platform/graphics/chromium/MediaPlayerPrivateChromium.h
index 42280df..06aeeb4 100644
--- a/webkit/port/platform/graphics/chromium/MediaPlayerPrivateChromium.h
+++ b/webkit/port/platform/graphics/chromium/MediaPlayerPrivateChromium.h
@@ -1,5 +1,5 @@
-// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
+// Copyright (c) 2006-2008 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.
#ifndef MediaPlayerPrivateChromium_h
@@ -9,6 +9,10 @@
#include "MediaPlayer.h"
+namespace webkit_glue {
+class WebMediaPlayerDelegate;
+}
+
namespace WebCore {
class MediaPlayerPrivate : public Noncopyable {
@@ -50,20 +54,25 @@ namespace WebCore {
void setVisible(bool);
void setRect(const IntRect&);
- void loadStateChanged();
- void didEnd();
-
void paint(GraphicsContext*, const IntRect&);
static void getSupportedTypes(HashSet<String>& types);
static bool isAvailable();
+ // Public methods to be called by WebMediaPlayer
+ FrameView* frameView();
+ void networkStateChanged();
+ void readyStateChanged();
+ void timeChanged();
+ void volumeChanged();
+ void repaint();
+
private:
MediaPlayer* m_player;
- MediaPlayer::NetworkState m_networkState;
- MediaPlayer::ReadyState m_readyState;
+ // TODO(hclam): MediaPlayerPrivateChromium should not know
+ // WebMediaPlayerDelegate, will need to get rid of this later.
+ webkit_glue::WebMediaPlayerDelegate* m_delegate;
};
-
}
#endif