Index: Source/core/rendering/RenderFullScreen.cpp |
diff --git a/Source/core/rendering/RenderFullScreen.cpp b/Source/core/rendering/RenderFullScreen.cpp |
index 39f9c11fe6efea69440bd02282a707670912dc61..7cc0ac00bd29fea95a16681bfedc2ac2c5636e98 100644 |
--- a/Source/core/rendering/RenderFullScreen.cpp |
+++ b/Source/core/rendering/RenderFullScreen.cpp |
@@ -26,8 +26,12 @@ |
#include "core/rendering/RenderFullScreen.h" |
#include "core/dom/Fullscreen.h" |
+#include "core/page/Chrome.h" |
+#include "core/page/Page.h" |
#include "core/rendering/RenderBlockFlow.h" |
+#include "public/platform/WebScreenInfo.h" |
+ |
using namespace blink; |
class RenderFullScreenPlaceholder FINAL : public RenderBlockFlow { |
@@ -88,7 +92,7 @@ void RenderFullScreen::willBeDestroyed() |
RenderFlexibleBox::willBeDestroyed(); |
} |
-static PassRefPtr<RenderStyle> createFullScreenStyle() |
+void RenderFullScreen::updateStyle() |
{ |
RefPtr<RenderStyle> fullscreenStyle = RenderStyle::createDefaultStyle(); |
@@ -104,14 +108,16 @@ static PassRefPtr<RenderStyle> createFullScreenStyle() |
fullscreenStyle->setFlexDirection(FlowColumn); |
fullscreenStyle->setPosition(FixedPosition); |
- fullscreenStyle->setWidth(Length(100.0, Percent)); |
- fullscreenStyle->setHeight(Length(100.0, Percent)); |
fullscreenStyle->setLeft(Length(0, blink::Fixed)); |
fullscreenStyle->setTop(Length(0, blink::Fixed)); |
+ IntSize screenSize = IntRect(document().page()->chrome().screenInfo().rect).size(); |
+ fullscreenStyle->setWidth(Length(screenSize.width(), blink::Fixed)); |
+ fullscreenStyle->setHeight(Length(screenSize.height(), blink::Fixed)); |
+ |
fullscreenStyle->setBackgroundColor(StyleColor(Color::black)); |
- return fullscreenStyle.release(); |
+ setStyle(fullscreenStyle); |
} |
RenderObject* RenderFullScreen::wrapRenderer(RenderObject* object, RenderObject* parent, Document* document) |
@@ -121,7 +127,7 @@ RenderObject* RenderFullScreen::wrapRenderer(RenderObject* object, RenderObject* |
DeprecatedDisableModifyRenderTreeStructureAsserts disabler; |
RenderFullScreen* fullscreenRenderer = RenderFullScreen::createAnonymous(document); |
- fullscreenRenderer->setStyle(createFullScreenStyle()); |
+ fullscreenRenderer->updateStyle(); |
if (parent && !parent->isChildAllowed(fullscreenRenderer, fullscreenRenderer->style())) { |
fullscreenRenderer->destroy(); |
return 0; |