Aliaksandr Kalenik
0ab61a94d7
LibWeb: Bucket hover rules using RuleCache
...
Analysis of selectors on modern websites shows that the `:hover`
pseudo-class is mostly used in the subject position within relatively
simple selectors like `.a:hover`. This suggests that we could greatly
benefit from segregating them by id/class/tag name, this way reducing
number of selectors tested during hover style invalidation.
With this change, hover invalidation on Discord goes down from 70ms to
3ms on my machine. I also tested GMail and GitHub where this change
shows nice 2x-3x speedup.
2025-02-22 10:12:24 +01:00
..
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-02-02 17:18:56 +01:00
2024-11-15 14:49:20 +01:00
2024-11-30 17:35:45 +01:00
2025-01-24 23:53:26 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-01-13 23:03:07 +01:00
2025-01-13 23:03:07 +01:00
2025-01-11 23:10:09 +01:00
2025-01-11 23:10:09 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-02-21 11:54:00 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-01-21 11:34:06 -05:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-02-22 10:12:24 +01:00
2025-02-21 12:43:48 +00:00
2025-02-05 16:04:50 -07:00
2025-01-21 11:34:06 -05:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-01-11 11:10:43 +01:00
2025-02-21 12:43:48 +00:00
2024-12-11 17:38:31 -07:00
2024-12-11 17:38:31 -07:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-12-25 14:57:22 +00:00
2024-12-18 19:22:44 +00:00
2024-11-15 14:49:20 +01:00
2025-01-30 17:04:20 +01:00
2024-12-06 18:09:53 +00:00
2024-12-10 14:54:19 +01:00
2024-11-15 14:49:20 +01:00
2025-02-21 04:23:28 +00:00
2025-02-21 04:23:28 +00:00
2025-02-12 22:08:17 +01:00
2025-02-20 21:55:34 +00:00
2024-11-15 14:49:20 +01:00
2025-02-12 23:48:18 +00:00
2024-11-15 14:49:20 +01:00
2025-02-02 17:18:56 +01:00
2024-11-26 14:50:27 +01:00
2025-02-05 16:04:50 -07:00
2025-02-03 19:17:58 +00:00
2024-11-18 20:20:57 +01:00
2024-12-25 14:57:22 +00:00
2024-12-26 19:10:44 +01:00
2024-12-26 19:10:44 +01:00
2024-11-15 14:49:20 +01:00
2024-12-25 14:57:22 +00:00
2025-01-16 23:22:48 +01:00
2024-12-26 19:10:44 +01:00
2024-12-26 19:10:44 +01:00
2025-02-07 16:53:11 +01:00
2025-02-07 16:53:11 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-01-12 00:35:58 +01:00
2025-01-12 00:35:58 +01:00
2025-01-30 17:04:20 +01:00
2024-11-30 16:47:14 +00:00
2025-02-21 12:41:57 +00:00
2025-02-21 12:41:57 +00:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-01-10 08:08:46 +00:00
2025-01-10 08:08:46 +00:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-02-19 08:45:51 -05:00
2025-01-21 11:34:06 -05:00
2024-11-15 14:49:20 +01:00
2025-02-06 16:47:25 +00:00
2025-01-21 11:34:06 -05:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-01-23 09:33:10 +01:00
2025-01-10 23:33:35 +01:00
2025-01-06 08:55:00 +00:00
2025-02-05 16:04:50 -07:00
2025-02-04 22:19:25 +01:00
2025-02-04 22:19:25 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2024-11-15 14:49:20 +01:00
2025-02-06 16:47:25 +00:00
2024-11-15 14:49:20 +01:00
2025-01-21 11:34:06 -05:00
2024-12-27 12:27:03 +01:00
2025-01-10 08:08:46 +00:00
2025-01-10 08:08:46 +00:00
2025-01-21 11:34:06 -05:00
2024-11-15 14:49:20 +01:00
2025-02-15 17:05:55 +00:00