mirror of
https://github.com/RGBCube/serenity
synced 2025-06-01 10:08:10 +00:00
LibWeb: Add initial implementation of IntersectionObserver
The main missing features are rootMargin, proper nested browsing context support and content clip/clip-path support. This makes images appear on some sites, such as YouTube and howstuffworks.com.
This commit is contained in:
parent
6f8afd8cd9
commit
165abafb80
16 changed files with 664 additions and 22 deletions
|
@ -0,0 +1,26 @@
|
|||
#import <DOM/Element.idl>
|
||||
#import <Geometry/DOMRect.idl>
|
||||
#import <HighResolutionTime/DOMHighResTimeStamp.idl>
|
||||
|
||||
// https://www.w3.org/TR/intersection-observer/#intersectionobserverentry
|
||||
[Exposed=Window]
|
||||
interface IntersectionObserverEntry {
|
||||
// FIXME: constructor(IntersectionObserverEntryInit intersectionObserverEntryInit);
|
||||
readonly attribute DOMHighResTimeStamp time;
|
||||
readonly attribute DOMRectReadOnly? rootBounds;
|
||||
readonly attribute DOMRectReadOnly boundingClientRect;
|
||||
readonly attribute DOMRectReadOnly intersectionRect;
|
||||
readonly attribute boolean isIntersecting;
|
||||
readonly attribute double intersectionRatio;
|
||||
readonly attribute Element target;
|
||||
};
|
||||
|
||||
dictionary IntersectionObserverEntryInit {
|
||||
required DOMHighResTimeStamp time;
|
||||
required DOMRectInit? rootBounds;
|
||||
required DOMRectInit boundingClientRect;
|
||||
required DOMRectInit intersectionRect;
|
||||
required boolean isIntersecting;
|
||||
required double intersectionRatio;
|
||||
required Element target;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue