Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Unified Diff: third_party/WebKit/Source/core/frame/FrameView.cpp

Issue 2431473003: Intersection Observer support for OOPIF (Closed)
Patch Set: Fixed test issue Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 c8bb41b5c65201eb32c2f9fd42d06fc22e248806..7cd107206e19d893bdcd6a9f726acd0c6a0f7568 100644
--- a/third_party/WebKit/Source/core/frame/FrameView.cpp
+++ b/third_party/WebKit/Source/core/frame/FrameView.cpp
@@ -52,6 +52,8 @@
#include "core/frame/Location.h"
#include "core/frame/PageScaleConstraintsSet.h"
#include "core/frame/PerformanceMonitor.h"
+#include "core/frame/RemoteFrame.h"
+#include "core/frame/RemoteFrameView.h"
#include "core/frame/Settings.h"
#include "core/frame/VisualViewport.h"
#include "core/html/HTMLFrameElement.h"
@@ -194,7 +196,8 @@ FrameView::FrameView(LocalFrame& frame)
m_scrollbarManager(*this),
m_needsScrollbarsUpdate(false),
m_suppressAdjustViewSize(false),
- m_allowsLayoutInvalidationAfterLayoutClean(true) {
+ m_allowsLayoutInvalidationAfterLayoutClean(true),
+ m_remoteViewportIntersection(0, 0, 0, 0) {
init();
}
@@ -4586,4 +4589,18 @@ int FrameView::initialViewportHeight() const {
return m_initialViewportSize.height();
}
+void FrameView::setViewportIntersectionFromParent(
+ const IntRect& viewportIntersection) {
+ if (m_remoteViewportIntersection != viewportIntersection) {
+ m_remoteViewportIntersection = viewportIntersection;
+ scheduleAnimation();
+ }
+}
+
+IntRect FrameView::remoteViewportIntersection() {
+ IntRect intersection(m_remoteViewportIntersection);
+ intersection.move(scrollOffsetInt());
+ return intersection;
+}
+
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698