diff options
| author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-03-12 14:11:15 +0100 |
|---|---|---|
| committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-03-12 14:11:15 +0100 |
| commit | dd91e772430dc294e3bf478c119ef8d43c0a3358 (patch) | |
| tree | 6f33ce4d5872a5691e0291eb45bf6ab373a5f567 /Source/WebCore/rendering/RenderVideo.cpp | |
| parent | ad0d549d4cc13433f77c1ac8f0ab379c83d93f28 (diff) | |
| download | qtwebkit-dd91e772430dc294e3bf478c119ef8d43c0a3358.tar.gz | |
Imported WebKit commit 3db4eb1820ac8fb03065d7ea73a4d9db1e8fea1a (http://svn.webkit.org/repository/webkit/trunk@110422)
This includes build fixes for the latest qtbase/qtdeclarative as well as the final QML2 API.
Diffstat (limited to 'Source/WebCore/rendering/RenderVideo.cpp')
| -rw-r--r-- | Source/WebCore/rendering/RenderVideo.cpp | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/Source/WebCore/rendering/RenderVideo.cpp b/Source/WebCore/rendering/RenderVideo.cpp index 01426090e..1fc87a7d2 100644 --- a/Source/WebCore/rendering/RenderVideo.cpp +++ b/Source/WebCore/rendering/RenderVideo.cpp @@ -198,21 +198,29 @@ void RenderVideo::paintReplaced(PaintInfo& paintInfo, const LayoutPoint& paintOf MediaPlayer* mediaPlayer = mediaElement()->player(); bool displayingPoster = videoElement()->shouldDisplayPosterImage(); + Page* page = 0; + if (Frame* frame = this->frame()) + page = frame->page(); + if (!displayingPoster) { - if (!mediaPlayer) + if (!mediaPlayer) { + if (page && paintInfo.phase == PaintPhaseForeground) + page->addRelevantUnpaintedObject(this, visualOverflowRect()); return; + } updatePlayer(); } LayoutRect rect = videoBox(); - if (rect.isEmpty()) + if (rect.isEmpty()) { + if (page && paintInfo.phase == PaintPhaseForeground) + page->addRelevantUnpaintedObject(this, visualOverflowRect()); return; + } rect.moveBy(paintOffset); - if (Frame* frame = this->frame()) { - if (Page* page = frame->page()) - page->addRelevantRepaintedObject(this, paintInfo.rect); - } + if (page && paintInfo.phase == PaintPhaseForeground) + page->addRelevantRepaintedObject(this, rect); if (displayingPoster) paintIntoRect(paintInfo.context, rect); |
