Bug 132746

Summary: {TelephoneNumber, Selection}OverlayControllerMac don't handle tiled drawing properly
Product: WebKit Reporter: Brent Fulgham <bfulgham>
Component: Layout and RenderingAssignee: Brent Fulgham <bfulgham>
Status: RESOLVED FIXED    
Severity: Normal CC: beidson, bfulgham, simon.fraser, thorton
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: All   
Attachments:
Description Flags
Patch
none
Patch thorton: review+

Description Brent Fulgham 2014-05-09 11:53:54 PDT
The drawing method for TelephoneNumberOverlayControllerMac draws more often than it needs to. It also improperly restricts the region that the UI uses to layout the data detector interface, resulting in strange drawing effects if a phone number spans two (or more) tiles.
Comment 1 Brent Fulgham 2014-05-09 11:54:14 PDT
<rdar://problem/16789588>
Comment 2 Brent Fulgham 2014-05-09 12:00:51 PDT
Created attachment 231175 [details]
Patch
Comment 3 Simon Fraser (smfr) 2014-05-09 12:03:35 PDT
Comment on attachment 231175 [details]
Patch

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

> Source/WebKit2/WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:102
> +        // Don't give the tile rect to the highlight drawing function. It will try to be smart and place the data detector arrow on
> +        // the left side of the highlight if we happen to cross a tile boundary. Instead, allow it to draw over the whole frame bounds,
> +        // and allow the context clipping to limit the drawing to the region we want to see.

I don't think this comment is necessary. It explains why you fix this bug, but I don't think it adds value for the future.
Comment 4 Brent Fulgham 2014-05-09 12:16:41 PDT
Comment on attachment 231175 [details]
Patch

I don't think the gtk-wk2 build failure is due to this change.
Comment 5 Brent Fulgham 2014-05-09 13:53:26 PDT
Created attachment 231184 [details]
Patch
Comment 6 Brent Fulgham 2014-05-09 13:58:27 PDT
Committed r168551: <http://trac.webkit.org/changeset/168551>