[Webkit-unassigned] [Bug 220711] New: Optimize :hover/:active style invalidation for deep trees and descendant selectors

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jan 18 08:57:39 PST 2021


https://bugs.webkit.org/show_bug.cgi?id=220711

            Bug ID: 220711
           Summary: Optimize :hover/:active style invalidation for deep
                    trees and descendant selectors
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: CSS
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: koivisto at iki.fi

Hover and active states are flipped for the entire ancestor chain. We compute invalidation for each element separately. If the selectors are of form ':active .descendant' then each of these invalidations need to traverse the whole subtree leading to O(n^2) behavior.

We really only need to traverse the descendants once, starting from the element closest to the root that changes state.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210118/37d6cac0/attachment-0001.htm>


More information about the webkit-unassigned mailing list