ladybird/Userland/Libraries
Andreas Kling 34fdd0d44f LibWeb: Include immediate child (>) combinator in ancestor filter
Before this change, the ancestor filter would only reject rules that
required a certain set of descendant strings (class, ID or tag name)
to be present in the current element's ancestor chain.

An immediate child is also a descendant, so we can include this
relationship in the ancestor filter as well.

This substantially improves the efficiency of the ancestor filter on
websites using Tailwind CSS.

For example, https://tailwindcss.com/ itself goes from full style
updates taking ~1400ms to ~350ms. Still *way* too long, but a huge
improvement nonetheless.
2024-09-09 12:46:55 +02:00
..
LibArchive Userland: Avoid some conversions from rvalue strings to StringView 2024-04-04 11:23:21 +02:00
LibAudio LibAudio: Override onAudioReady in PlaybackStreamOboe 2024-09-03 00:17:49 -06:00
LibCompress LibCompress: When limiting huffman tree depth, sacrifice bottom of tree 2024-05-26 21:00:55 +02:00
LibCore LibCore: Create a system time zone watcher 2024-08-25 09:47:42 +02:00
LibCrypto CMake: Ensure C/C++ compile options only applied when compiling C/C++ 2024-07-21 15:55:47 -06:00
LibDiff Everywhere: Use east const in more places 2024-04-19 06:31:19 -04:00
LibFileSystem Userland: Remove some SerenityOS checks 2024-06-10 13:53:01 +02:00
LibGfx LibGfx: Fix inconsistent skia includes 2024-09-08 16:25:19 +02:00
LibHTTP LibHTTP: Don't double percent encode path in HTTPRequst::to_raw_request 2024-08-06 08:18:20 +01:00
LibIDL LibIDL: Depend on LibCoreMinimal instead of LibCore 2024-06-23 19:52:45 +02:00
LibImageDecoderClient ImageDecoder: Pass decoded images as Gfx::Bitmap over IPC 2024-07-18 09:05:10 +02:00
LibIPC LibIPC: Prefix AK::Duration with AK Namespace 2024-07-18 09:43:38 +01:00
LibJS LibJS+LibWeb: Add a custom host hook to log unparsed date strings 2024-09-08 18:25:05 +02:00
LibLine Utilities/js: Make it possible to exit via two consecutive ^C's 2024-07-27 11:49:45 +01:00
LibMain Userland: Remove some SerenityOS checks 2024-06-10 13:53:01 +02:00
LibMedia LibMedia: Prefix AK::Duration with AK Namespace 2024-07-18 09:43:38 +01:00
LibRegex LibUnicode: Replace code point scripts and script extensions with ICU 2024-06-22 14:56:39 +02:00
LibRequests Libraries+Ladybird: Rename LibProtocol -> LibRequests 2024-08-19 12:56:55 +02:00
LibRIFF LibRIFF+LibGfx/ISOBMFF: Make ChunkID (de)serialization self-consistent 2024-03-22 18:31:15 +01:00
LibSyntax Everywhere: Remove LibSQL, SQLServer, and the sql REPL :^) 2024-06-06 11:27:03 -04:00
LibTest LibTest: Define test expectation macros without copying the input values 2024-08-13 14:11:05 +02:00
LibTextCodec LibTextCodec: Implement UTF8Decoder::to_utf8 using AK::String 2024-08-12 06:38:58 -04:00
LibThreading LibThreading: Adjust ThreadPoolLooper m_busy_count sections 2024-08-19 03:08:04 +02:00
LibTLS CMake: Ensure C/C++ compile options only applied when compiling C/C++ 2024-07-21 15:55:47 -06:00
LibUnicode LibUnicode: Remove unused emoji support methods 2024-09-06 15:42:33 -04:00
LibURL LibURL+LibWeb: Pass a mutable reference URL to URL parser 2024-08-13 14:14:34 +02:00
LibWasm LibWasm+LibWeb+test-wasm: Refcount Wasm::Module for function references 2024-08-22 09:36:40 +02:00
LibWeb LibWeb: Include immediate child (>) combinator in ancestor filter 2024-09-09 12:46:55 +02:00
LibWebSocket LibURL+Everywhere: Only percent decode URL paths when actually needed 2024-08-05 09:58:13 +02:00
LibWebView LibWeb: Assign native colors to input, text, and select elements 2024-09-08 09:45:39 +02:00
LibXML LibXML: Include line and column numbers in parse error messages 2024-08-03 18:23:36 +02:00