Index: third_party/WebKit/Source/core/frame/FrameView.cpp |
diff --git a/third_party/WebKit/Source/core/frame/FrameView.cpp b/third_party/WebKit/Source/core/frame/FrameView.cpp |
index 94240cc36f5d5310e64dbc667047c32ee3455fb4..1e6240e337c475a9ae75560bf860f71eda1159f2 100644 |
--- a/third_party/WebKit/Source/core/frame/FrameView.cpp |
+++ b/third_party/WebKit/Source/core/frame/FrameView.cpp |
@@ -1711,7 +1711,13 @@ void FrameView::ViewportSizeChanged(bool width_changed, bool height_changed) { |
} |
} |
- if (!HasViewportConstrainedObjects()) |
+ if (GetFrame().GetDocument() && !IsInPerformLayout()) |
+ MarkViewportConstrainedObjectsForLayout(width_changed, height_changed); |
+} |
+ |
+void FrameView::MarkViewportConstrainedObjectsForLayout(bool width_changed, |
+ bool height_changed) { |
+ if (!HasViewportConstrainedObjects() || !(width_changed || height_changed)) |
return; |
for (const auto& viewport_constrained_object : |