| Index: Source/core/rendering/RenderVideo.cpp
|
| diff --git a/Source/core/rendering/RenderVideo.cpp b/Source/core/rendering/RenderVideo.cpp
|
| index b156fca11c4b0fcabe90479283608a80aaf48eee..57374941d833f6cb3a6f6a78b8220fe6df4f58c9 100644
|
| --- a/Source/core/rendering/RenderVideo.cpp
|
| +++ b/Source/core/rendering/RenderVideo.cpp
|
| @@ -34,6 +34,7 @@
|
| #include "core/frame/FrameView.h"
|
| #include "core/rendering/LayoutRectRecorder.h"
|
| #include "core/rendering/PaintInfo.h"
|
| +#include "core/rendering/RenderFullScreen.h"
|
| #include "platform/graphics/media/MediaPlayer.h"
|
| #include "public/platform/WebLayer.h"
|
|
|
| @@ -234,4 +235,45 @@
|
| return !!mediaElement()->platformLayer();
|
| }
|
|
|
| +static const RenderBlock* rendererPlaceholder(const RenderObject* renderer)
|
| +{
|
| + RenderObject* parent = renderer->parent();
|
| + if (!parent)
|
| + return 0;
|
| +
|
| + RenderFullScreen* fullScreen = parent->isRenderFullScreen() ? toRenderFullScreen(parent) : 0;
|
| + if (!fullScreen)
|
| + return 0;
|
| +
|
| + return fullScreen->placeholder();
|
| +}
|
| +
|
| +LayoutUnit RenderVideo::offsetLeft() const
|
| +{
|
| + if (const RenderBlock* block = rendererPlaceholder(this))
|
| + return block->offsetLeft();
|
| + return RenderMedia::offsetLeft();
|
| +}
|
| +
|
| +LayoutUnit RenderVideo::offsetTop() const
|
| +{
|
| + if (const RenderBlock* block = rendererPlaceholder(this))
|
| + return block->offsetTop();
|
| + return RenderMedia::offsetTop();
|
| +}
|
| +
|
| +LayoutUnit RenderVideo::offsetWidth() const
|
| +{
|
| + if (const RenderBlock* block = rendererPlaceholder(this))
|
| + return block->offsetWidth();
|
| + return RenderMedia::offsetWidth();
|
| +}
|
| +
|
| +LayoutUnit RenderVideo::offsetHeight() const
|
| +{
|
| + if (const RenderBlock* block = rendererPlaceholder(this))
|
| + return block->offsetHeight();
|
| + return RenderMedia::offsetHeight();
|
| +}
|
| +
|
| } // namespace WebCore
|
|
|