Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 85f5196bd1f7f680292ee8c4e11754d94180f169 https://github.com/WebKit/WebKit/commit/85f5196bd1f7f680292ee8c4e11754d94180f169 Author: Antti Koivisto <an...@apple.com> Date: 2025-08-25 (Mon, 25 Aug 2025)
Changed paths: M Source/WebCore/style/PseudoClassChangeInvalidation.cpp M Source/WebCore/style/RuleFeature.cpp M Source/WebCore/style/RuleFeature.h Log Message: ----------- Create separate pseudo-class invalidation RuleSets for attribute selectors https://bugs.webkit.org/show_bug.cgi?id=297857 rdar://problem/159102650 Reviewed by Matthieu Dubet. Optimize :has([some-attr=foo]) case. This helps with GitHub performance as it uses many complex rules of this type. * Source/WebCore/style/PseudoClassChangeInvalidation.cpp: (WebCore::Style::makePseudoClassInvalidationKeys): Look up invalidation rule sets with attribute keys. * Source/WebCore/style/RuleFeature.cpp: (WebCore::Style::unlikelyToHaveSelectorForAttribute): Ignore id/class/style attributes. (WebCore::Style::makePseudoClassInvalidationKey): Looks for attribute selectors and make a separate key for them so attribute selectors don't end up in the universal invalidation bucket. * Source/WebCore/style/RuleFeature.h: Canonical link: https://commits.webkit.org/299121@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes