Bug 135582 - Selection services menu dropdown is in the wrong place when selecting some text on Yelp
Summary: Selection services menu dropdown is in the wrong place when selecting some te...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Tim Horton
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2014-08-04 17:10 PDT by Tim Horton
Modified: 2014-08-04 18:41 PDT (History)
5 users (show)

See Also:


Attachments
patch (5.02 KB, patch)
2014-08-04 17:11 PDT, Tim Horton
simon.fraser: review+
Details | Formatted Diff | Diff
crash fix (2.80 KB, patch)
2014-08-04 18:36 PDT, Tim Horton
enrica: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tim Horton 2014-08-04 17:10:47 PDT
<rdar://problem/17837636>
Comment 1 Tim Horton 2014-08-04 17:11:59 PDT
Created attachment 235993 [details]
patch
Comment 2 Simon Fraser (smfr) 2014-08-04 17:26:49 PDT
Comment on attachment 235993 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=235993&action=review

> Source/WebCore/editing/SelectionRectGatherer.cpp:56
> +    absoluteGapRects.uniteLeft(LayoutRect(repaintContainer->localToAbsoluteQuad(FloatQuad(rects.left())).boundingBox()));
> +    absoluteGapRects.uniteCenter(LayoutRect(repaintContainer->localToAbsoluteQuad(FloatQuad(rects.center())).boundingBox()));
> +    absoluteGapRects.uniteRight(LayoutRect(repaintContainer->localToAbsoluteQuad(FloatQuad(rects.right())).boundingBox()));

This is all gross and horrible and services should not be so tied to selection code.
Comment 3 Tim Horton 2014-08-04 17:28:53 PDT
(In reply to comment #2)
> (From update of attachment 235993 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=235993&action=review
> 
> > Source/WebCore/editing/SelectionRectGatherer.cpp:56
> > +    absoluteGapRects.uniteLeft(LayoutRect(repaintContainer->localToAbsoluteQuad(FloatQuad(rects.left())).boundingBox()));
> > +    absoluteGapRects.uniteCenter(LayoutRect(repaintContainer->localToAbsoluteQuad(FloatQuad(rects.center())).boundingBox()));
> > +    absoluteGapRects.uniteRight(LayoutRect(repaintContainer->localToAbsoluteQuad(FloatQuad(rects.right())).boundingBox()));
> 
> This is all gross and horrible and services should not be so tied to selection code.

+1

Thank you.

http://trac.webkit.org/changeset/172013
Comment 4 Tim Horton 2014-08-04 18:36:13 PDT
Created attachment 235997 [details]
crash fix
Comment 5 Enrica Casucci 2014-08-04 18:38:19 PDT
Comment on attachment 235997 [details]
crash fix

Good boy!
Comment 6 Tim Horton 2014-08-04 18:41:10 PDT
Stop the crashes: http://trac.webkit.org/changeset/172018