Index: Source/core/css/MediaValues.cpp |
diff --git a/Source/core/css/MediaValues.cpp b/Source/core/css/MediaValues.cpp |
index 57b7d9997a55edf6fe6e28573e867e3eafbcbfc6..f2572c755627dbbc8b6b7aec427f4abb3c9bdef1 100644 |
--- a/Source/core/css/MediaValues.cpp |
+++ b/Source/core/css/MediaValues.cpp |
@@ -30,18 +30,27 @@ PassRefPtr<MediaValues> MediaValues::createDynamicIfFrameExists(LocalFrame* fram |
return MediaValuesCached::create(); |
} |
+static float getEffectiveZoom(LocalFrame* frame) |
+{ |
+ ASSERT(frame->document()); |
+ RenderStyle* style = (RenderStyle*)(frame->document()->renderView()); |
eseidel
2014/04/25 23:53:24
Huh!? That's not a style.
|
+ if (!style) |
+ return 1.0; |
+ return style->effectiveZoom(); |
+} |
+ |
int MediaValues::calculateViewportWidth(LocalFrame* frame) const |
{ |
- ASSERT(frame && frame->view() && frame->document()); |
+ ASSERT(frame && frame->view()); |
int viewportWidth = frame->view()->layoutSize(IncludeScrollbars).width(); |
- return adjustForAbsoluteZoom(viewportWidth, frame->document()->renderView()); |
+ return adjustForAbsoluteZoom(viewportWidth, getEffectiveZoom(frame)); |
} |
int MediaValues::calculateViewportHeight(LocalFrame* frame) const |
{ |
- ASSERT(frame && frame->view() && frame->document()); |
+ ASSERT(frame && frame->view()); |
int viewportHeight = frame->view()->layoutSize(IncludeScrollbars).height(); |
- return adjustForAbsoluteZoom(viewportHeight, frame->document()->renderView()); |
+ return adjustForAbsoluteZoom(viewportHeight, getEffectiveZoom(frame)); |
} |
int MediaValues::calculateDeviceWidth(LocalFrame* frame) const |