1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 21:08:12 +00:00
serenity/Userland/Libraries/LibWeb
Aliaksandr Kalenik 681771d210 LibGfx+LibWeb: Calculate and save glyph positions during layout
Previously, we determined the positions of glyphs for each text run at
the time of painting, which constituted a significant portion of the
painting process according to profiles. However, since we already go
through each glyph to figure out the width of each fragment during
layout, we can simultaneously gather data about the position of each
glyph in the layout phase and utilize this information in the painting
phase.

I had to update expectations for a couple of reference tests. These
updates are due to the fact that we now measure glyph positions during
layout using a 1x font, and then linearly scale each glyph's position
to device pixels during painting. This approach should be acceptable,
considering we measure a fragment's width and height with an unscaled
font during layout.
2023-12-02 22:06:11 +01:00
..
Animations LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
ARIA LibWeb: Port AriaData from DeprecatedString to String 2023-11-20 15:00:19 +01:00
Bindings LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
Clipboard LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Cookie LibWeb: Port ParsedCookie from DeprecatedString to String 2023-11-28 17:15:27 -05:00
Crypto LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
CSS LibWeb: Return String from CSSStyleRule::selector_text() 2023-12-01 20:48:13 +01:00
DOM LibWeb: Make create_a_css_style_sheet() take String arguments 2023-12-01 20:48:13 +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: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
FileAPI LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Geometry LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
HighResolutionTime LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
HTML LibWeb/HTML: Implement text attribute in HTMLTitleElement 2023-12-02 10:35:43 +01:00
Infra LibJS: Make PrimitiveString::utf8_string() infallible 2023-08-09 17:09:16 +02:00
Internals LibWeb+LibWebView+WebContent: Add an Inspector IPC to execute JavaScript 2023-12-02 10:34:22 +01:00
IntersectionObserver LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Layout LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +01:00
Loader LibWeb: Port NavigatorID from DeprecatedString to String 2023-11-20 15:00:19 +01:00
MathML LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
MimeSniff LibWeb: Have MimeType::create() match its foward declaration 2023-11-14 10:14:09 +01:00
NavigationTiming LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Page LibWeb+LibWebView+WebContent: Add an Inspector IPC to execute JavaScript 2023-12-02 10:34:22 +01:00
Painting LibGfx+LibWeb: Calculate and save glyph positions during layout 2023-12-02 22:06:11 +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 LibWeb: Output audio in stereo regardless of the encoded channel count 2023-11-12 07:57:03 +01:00
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: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
SVG LibWeb+WebContent: Plumb ability for WebContent process to hold N pages 2023-12-01 20:47:44 +01:00
UIEvents LibWeb: Set correct keyCode for number keys and optional virtual keys 2023-12-02 10:34:22 +01:00
URL LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
UserTiming LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
WebAssembly LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
WebAudio LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
WebDriver Everywhere: Work around Clang trunk bug with templated lambda + Variant 2023-11-05 13:41:13 -07:00
WebGL LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
WebIDL LibJS: Always allocate ExecutionContext objects on the malloc heap 2023-11-29 09:48:18 +01:00
WebSockets LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
Worker LibWeb+WebWorker: Move worker execution into a new WebWorker process 2023-11-15 12:56:33 +01:00
XHR LibWeb: Port Intrinsics from DeprecatedString 2023-11-28 17:15:27 -05:00
XLink LibWeb: Add Web::XLink::AttributeNames 2023-11-05 11:16:16 +00:00
XML LibWeb: Report if anything is delaying load event, not the count 2023-12-01 10:28:02 +01:00
CMakeLists.txt LibWeb: Add a visit_edges() override to AbstractBrowsingContext 2023-11-30 08:49:15 +00:00
Dump.cpp LibWeb: Port Layout::TextNode from DeprecatedString 2023-11-28 17:15:27 -05:00
Dump.h LibWeb+WebContent: Add option to dump session history of a traversable 2023-09-16 16:53:32 +02:00
FontCache.cpp LibWeb: Remove some unused DeprecatedFlyString includes 2023-10-08 08:11:48 -04:00
FontCache.h AK: Rename GenericTraits to DefaultTraits 2023-11-09 10:05:51 -05:00
Forward.h LibWeb+Meta: Add wrapper for the BufferSource/ArrayBufferView IDL types 2023-11-24 08:43:35 +01:00
idl_files.cmake LibWeb+LibWebView+WebContent: Add an Inspector IDL object to the Window 2023-11-24 08:37:19 +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: Inline and constexpr most PixelUnits methods 2023-08-05 20:03:09 +02:00
PixelUnits.h AK+LibWeb: Make clamp_to_int generic over all integrals 2023-11-24 08:42:18 +01:00
TreeNode.h LibWeb: Remove all the unused functions from TreeNode 2023-08-20 05:02:59 +02:00