RESOLVED FIXED 22472
Selection is not completely erased when a replaced element moves
https://bugs.webkit.org/show_bug.cgi?id=22472
Summary Selection is not completely erased when a replaced element moves
Simon Fraser (smfr)
Reported 2008-11-24 16:48:11 PST
When a selected replaced element moves, then the selection is not fully repainted.
Attachments
Testcase (964 bytes, text/html)
2008-11-24 16:48 PST, Simon Fraser (smfr)
no flags
Patch, testcase, changelog (7.03 KB, patch)
2008-11-24 18:40 PST, Simon Fraser (smfr)
hyatt: review+
Simon Fraser (smfr)
Comment 1 2008-11-24 16:48:43 PST
Created attachment 25459 [details] Testcase
mitz
Comment 2 2008-11-24 17:47:34 PST
The selection rect for the relpositioned element doesn't make much sense -- there is no good reason to extend the selection blow the element in that case, because the line doesn't extend that far.
Simon Fraser (smfr)
Comment 3 2008-11-24 18:40:13 PST
Created attachment 25466 [details] Patch, testcase, changelog Note that the localSelectionRect() refactor will also be used in the fix for bug 15739.
Simon Fraser (smfr)
Comment 4 2008-11-24 18:43:23 PST
This patch blows out absoluteClippedOverflowRect() to envelop the selection rect. If you'd prefer we change the selection rect for positioned/transformed replaced elements, I can do that too (just use overflowRect()?). Note that it will cause a replaced with position:relative and no offset to render selection slightly differently.
Dave Hyatt
Comment 5 2008-12-02 12:32:04 PST
Comment on attachment 25466 [details] Patch, testcase, changelog r=me
Simon Fraser (smfr)
Comment 6 2008-12-02 15:15:45 PST
Committed r38922 M WebCore/ChangeLog M WebCore/rendering/RenderReplaced.h M WebCore/rendering/RenderReplaced.cpp A LayoutTests/platform/mac/fast/repaint/selected-replaced-expected.png A LayoutTests/platform/mac/fast/repaint/selected-replaced-expected.txt A LayoutTests/platform/mac/fast/repaint/selected-replaced-expected.checksum M LayoutTests/ChangeLog A LayoutTests/fast/repaint/selected-replaced.html r38922 = 2e3c814163128d96700fe09f2b57c571b0036c57 (trunk)
Note You need to log in before you can comment on or make changes to this bug.