WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
129859
Subpixel rendering: Transform origin is miscalculated when RenderLayer's offsetfromRenderer has device pixel fraction value.
https://bugs.webkit.org/show_bug.cgi?id=129859
Summary
Subpixel rendering: Transform origin is miscalculated when RenderLayer's offs...
alan
Reported
2014-03-06 20:35:57 PST
Miscalculated transform origin produces off by one rendering errors for transforms like rotate.
Attachments
Patch
(5.85 KB, patch)
2014-03-08 18:33 PST
,
alan
no flags
Details
Formatted Diff
Diff
Patch
(9.20 KB, patch)
2014-03-09 17:04 PDT
,
alan
buildbot
: commit-queue-
Details
Formatted Diff
Diff
Archive of layout-test-results from webkit-ews-10 for mac-mountainlion-wk2
(493.61 KB, application/zip)
2014-03-09 18:10 PDT
,
Build Bot
no flags
Details
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion
(523.76 KB, application/zip)
2014-03-09 18:32 PDT
,
Build Bot
no flags
Details
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2
(495.35 KB, application/zip)
2014-03-09 19:05 PDT
,
Build Bot
no flags
Details
Archive of layout-test-results from webkit-ews-07 for mac-mountainlion
(522.97 KB, application/zip)
2014-03-09 19:34 PDT
,
Build Bot
no flags
Details
Patch
(14.22 KB, patch)
2014-03-11 20:44 PDT
,
alan
no flags
Details
Formatted Diff
Diff
Patch
(14.99 KB, patch)
2014-03-18 20:14 PDT
,
alan
no flags
Details
Formatted Diff
Diff
Show Obsolete
(7)
View All
Add attachment
proposed patch, testcase, etc.
alan
Comment 1
2014-03-08 16:44:36 PST
This patch requires to be able to test hidpi compositing layers.
bug 129961
alan
Comment 2
2014-03-08 18:33:11 PST
Created
attachment 226244
[details]
Patch
Simon Fraser (smfr)
Comment 3
2014-03-08 19:41:42 PST
Comment on
attachment 226244
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=226244&action=review
> Source/WebCore/rendering/RenderLayerBacking.cpp:845 > + LayoutRect layerBounds(LayoutPoint(roundedForPainting(offsetFromParent, deviceScaleFactor)), borderBox.size());
It's a bit odd that the origin is device-pixel snapped, but the size is not. Does this work for large boxes where a percentage transform-origin could be visibly affected by the exact size?
alan
Comment 4
2014-03-08 19:43:05 PST
(In reply to
comment #3
)
> (From update of
attachment 226244
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=226244&action=review
> > > Source/WebCore/rendering/RenderLayerBacking.cpp:845 > > + LayoutRect layerBounds(LayoutPoint(roundedForPainting(offsetFromParent, deviceScaleFactor)), borderBox.size()); > > It's a bit odd that the origin is device-pixel snapped, but the size is not. Does this work for large boxes where a percentage transform-origin could be visibly affected by the exact size?
Good catch. It is most likely incorrect.
alan
Comment 5
2014-03-09 17:04:39 PDT
Created
attachment 226262
[details]
Patch
alan
Comment 6
2014-03-09 17:04:55 PDT
Comment on
attachment 226262
[details]
Patch EWSing
Build Bot
Comment 7
2014-03-09 18:10:22 PDT
Comment on
attachment 226262
[details]
Patch
Attachment 226262
[details]
did not pass mac-wk2-ews (mac-wk2): Output:
http://webkit-queues.appspot.com/results/6043000496979968
New failing tests: compositing/columns/composited-columns.html compositing/repaint/resize-repaint.html compositing/visibility/visibility-image-layers-dynamic.html compositing/repaint/invalidations-on-composited-layers.html compositing/geometry/limit-layer-bounds-opacity-transition.html
Build Bot
Comment 8
2014-03-09 18:10:25 PDT
Created
attachment 226263
[details]
Archive of layout-test-results from webkit-ews-10 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-10 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Build Bot
Comment 9
2014-03-09 18:32:14 PDT
Comment on
attachment 226262
[details]
Patch
Attachment 226262
[details]
did not pass mac-ews (mac): Output:
http://webkit-queues.appspot.com/results/4645108901216256
New failing tests: compositing/columns/composited-columns.html compositing/repaint/resize-repaint.html compositing/visibility/visibility-image-layers-dynamic.html compositing/repaint/invalidations-on-composited-layers.html compositing/geometry/limit-layer-bounds-opacity-transition.html
Build Bot
Comment 10
2014-03-09 18:32:17 PDT
Created
attachment 226264
[details]
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-03 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Build Bot
Comment 11
2014-03-09 19:05:01 PDT
Comment on
attachment 226262
[details]
Patch
Attachment 226262
[details]
did not pass mac-wk2-ews (mac-wk2): Output:
http://webkit-queues.appspot.com/results/6612167415562240
New failing tests: compositing/columns/composited-columns.html compositing/repaint/resize-repaint.html compositing/visibility/visibility-image-layers-dynamic.html compositing/repaint/invalidations-on-composited-layers.html compositing/geometry/limit-layer-bounds-opacity-transition.html
Build Bot
Comment 12
2014-03-09 19:05:05 PDT
Created
attachment 226265
[details]
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-11 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Build Bot
Comment 13
2014-03-09 19:34:02 PDT
Comment on
attachment 226262
[details]
Patch
Attachment 226262
[details]
did not pass mac-ews (mac): Output:
http://webkit-queues.appspot.com/results/6541343404851200
New failing tests: compositing/columns/composited-columns.html compositing/repaint/resize-repaint.html compositing/visibility/visibility-image-layers-dynamic.html compositing/repaint/invalidations-on-composited-layers.html compositing/geometry/limit-layer-bounds-opacity-transition.html
Build Bot
Comment 14
2014-03-09 19:34:05 PDT
Created
attachment 226271
[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
alan
Comment 15
2014-03-11 20:44:33 PDT
Created
attachment 226469
[details]
Patch
Simon Fraser (smfr)
Comment 16
2014-03-11 21:00:14 PDT
Comment on
attachment 226469
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=226469&action=review
> LayoutTests/platform/mac/compositing/visibility/visibility-image-layers-dynamic-expected.txt:114 > + (anchor 0.50 0.50)
Are these just slightly different from 0.5? Maybe we need to print more precision.
> Source/WebCore/rendering/RenderLayerBacking.cpp:848 > + FloatPoint3D anchor(enclosingRelativeCompositingBounds.width() != 0.0f ? ((layerOffset.x() - enclosingRelativeCompositingBounds.x()) + transformOrigin.x()) > + / enclosingRelativeCompositingBounds.width() : 0.5f, enclosingRelativeCompositingBounds.height() != 0.0f ? ((layerOffset.y() - enclosingRelativeCompositingBounds.y())
0.0f -> 0, 0.5f -> 0.5
alan
Comment 17
2014-03-18 20:14:52 PDT
Created
attachment 227150
[details]
Patch
alan
Comment 18
2014-03-18 20:15:40 PDT
Comment on
attachment 227150
[details]
Patch EWS testing.
alan
Comment 19
2014-03-18 20:22:50 PDT
(In reply to
comment #16
)
> (From update of
attachment 226469
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=226469&action=review
> > > LayoutTests/platform/mac/compositing/visibility/visibility-image-layers-dynamic-expected.txt:114 > > + (anchor 0.50 0.50) > > Are these just slightly different from 0.5? Maybe we need to print more precision.
bug 130442
> > > Source/WebCore/rendering/RenderLayerBacking.cpp:848 > > + FloatPoint3D anchor(enclosingRelativeCompositingBounds.width() != 0.0f ? ((layerOffset.x() - enclosingRelativeCompositingBounds.x()) + transformOrigin.x()) > > + / enclosingRelativeCompositingBounds.width() : 0.5f, enclosingRelativeCompositingBounds.height() != 0.0f ? ((layerOffset.y() - enclosingRelativeCompositingBounds.y()) > > 0.0f -> 0, 0.5f -> 0.5
done.
WebKit Commit Bot
Comment 20
2014-03-19 07:26:02 PDT
Comment on
attachment 227150
[details]
Patch Clearing flags on attachment: 227150 Committed
r165892
: <
http://trac.webkit.org/changeset/165892
>
WebKit Commit Bot
Comment 21
2014-03-19 07:26:07 PDT
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug