Bug 130934

Summary: Subpixel rendering: Simple line layout should not round to integral position while painting.
Product: WebKit Reporter: zalan <zalan>
Component: Layout and RenderingAssignee: zalan <zalan>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, esprehn+autocc, glenn, kondapallykalyan, simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch simon.fraser: review+

Description zalan 2014-03-29 13:52:55 PDT
It could push content off by a device pixel compared to when RenderLayer is injected and hides the subpixel position.
Comment 1 zalan 2014-03-29 14:03:39 PDT
Created attachment 228117 [details]
Patch
Comment 2 Simon Fraser (smfr) 2014-03-29 14:05:12 PDT
Comment on attachment 228117 [details]
Patch

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

> Source/WebCore/ChangeLog:17
> +        Without RenderLayer:
> +        Renderer's layout position (10.5px, 10.5px) -> rounded and painted at (11px, 11px)
> +
> +        With RenderLayer:
> +        Rendere's layout position (10.5px, 10.5px) -> RenderLayer position (10.5px, 10.5px) ->
> +        renderer's relative pos (0px, 0px) -> rounded and painted at (0px, 0p) which
> +        translates to (10.5px, 10.5px) (vs. (11px, 11px)

I don't think it's necessary to include the math in the changelog. If you want to preserve this info for the future, put it in the bugzilla bug.
Comment 3 zalan 2014-03-29 15:22:06 PDT
Without RenderLayer:
Renderer's layout position (10.5px, 10.5px) -> rounded and painted at (11px, 11px)

With RenderLayer:
Rendere's layout position (10.5px, 10.5px) -> RenderLayer position (10.5px, 10.5px) -> renderer's relative pos (0px, 0px) -> rounded and painted at (0px, 0p) which translates to (10.5px, 10.5px) (vs. (11px, 11px)
Comment 4 zalan 2014-03-29 15:37:10 PDT
Committed r166456: <http://trac.webkit.org/changeset/166456>