Created attachment 44352 [details] Test case See the attached page for a test case. To reproduce: load page, then hover over the paragraph. Expected result: The font of the first letter should *not* suddenly change on hover. What happens: The font of the first letter unexpectedly changes on hover. This is very odd behavior because the paragraph should not inherit the :hover selector due to specificity: #specific div:hover Reproduced on: WebKit nightly r51705 Chrome 4.0.249.25 Safari 4.0.3 (531.9.1) Other non-webkit browsers OK.
Why is the Regression keyword attached?
Created attachment 46544 [details] In diffing render styles, consider all pseudo style changes.
Comment on attachment 46544 [details] In diffing render styles, consider all pseudo style changes. I don't know if this is correct. But if it is, then to keep performance good, I think we should consider a fast check that quickly tests if any pseudo style bits are set at all, avoiding the loop checking one bit at a time in the vast majority of cases. That's assuming this is a hot enough function that it matters.
Created attachment 46639 [details] In diffing render styles, consider all pseudo style changes.
Hi, Darin, Thank you for your comment. Now the loop is not entered if the style doesn't have any (public) pseudo styles. Yuzo
I'm not 100% sure if the C++ change is correct (it looks good though) either. I think you need to add png and checksum of the expected result. Or, it would be better if we can test this with dumpAsText.
Created attachment 46992 [details] In diffing render styles, consider all pseudo style changes.
Added .png and .checksum. I've tried to make the test text-based, but failed. dumpAsText doesn't seem to output text for pseudo-elements. I've also tried window.getComputedStyle, element.offsetHeight, offsetTop, etc., but none worked for me. Yuzo
Ping?
Ping again?
Ping, the third time. :)
Comment on attachment 46992 [details] In diffing render styles, consider all pseudo style changes. As far as I can tell this looks right.
Comment on attachment 46992 [details] In diffing render styles, consider all pseudo style changes. Clearing flags on attachment: 46992 Committed r54926: <http://trac.webkit.org/changeset/54926>
All reviewed patches have been landed. Closing bug.