mapLocalToContainer() may do the wrong thing when called directly on a fixed, transformed element, because 'fixed' on entry is false, and will stay false when we hit the hasTransform test.
See bug 36652 also.
I agree, this looks wrong. I will do a pixel test for it.
Created attachment 51916 [details] Test case Another test case, this one should have the problems of computeRectForRepaint() and mapLocalToContainer().
Created attachment 51919 [details] Quick patch Quick fix. It passes the test and solve https://bug-36652-attachments.webkit.org/attachment.cgi?id=51750 But curiously, not https://bug-36686-attachments.webkit.org/attachment.cgi?id=51916 although the update rect is now at the correct position. I need to investigate why the previous area is not repainted correctly.
Created attachment 51951 [details] New test case without transormation Apparently, the previous test case also show another, possibly unrelated, bug. This attachment is similar to https://bugs.webkit.org/attachment.cgi?id=51916 without the transformation. The bug is still present. I think about submitting this patch: https://bugs.webkit.org/attachment.cgi?id=51919 with this test: https://bug-36652-attachments.webkit.org/attachment.cgi?id=51750 for this bug report. And create a new bug report for https://bugs.webkit.org/attachment.cgi?id=51916 which look a bit more urgent than the current task. Simon, is that ok with you?
I think we should fix the non-transformed bug (your last testcase) first.
(In reply to comment #6) > I think we should fix the non-transformed bug (your last testcase) first. I agree. I have created the bug report https://bugs.webkit.org/show_bug.cgi?id=36783 for this case. I might be able to investigate it tomorrow. I will also make a proper patch for 36686 so I have a chance to close 36652 this week.
(In reply to comment #7) > (In reply to comment #6) > > I think we should fix the non-transformed bug (your last testcase) first. > > I agree. I have created the bug report > https://bugs.webkit.org/show_bug.cgi?id=36783 for this case. > > I might be able to investigate it tomorrow. I will also make a proper patch for > 36686 so I have a chance to close 36652 this week. Any work on this?