Bug 134523 - Subpixel rendering: Inline box decoration rounds to integral.
Summary: Subpixel rendering: Inline box decoration rounds to integral.
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: zalan
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2014-07-01 16:34 PDT by zalan
Modified: 2014-07-07 21:14 PDT (History)
11 users (show)

See Also:


Attachments
Patch (11.53 KB, patch)
2014-07-01 18:41 PDT, zalan
no flags Details | Formatted Diff | Diff
Patch (11.59 KB, patch)
2014-07-01 18:44 PDT, zalan
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-07 for mac-mountainlion (836.44 KB, application/zip)
2014-07-01 20:30 PDT, Build Bot
no flags Details
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion (859.34 KB, application/zip)
2014-07-01 20:33 PDT, Build Bot
no flags Details
Archive of layout-test-results from webkit-ews-14 for mac-mountainlion-wk2 (765.09 KB, application/zip)
2014-07-02 00:57 PDT, Build Bot
no flags Details
Patch (20.56 KB, patch)
2014-07-07 13:32 PDT, zalan
no flags Details | Formatted Diff | Diff
Patch (20.55 KB, patch)
2014-07-07 20:47 PDT, zalan
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description zalan 2014-07-01 16:34:51 PDT
and it makes border painting off by one (at best)
Comment 1 zalan 2014-07-01 18:41:38 PDT
Created attachment 234229 [details]
Patch
Comment 2 zalan 2014-07-01 18:44:35 PDT
Created attachment 234231 [details]
Patch
Comment 3 zalan 2014-07-01 18:44:59 PDT
<rdar://problem/17530298>
Comment 4 Build Bot 2014-07-01 20:30:27 PDT
Comment on attachment 234231 [details]
Patch

Attachment 234231 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5746401841512448

New failing tests:
css1/formatting_model/inline_elements.html
fast/inline/hidpi-inline-text-decoration-with-subpixel-value.html
Comment 5 Build Bot 2014-07-01 20:30:32 PDT
Created attachment 234235 [details]
Archive of layout-test-results from webkit-ews-07 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-07  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 6 Build Bot 2014-07-01 20:33:47 PDT
Comment on attachment 234231 [details]
Patch

Attachment 234231 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5942802106023936

New failing tests:
css1/formatting_model/inline_elements.html
fast/inline/hidpi-inline-text-decoration-with-subpixel-value.html
Comment 7 Build Bot 2014-07-01 20:33:51 PDT
Created attachment 234236 [details]
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-08  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 8 Build Bot 2014-07-02 00:56:57 PDT
Comment on attachment 234231 [details]
Patch

Attachment 234231 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5511881594765312

New failing tests:
css1/formatting_model/inline_elements.html
fast/inline/hidpi-inline-text-decoration-with-subpixel-value.html
Comment 9 Build Bot 2014-07-02 00:57:02 PDT
Created attachment 234244 [details]
Archive of layout-test-results from webkit-ews-14 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-14  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 10 Darin Adler 2014-07-03 09:47:55 PDT
Comment on attachment 234231 [details]
Patch

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

EWS bots show tests failing.

> Source/WebCore/rendering/InlineFlowBox.cpp:1052
> -        LayoutRect boundsRect(roundedFrameRect());
> +        LayoutRect boundsRect = LayoutRect(topLeft(), size());

I don’t think this syntax is great:

    C a = C(b, c);

Two possibilities are what the existing code was doing:

    C a(b, c);

or if we prefer something that looks like assignment:

    C a = { b, c };

But also, it’s kind of annoying that InlineBox doesn’t have a function that returns this. It has logicalFrameRect but for some reason it doesn’t have frameRect. I think it’s really strange that the InlineBox class has x, y, width, height, left, top, size, right, and even bottom, but no function that just returns the whole thing as a rect.

> Source/WebCore/rendering/InlineFlowBox.cpp:1078
> +    LayoutRect rect = LayoutRect(topLeft(), size());

And again.

> Source/WebCore/rendering/InlineFlowBox.cpp:1287
> +    LayoutRect frameRect = LayoutRect(topLeft(), size());

And again.

> Source/WebCore/rendering/InlineFlowBox.cpp:1359
> +    LayoutRect frameRect = LayoutRect(topLeft(), size());

And again.
Comment 11 zalan 2014-07-07 13:32:42 PDT
Created attachment 234507 [details]
Patch
Comment 12 zalan 2014-07-07 13:33:00 PDT
Comment on attachment 234507 [details]
Patch

EWS testing.
Comment 13 Darin Adler 2014-07-07 16:11:18 PDT
Comment on attachment 234507 [details]
Patch

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

> Source/WebCore/rendering/InlineBox.h:213
> +    // FIXME: position/size related functions need cleanup.

While I agree with the sentiment, I don’t think this is a helpful FIXME.
Comment 14 zalan 2014-07-07 16:32:28 PDT
(In reply to comment #13)
> (From update of attachment 234507 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=234507&action=review
> 
> > Source/WebCore/rendering/InlineBox.h:213
> > +    // FIXME: position/size related functions need cleanup.
> 
> While I agree with the sentiment, I don’t think this is a helpful FIXME.
Indeed, I'll remove it before landing.

InlineBox should offer similar set of bounds (position/size) APIs as RenderBox. bug 134702
Comment 15 zalan 2014-07-07 20:47:06 PDT
Created attachment 234543 [details]
Patch
Comment 16 WebKit Commit Bot 2014-07-07 21:14:03 PDT
Comment on attachment 234543 [details]
Patch

Clearing flags on attachment: 234543

Committed r170875: <http://trac.webkit.org/changeset/170875>
Comment 17 WebKit Commit Bot 2014-07-07 21:14:10 PDT
All reviewed patches have been landed.  Closing bug.