1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 20:28:11 +00:00
serenity/Userland/Libraries/LibWeb
MacDue 5cf1570f40 LibWeb: Add initial support for nesting SVG viewports
Previously, we were handling viewBoxes/viewports in a slightly hacky
way, asking graphics elements to figure out what viewBox to use during
layout. This does not work in all cases, and can't allow for more
complex SVGs where it is possible to have nested viewports.

This commit makes the SVGFormattingContext keep track of the
viewport/boxes, and it now lays out each viewport recursively, where
each nested `<svg>` or `<symbol>` can establish a new viewport.

This fixes some previous edge cases, and starts to allow nested
viewports (there's still some issues to resolve there).

Fixes #22931
2024-01-27 18:12:13 +01:00
..
Animations LibWeb: Format all .idl files to use four space indentation 2024-01-18 14:00:06 +01:00
ARIA Everywhere: Use to_number<T> instead of to_{int,uint,float,double} 2023-12-23 20:41:07 +01:00
Bindings LibWeb: Exclude [Global] interfaces from legacy platform object methods 2024-01-19 09:02:00 +01:00
Clipboard LibWeb: Format all .idl files to use four space indentation 2024-01-18 14:00:06 +01:00
Cookie LibWeb: Fail to parse cookie date when date does not exist 2024-01-07 08:01:58 -05:00
Crypto LibWeb: Implement import_key for PBKDF2 2024-01-23 14:07:06 -07:00
CSS LibWeb: Fix vector OOB access when comparing some calc() values 2024-01-27 17:06:43 +01:00
DOM Ladybird+LibWeb+WebContent: Port the did_request_cookie IPC to String 2024-01-26 20:22:39 +01:00
DOMParsing LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Encoding LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Fetch LibWeb: Implement a slightly better ad-hoc Body::clone method 2024-01-27 16:01:56 +01:00
FileAPI LibWeb: Delete LegacyPlatformObject and move behavior to PlatformObject 2024-01-12 09:11:18 +01:00
Geometry LibWeb: Delete LegacyPlatformObject and move behavior to PlatformObject 2024-01-12 09:11:18 +01:00
HighResolutionTime LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
HTML LibWeb: Add missing visits in MessageEvent 2024-01-24 10:52:02 +01:00
Infra LibWeb: Don't crash on FormData.append() with emoji in name 2023-12-04 00:04:04 +01:00
Internals LibWeb: Support obsolete but required -webkit- CSS parsing quirk 2023-12-11 16:54:59 +01:00
IntersectionObserver LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Layout LibWeb: Add initial support for nesting SVG viewports 2024-01-27 18:12:13 +01:00
Loader Ladybird+LibWeb+WebContent: Port the did_request_cookie IPC to String 2024-01-26 20:22:39 +01:00
MathML LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
MimeSniff LibWeb/MimeSniff: Remove unnecessary addition in mp4 signature match 2024-01-12 19:24:35 -07:00
NavigationTiming LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Page LibWeb+WebContent: Port the did_request_named_cookie IPC to String 2024-01-26 20:22:39 +01:00
Painting LibWeb: Add initial support for nesting SVG viewports 2024-01-27 18:12:13 +01:00
PerformanceTimeline LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
PermissionsPolicy LibWeb+LibWebView+WebContent: Add APIs to manage an autoplay allowlist 2023-04-18 16:30:02 +02:00
Platform Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
ReferrerPolicy AK: Port URL username/password from DeprecatedString to String 2023-08-13 15:03:53 -06:00
RequestIdleCallback LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
ResizeObserver LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
SecureContexts AK: Serialize URL hosts with 'concept-host-serializer' 2023-07-31 05:18:51 +02:00
Selection LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
SRI LibWeb: Implement integrity-metadata part of fetch algorithm 2023-04-21 20:44:47 +01:00
Streams LibWeb: Implement the CreateReadableByteStream AO 2024-01-27 16:01:56 +01:00
SVG LibWeb: Add initial support for nesting SVG viewports 2024-01-27 18:12:13 +01:00
UIEvents LibWeb: Add MouseEvent JavaScript constructor 2024-01-20 08:57:37 +01:00
URL Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
UserTiming LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
WebAssembly LibJS+LibWeb: Implement resizable ArrayBuffer support for TypedArray 2023-12-26 11:16:10 +01:00
WebAudio LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
WebDriver AK+Everywhere: Remove JsonValue APIs with implicit default values 2024-01-21 15:47:53 -07:00
WebGL LibAccelGfx+LibWeb+WebContent: Handle OpenGL Context init errors 2024-01-24 19:43:51 +01:00
WebIDL LibWeb: Store Promise::wait_for_all state in a JS-heap allocated object 2024-01-19 11:47:59 +01:00
WebSockets Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
Worker LibWeb+WebContent: Spawn Worker processes from the chrome 2024-01-12 15:53:11 -07:00
XHR Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
XLink LibWeb: Add Web::XLink::AttributeNames 2023-11-05 11:16:16 +00:00
XML Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
CMakeLists.txt LibWeb: Add SVGSVGElement.viewBox attribute 2024-01-25 08:23:41 +01:00
Dump.cpp LibWeb: Make inline paintables own their fragments 2024-01-13 18:46:41 +01:00
Dump.h LibWeb+WebContent: Add option to dump session history of a traversable 2023-09-16 16:53:32 +02:00
Forward.h LibWeb: Add SVGSVGElement.viewBox attribute 2024-01-25 08:23:41 +01:00
idl_files.cmake LibWeb: Add SVGSVGElement.viewBox attribute 2024-01-25 08:23:41 +01:00
Namespace.cpp LibWeb: Make Web::Namespace::Foo strings be FlyString 2023-11-04 21:28:30 +01:00
Namespace.h LibWeb: Make Web::Namespace::Foo strings be FlyString 2023-11-04 21:28:30 +01:00
PixelUnits.cpp LibWeb: Refactor int types in WebContentServer to DevicePixels 2023-12-15 17:01:16 +01:00
PixelUnits.h LibWeb: Remove early continue in size parsing 2024-01-20 15:22:25 +01:00
TreeNode.h LibWeb: Remove all the unused functions from TreeNode 2023-08-20 05:02:59 +02:00