ladybird/Libraries
Aliaksandr Kalenik cd0705334b LibWeb: Skip effect contexts for off-screen display list commands
When executing display list commands, check if commands with effect
contexts (opacity, filters, blend modes) are outside the viewport
before applying the effect. Since effects don't affect clip state,
would_be_fully_clipped_by_painter() returns the same result before
and after applying effects.

This avoids expensive saveLayer/restore cycles for off-screen commands
with effects like blur, which is particularly beneficial for pages with
many blurred decorative images (e.g., Discord's landing page has 70+
blurred star images).

The optimization only applies when switching to a new effect context,
not for consecutive commands with the same context, to preserve correct
blend mode compositing behavior.
2026-01-22 16:27:52 +01:00
..
LibCompress CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibCore LibCore: Use sendfile instead of mmap+write on macOS 2026-01-19 06:53:29 -05:00
LibCrypto LibCrypto+LibJS: Add to_i64 method for SignedBigInteger and use it 2026-01-16 07:00:02 -05:00
LibDatabase LibDatabase+RequestServer: Store ByteString data as a BLOB 2025-11-12 09:06:21 -05:00
LibDevTools LibDevTools: Only send network response bodies when DevTools connected 2026-01-15 20:10:19 +01:00
LibDiff CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibDNS LibDNS: Remove LibCore::DateTime dependency 2025-09-30 12:39:01 +02:00
LibFileSystem CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibGC LibGC: Introduce GC::HeapHashTable<T>, a GC-aware hash table container 2026-01-21 22:26:14 +01:00
LibGfx LibWeb: Respect font-width for variable fonts 2026-01-21 23:49:25 +01:00
LibHTTP LibHTTP+LibWeb: Support the HTTP Vary response header 2026-01-22 08:54:49 -05:00
LibIDL LibIDL: Add support for partial interface mixin 2026-01-13 10:09:22 +01:00
LibImageDecoderClient CMake: Rename serenity_* helper functions/macros to ladybird_* 2025-07-03 23:19:41 +02:00
LibIPC LibIPC: Handle EAGAIN on non-blocking wakeup pipe read 2026-01-13 21:05:58 +01:00
LibJS LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
LibLine Everywhere: Slap some [[clang::lifetimebound]] where appropriate 2025-09-01 11:11:38 +02:00
LibMain AK: Expose helpers to invoke Windows runtime config directly in main() 2025-10-29 21:07:52 -06:00
LibMedia LibMedia: Return the original sample iterator in Matroska slow seeks 2026-01-21 11:35:33 +01:00
LibRegex LibRegex: Make RegexDebug resilient to empty state vectors 2026-01-21 14:20:08 +01:00
LibRequests LibHTTP+LibWeb+RequestServer: Handle the Fetch API's cache mode 2026-01-22 07:05:06 -05:00
LibSyntax Everywhere: Slap some [[clang::lifetimebound]] where appropriate 2025-09-01 11:11:38 +02:00
LibTest LibJS: Move tests to /Tests/LibJS 2026-01-22 07:46:48 -05:00
LibTextCodec LibTextCodec+LibWeb: Move isomorphic coders to LibTextCodec 2025-11-27 14:57:29 +01:00
LibThreading LibThreading: Use WeakEventLoopReference in BackgroundAction 2025-12-09 16:12:40 -06:00
LibTLS LibTLS: Use Windows-specific method to set default certificate store 2025-08-23 18:35:45 -06:00
LibUnicode CMake: Remove ENABLE_WINDOWS_CI option and adjust presets to match Unix 2026-01-16 11:15:16 -07:00
LibURL AK+LibURL: Use AK::IPv4/6 in Host 2025-12-31 10:24:56 +01:00
LibWasm LibWasm: Add missing tag section validation 2026-01-08 18:49:24 +01:00
LibWeb LibWeb: Skip effect contexts for off-screen display list commands 2026-01-22 16:27:52 +01:00
LibWebSocket LibHTTP+LibWeb+RequestServer: Move Fetch's HTTP header infra to LibHTTP 2025-11-27 14:57:29 +01:00
LibWebView LibWeb+LibWebView+WebWorker: Enable the HTTP memory cache in workers 2026-01-22 07:05:06 -05:00
LibXML LibXML+LibWeb: Use existing HTML entities table for XML parsing too 2026-01-09 19:13:41 +00:00
CMakeLists.txt CMake: Remove ENABLE_WINDOWS_CI option and adjust presets to match Unix 2026-01-16 11:15:16 -07:00