[Webkit-unassigned] [Bug 72957] :only-of-type pseudo selector breaks :hover on <summary>

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Dec 26 04:44:33 PST 2011


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





--- Comment #2 from Shinya Kawanaka <shinyak at chromium.org>  2011-12-26 04:44:33 PST ---
I've investigated this issue. Let me try to explain the cause.

Actually, :hover is triggered but discarded soon.

This is DOM tree of the DETAILS element.

DETAILS
  |-- SUMMARY
  |-- DIV

1) In DETAILS element's recalcStyle(), DIV's recalcStyle() is called.
2) In DIV's recalcStyle(), currentStyle is NULL but newStyle is not NULL
3) so reattach() will be called in DIV's recalcStyle().
4) This will make DETAILS's shadow->needsStyleRecalc() true.
5) So DETAILS's recalcShadowTreeStyle is called. It detaches shadow and re-attaches. This schedules SUMMARY's hover timer.
6) Since :only-of-time is specified, when whole DETAILS's style is calculated again
7) Return to (1).

You will be able to find that recalcStyle will be triggered many times when mouse cursor is located on DETAILS element.

Once DIV is shown, (2) won't happen.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list