Summary: | Insufficient repaint issues with html embedded in foreignObject | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Oliver Hunt <oliver> | ||||||||
Component: | SVG | Assignee: | Nobody <webkit-unassigned> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Major | CC: | bdakin, eric, krit, zimmermann | ||||||||
Priority: | P2 | Keywords: | InRadar | ||||||||
Version: | 528+ (Nightly build) | ||||||||||
Hardware: | Mac | ||||||||||
OS: | All | ||||||||||
URL: | http://starkravingfinkle.org/blog/wp-content/uploads/2007/07/foreignobject-text.svg | ||||||||||
Attachments: |
|
Description
Oliver Hunt
2007-12-05 20:48:30 PST
I think the way to fix this is to implement a bool RenderSVGBlock::absolutePosition(int& xPos, int& yPos, bool fixed) const function which is absoluteTransform() aware. Created attachment 47055 [details]
Patch
Yay! Thanks for fixing. Committed r53561: <http://trac.webkit.org/changeset/53561> Committed r53561 -- only partial fix, selection for list markers is still borked Committed r53562: <http://trac.webkit.org/changeset/53562> Created attachment 47076 [details]
Patch
Created attachment 47096 [details]
Patch
Comment on attachment 47096 [details] Patch > +IntRect RenderListMarker::localSelectionRect() > +{ > + InlineBox* box = inlineBoxWrapper(); > + if (!box) > + return IntRect(); > + RootInlineBox* root = box->root(); > + if (!root) > + return IntRect(); No need to null-check root. > + IntRect localSelectionRect(); You should use this new function in selectionRectForRepaint() too instead of having duplicated code. r=me but please do ^ if possible. Committed r53603: <http://trac.webkit.org/changeset/53603> |