WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
116140
Direct pattern compositing breaks when no-repeat is set on a large layer
https://bugs.webkit.org/show_bug.cgi?id=116140
Summary
Direct pattern compositing breaks when no-repeat is set on a large layer
Noam Rosenthal
Reported
2013-05-15 00:36:28 PDT
Direct pattern compositing breaks when no-repeat is set on a large layer
Attachments
Patch
(4.52 KB, patch)
2013-05-15 00:40 PDT
,
Noam Rosenthal
no flags
Details
Formatted Diff
Diff
Patch
(4.46 KB, patch)
2013-05-15 00:49 PDT
,
Noam Rosenthal
no flags
Details
Formatted Diff
Diff
Patch
(4.47 KB, patch)
2013-05-17 05:47 PDT
,
Noam Rosenthal
no flags
Details
Formatted Diff
Diff
Patch
(4.39 KB, patch)
2013-05-24 09:21 PDT
,
Noam Rosenthal
no flags
Details
Formatted Diff
Diff
Patch for landing
(4.52 KB, patch)
2013-05-25 01:28 PDT
,
Noam Rosenthal
no flags
Details
Formatted Diff
Diff
Show Obsolete
(4)
View All
Add attachment
proposed patch, testcase, etc.
Noam Rosenthal
Comment 1
2013-05-15 00:40:00 PDT
Created
attachment 201797
[details]
Patch
Csaba Osztrogonác
Comment 2
2013-05-15 00:47:26 PDT
Comment on
attachment 201797
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=201797&action=review
> LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat-expected.html:8 > + background-image: url(
http://achicu.github.io/css-presentation/images/webkit-icon.png
);
Do we really want to depend on an external image?
> LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat.html:8 > + background-image: url(
http://achicu.github.io/css-presentation/images/webkit-icon.png
);
ditto
Noam Rosenthal
Comment 3
2013-05-15 00:49:11 PDT
Created
attachment 201798
[details]
Patch
Noam Rosenthal
Comment 4
2013-05-15 00:49:37 PDT
(In reply to
comment #2
)
> (From update of
attachment 201797
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=201797&action=review
> > > LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat-expected.html:8 > > + background-image: url(
http://achicu.github.io/css-presentation/images/webkit-icon.png
); > > Do we really want to depend on an external image? > > > LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat.html:8 > > + background-image: url(
http://achicu.github.io/css-presentation/images/webkit-icon.png
); > > ditto
Oops, of course not :)
Benjamin Poulain
Comment 5
2013-05-15 13:53:06 PDT
Comment on
attachment 201798
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=201798&action=review
> LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat-expected.html:4 > + .composited { -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 3, 1); }
I'd remove this from the reference.
Simon Fraser (smfr)
Comment 6
2013-05-15 13:57:38 PDT
Comment on
attachment 201798
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=201798&action=review
> Source/WebCore/ChangeLog:10 > + Making sure that the solid color logic only overrides the cotnentsRect if the background
Typo cotnentsRect
> Source/WebCore/rendering/RenderLayerBacking.cpp:894 > updateDirectlyCompositedBackgroundImage(isSimpleContainer, didUpdateContentsRect); > + if (didUpdateContentsRect) > + return; > updateDirectlyCompositedBackgroundColor(isSimpleContainer, didUpdateContentsRect);
It's not clear why you should bail if didUpdateContentsRect is true. Does that mean you chose to use the background image path? Why does didUpdateContentsRect indicate that, rather than the return value?
>> LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat-expected.html:4 >> + .composited { -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 3, 1); } > > I'd remove this from the reference.
Composited vs. non-composted refs break on Mac, alas. But this should use translateZ() or something less mysterious.
Noam Rosenthal
Comment 7
2013-05-15 14:06:12 PDT
> It's not clear why you should bail if didUpdateContentsRect is true. Does that mean you chose to use the background image path? Why does didUpdateContentsRect indicate that, rather than the return value? >
Right, I'll change it to be a return value.
> >> LayoutTests/compositing/patterns/direct-pattern-compositing-contain-no-repeat > > Composited vs. non-composted refs break on Mac, alas.
Is that going to be fixed as we discussed at the summit, or should I make this into a regular pixel test? Ref-tests seem like the right choice here given that the platform supports them.
> But this should use translateZ() or something less mysterious.
Sure :)
Noam Rosenthal
Comment 8
2013-05-17 05:47:32 PDT
Created
attachment 202070
[details]
Patch
Noam Rosenthal
Comment 9
2013-05-24 09:21:48 PDT
Created
attachment 202829
[details]
Patch
Antti Koivisto
Comment 10
2013-05-24 09:24:32 PDT
Comment on
attachment 202829
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=202829&action=review
> Source/WebCore/rendering/RenderLayerBacking.cpp:879 > - updateDirectlyCompositedBackgroundImage(isSimpleContainer, didUpdateContentsRect); > updateDirectlyCompositedBackgroundColor(isSimpleContainer, didUpdateContentsRect); > + updateDirectlyCompositedBackgroundImage(isSimpleContainer, didUpdateContentsRect);
Would be good to add a comment mentioning why the order matters.
Noam Rosenthal
Comment 11
2013-05-25 01:28:50 PDT
Created
attachment 202879
[details]
Patch for landing
WebKit Commit Bot
Comment 12
2013-05-25 02:51:08 PDT
Comment on
attachment 202879
[details]
Patch for landing Clearing flags on attachment: 202879 Committed
r150685
: <
http://trac.webkit.org/changeset/150685
>
WebKit Commit Bot
Comment 13
2013-05-25 02:51:11 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