Bug 108203

Summary: Allow direct compositing of background images
Product: WebKit Reporter: Noam Rosenthal <noam>
Component: New BugsAssignee: Noam Rosenthal <noam>
Status: RESOLVED FIXED    
Severity: Normal CC: anilsson, bdakin, buildbot, commit-queue, dglazkov, efidler, eric, esprehn+autocc, heejin.r.chung, jamesr, laszlo.gombos, ojan.autocc, ostap73, rniwa, sakari.poussa, simon.fraser, tonikitoo, webkit.review.bot, zeno
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 104159, 109588    
Attachments:
Description Flags
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Archive of layout-test-results from gce-cr-linux-05
none
Archive of layout-test-results from gce-cr-linux-06
none
Patch
none
Patch none

Description Noam Rosenthal 2013-01-29 10:33:13 PST
Allow direct compositing of background images
Comment 1 Noam Rosenthal 2013-01-29 10:55:27 PST
Created attachment 185267 [details]
Patch
Comment 2 Simon Fraser (smfr) 2013-01-29 11:08:21 PST
Comment on attachment 185267 [details]
Patch

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

> Source/WebCore/platform/graphics/GraphicsLayer.h:330
> +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.
> +    virtual void setContentsTileRect(const IntRect& r) { m_contentsTileRect = r; }
> +    IntRect contentsTileRect() const { return m_contentsTileRect; }

Are you only supporting tiled background images? What about tiling just in x or y, or untiled?

> Source/WebCore/rendering/RenderLayerBacking.cpp:1373
> +    if (renderer()->isImage())
> +        return;

This seems a bit out of place here. I would not expect to get into this function for an image.
Comment 3 Noam Rosenthal 2013-01-29 11:10:31 PST
(In reply to comment #2)
> (From update of attachment 185267 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=185267&action=review
> 
> > Source/WebCore/platform/graphics/GraphicsLayer.h:330
> > +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.
> > +    virtual void setContentsTileRect(const IntRect& r) { m_contentsTileRect = r; }
> > +    IntRect contentsTileRect() const { return m_contentsTileRect; }
> 
> Are you only supporting tiled background images? What about tiling just in x or y, or untiled?
>
Supporting x, y and untiled as well, but those don't require a contentsTileRect.
 
> > Source/WebCore/rendering/RenderLayerBacking.cpp:1373
> > +    if (renderer()->isImage())
> > +        return;
> 
> This seems a bit out of place here. I would not expect to get into this function for an image.
Right.
Comment 4 Simon Fraser (smfr) 2013-01-29 11:11:33 PST
(In reply to comment #3)
> (In reply to comment #2)
> > (From update of attachment 185267 [details] [details])
> > View in context: https://bugs.webkit.org/attachment.cgi?id=185267&action=review
> > 
> > > Source/WebCore/platform/graphics/GraphicsLayer.h:330
> > > +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.
> > > +    virtual void setContentsTileRect(const IntRect& r) { m_contentsTileRect = r; }
> > > +    IntRect contentsTileRect() const { return m_contentsTileRect; }
> > 
> > Are you only supporting tiled background images? What about tiling just in x or y, or untiled?
> >
> Supporting x, y and untiled as well, but those don't require a contentsTileRect.

I didn't see functions on GraphicsLayer to specify the tiling behavior.
Comment 5 Noam Rosenthal 2013-01-29 11:13:46 PST
(In reply to comment #4)
> (In reply to comment #3)
> > (In reply to comment #2)
> > > (From update of attachment 185267 [details] [details] [details])
> > > View in context: https://bugs.webkit.org/attachment.cgi?id=185267&action=review
> > > 
> > > > Source/WebCore/platform/graphics/GraphicsLayer.h:330
> > > > +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.
> > > > +    virtual void setContentsTileRect(const IntRect& r) { m_contentsTileRect = r; }
> > > > +    IntRect contentsTileRect() const { return m_contentsTileRect; }
> > > 
> > > Are you only supporting tiled background images? What about tiling just in x or y, or untiled?
> > >
> > Supporting x, y and untiled as well, but those don't require a contentsTileRect.
> 
> I didn't see functions on GraphicsLayer to specify the tiling behavior.
It's not necessary. RenderBoxObjectModel::getGeometryForBackgroundImage takes care of that.
For example if the background is tiled only horizontally, the contentsRect would be cropped to include only the tiled row.
Comment 6 Noam Rosenthal 2013-01-29 11:15:23 PST
(In reply to comment #5)
> (In reply to comment #4)
> > (In reply to comment #3)
> > > (In reply to comment #2)
> > > > (From update of attachment 185267 [details] [details] [details] [details])
> > > > View in context: https://bugs.webkit.org/attachment.cgi?id=185267&action=review
> > > > 
> > > > > Source/WebCore/platform/graphics/GraphicsLayer.h:330
> > > > > +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.
> > > > > +    virtual void setContentsTileRect(const IntRect& r) { m_contentsTileRect = r; }
> > > > > +    IntRect contentsTileRect() const { return m_contentsTileRect; }
> > > > 
> > > > Are you only supporting tiled background images? What about tiling just in x or y, or untiled?
> > > >
> > > Supporting x, y and untiled as well, but those don't require a contentsTileRect.
> > 
> > I didn't see functions on GraphicsLayer to specify the tiling behavior.
> It's not necessary. RenderBoxObjectModel::getGeometryForBackgroundImage takes care of that.
> For example if the background is tiled only horizontally, the contentsRect would be cropped to include only the tiled row.

I should probably add that to the Changelog :)
Comment 7 Build Bot 2013-01-29 12:02:35 PST
Comment on attachment 185267 [details]
Patch

Attachment 185267 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16218108
Comment 8 Build Bot 2013-01-29 13:04:59 PST
Comment on attachment 185267 [details]
Patch

Attachment 185267 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16195270
Comment 9 Noam Rosenthal 2013-01-30 02:35:27 PST
Created attachment 185443 [details]
Patch
Comment 10 Noam Rosenthal 2013-01-30 05:48:04 PST
Created attachment 185478 [details]
Patch
Comment 11 Build Bot 2013-01-30 06:44:32 PST
Comment on attachment 185478 [details]
Patch

Attachment 185478 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16195694

New failing tests:
compositing/patterns/direct-pattern-compositing-rotation.html
Comment 12 Noam Rosenthal 2013-01-30 07:44:28 PST
Created attachment 185505 [details]
Patch
Comment 13 Build Bot 2013-01-30 10:05:20 PST
Comment on attachment 185505 [details]
Patch

Attachment 185505 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16218609

New failing tests:
compositing/patterns/direct-pattern-compositing-rotation.html
Comment 14 Noam Rosenthal 2013-01-30 10:11:33 PST
Created attachment 185513 [details]
Patch
Comment 15 Noam Rosenthal 2013-01-30 13:44:00 PST
Removed the rotation test, it doesn't make sense as a ref test.
Comment 16 WebKit Review Bot 2013-01-31 02:17:06 PST
Comment on attachment 185513 [details]
Patch

Attachment 185513 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16272096

New failing tests:
platform/chromium/virtual/gpu/compositedscrolling/overflow/scroll-ancestor-update.html
platform/chromium/virtual/gpu/fast/canvas/fillrect_gradient.html
platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update.html
platform/chromium/virtual/gpu/fast/canvas/patternfill-repeat.html
platform/chromium/virtual/gpu/fast/canvas/canvas-composite.html
platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling.html
compositing/patterns/direct-pattern-compositing-padding.html
compositing/overflow/overflow-compositing-descendant.html
compositing/layers-inside-overflow-scroll.html
platform/chromium/virtual/softwarecompositing/overflow/overflow-compositing-descendant.html
fast/loader/text-document-wrapping.html
platform/chromium/virtual/softwarecompositing/tile-cache-must-flatten.html
compositing/self-painting-layers.html
compositing/overflow/scroll-ancestor-update.html
platform/chromium/virtual/softwarecompositing/self-painting-layers.html
platform/chromium/virtual/gpu/fast/canvas/canvas-text-alignment.html
compositing/visibility/visibility-simple-video-layer.html
platform/chromium/virtual/gpu/fast/canvas/canvas-text-baseline.html
compositing/geometry/video-opacity-overlay.html
platform/chromium/virtual/softwarecompositing/repaint/clipped-layer-size-change.html
compositing/geometry/video-fixed-scrolling.html
platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-compositing-descendant.html
platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay.html
platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-padding.html
compositing/webgl/webgl-no-alpha.html
compositing/webgl/webgl-reflection.html
fast/loader/javascript-url-in-object.html
Comment 17 Noam Rosenthal 2013-02-01 02:22:47 PST
Created attachment 185990 [details]
Patch
Comment 18 Build Bot 2013-02-01 07:36:14 PST
Comment on attachment 185990 [details]
Patch

Attachment 185990 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16293679

New failing tests:
compositing/background-color/background-color-change-to-text.html
css3/filters/huge-region-composited.html
compositing/background-color/background-color-padding-change.html
Comment 19 Build Bot 2013-02-01 08:34:53 PST
Comment on attachment 185990 [details]
Patch

Attachment 185990 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16306732

New failing tests:
compositing/background-color/background-color-change-to-text.html
css3/filters/huge-region-composited.html
compositing/background-color/background-color-padding-change.html
Comment 20 Build Bot 2013-02-01 09:22:54 PST
Comment on attachment 185990 [details]
Patch

Attachment 185990 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16308768

New failing tests:
fast/css/sticky/sticky-as-positioning-container.html
compositing/background-color/background-color-change-to-text.html
css3/filters/huge-region-composited.html
compositing/background-color/background-color-padding-change.html
compositing/patterns/direct-pattern-compositing-add-text.html
Comment 21 WebKit Review Bot 2013-02-01 15:28:10 PST
Comment on attachment 185990 [details]
Patch

Attachment 185990 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16331211

New failing tests:
compositing/patterns/direct-pattern-compositing-padding.html
css3/filters/huge-region-composited.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-padding.html
Comment 22 Noam Rosenthal 2013-02-02 03:13:38 PST
Created attachment 186221 [details]
Patch
Comment 23 WebKit Review Bot 2013-02-02 04:24:03 PST
Comment on attachment 186221 [details]
Patch

Attachment 186221 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16343677

New failing tests:
compositing/patterns/direct-pattern-compositing-padding.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-padding.html
Comment 24 Build Bot 2013-02-02 05:20:15 PST
Comment on attachment 186221 [details]
Patch

Attachment 186221 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16337768
Comment 25 WebKit Review Bot 2013-02-02 05:30:23 PST
Comment on attachment 186221 [details]
Patch

Attachment 186221 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16342710

New failing tests:
compositing/patterns/direct-pattern-compositing-padding.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-padding.html
Comment 26 Noam Rosenthal 2013-02-02 07:09:42 PST
Created attachment 186229 [details]
Patch
Comment 27 Build Bot 2013-02-02 09:13:27 PST
Comment on attachment 186229 [details]
Patch

Attachment 186229 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16335922
Comment 28 Build Bot 2013-02-02 10:15:35 PST
Comment on attachment 186229 [details]
Patch

Attachment 186229 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16346026
Comment 29 Noam Rosenthal 2013-02-04 09:54:37 PST
Created attachment 186405 [details]
Patch
Comment 30 Build Bot 2013-02-04 12:29:36 PST
Comment on attachment 186405 [details]
Patch

Attachment 186405 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16374289

New failing tests:
compositing/patterns/direct-pattern-compositing-change.html
Comment 31 Build Bot 2013-02-04 14:26:36 PST
Comment on attachment 186405 [details]
Patch

Attachment 186405 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16371408
Comment 32 Noam Rosenthal 2013-02-07 10:04:48 PST
Those tests work perfectly on my machine; Is there some flakiness with running ref-tests with CA?
Comment 33 Noam Rosenthal 2013-02-09 09:38:14 PST
Created attachment 187434 [details]
Patch
Comment 34 WebKit Review Bot 2013-02-09 15:04:22 PST
Comment on attachment 187434 [details]
Patch

Attachment 187434 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16467620

New failing tests:
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-add-text.html
compositing/patterns/direct-pattern-compositing-padding.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-position.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-cover.html
compositing/patterns/direct-pattern-compositing.html
compositing/patterns/direct-pattern-compositing-cover.html
compositing/patterns/direct-pattern-compositing-position.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing.html
compositing/patterns/direct-pattern-compositing-contain.html
compositing/patterns/direct-pattern-compositing-change.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-change.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-contain.html
compositing/patterns/direct-pattern-compositing-size.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-size.html
compositing/patterns/direct-pattern-compositing-add-text.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-padding.html
Comment 35 Noam Rosenthal 2013-02-09 15:31:03 PST
Created attachment 187449 [details]
Patch
Comment 36 WebKit Review Bot 2013-02-10 00:40:21 PST
Comment on attachment 187449 [details]
Patch

Attachment 187449 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16473699

New failing tests:
compositing/patterns/direct-pattern-compositing-change.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-change.html
Comment 37 Noam Rosenthal 2013-02-10 02:44:51 PST
Created attachment 187473 [details]
Patch
Comment 38 WebKit Review Bot 2013-02-10 06:53:33 PST
Comment on attachment 187473 [details]
Patch

Attachment 187473 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16479703

New failing tests:
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-add-text.html
compositing/patterns/direct-pattern-compositing-change.html
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-change.html
compositing/patterns/direct-pattern-compositing-add-text.html
Comment 39 Noam Rosenthal 2013-02-11 04:14:08 PST
Created attachment 187543 [details]
Patch
Comment 40 Noam Rosenthal 2013-02-12 08:45:14 PST
Created attachment 187875 [details]
Patch
Comment 41 Noam Rosenthal 2013-02-21 12:37:26 PST
Ping?
Comment 42 Noam Rosenthal 2013-03-15 11:11:28 PDT
(In reply to comment #41)
> Ping?
Simon, any chance for review? This has been sitting here for a while.
Comment 43 Simon Fraser (smfr) 2013-03-15 11:41:27 PDT
Comment on attachment 187875 [details]
Patch

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

> Source/WebCore/platform/graphics/GraphicsLayer.h:328
> +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.

This comment and name are a bit ambiguous. For repeated contents, does this represent just a single tile (in order to specify the offset and size), not the area covered by tiles?

Might it be clearer to use phase and tileSize instead?

> Source/WebCore/rendering/RenderLayerBacking.cpp:1344
> +    Color color = style->visitedDependentColor(CSSPropertyBackgroundColor);
> +    if (color.isValid() && color.alpha())
> +        return false;

Why does an alpha color bail here? Can't you still set the layer's background color and also do tiling?

> Source/WebCore/rendering/RenderLayerBacking.cpp:1353
> +    if (!styleImage->isLoaded())
> +        return false;

Does the image loading cause us to re-evaluate compositing?

> Source/WebCore/rendering/RenderLayerBacking.cpp:1363
> +    enum { MaxSizeForPatten = 1024 };
> +    if (image->width() > MaxSizeForPatten || image->height() > MaxSizeForPatten)
> +        return false;

This looks pretty platform-specific.

> Source/WebCore/rendering/RenderLayerBacking.cpp:1377
> +    if (!isSimpleContainer || !style->hasBackgroundImage()) {
> +        m_graphicsLayer->setContentsToImage(0);
> +        return;

It's not clear from the function name that you'll never get here for composited <img>, so setting contents to image unconditionally looks a bit weird.

> LayoutTests/compositing/patterns/direct-pattern-compositing-add-text-expected.html:2
> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
> +   "http://www.w3.org/TR/html4/loose.dtd">

Yuck.

> LayoutTests/compositing/patterns/direct-pattern-compositing-add-text.html:2
> +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
> +   "http://www.w3.org/TR/html4/loose.dtd">

Ditto.
Comment 44 Noam Rosenthal 2013-03-15 12:02:49 PDT
Comment on attachment 187875 [details]
Patch

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

>> Source/WebCore/platform/graphics/GraphicsLayer.h:328
>> +    // contentsTileRect is a single tile of contents in layer coordinates, if contents is to be repeated.
> 
> This comment and name are a bit ambiguous. For repeated contents, does this represent just a single tile (in order to specify the offset and size), not the area covered by tiles?
> 
> Might it be clearer to use phase and tileSize instead?

I was contemplating this. Yes, maybe setContentsTilePhase and setContentsTileSize would work better.

>> Source/WebCore/rendering/RenderLayerBacking.cpp:1344
>> +        return false;
> 
> Why does an alpha color bail here? Can't you still set the layer's background color and also do tiling?

It's currently not supported. We can support this in the future, but need to take care of background-compositing and other issues.
Trying to err on the careful side for this patch. also, the more elements added to the layer, the less it benefits from direct compositing.

>> Source/WebCore/rendering/RenderLayerBacking.cpp:1353
>> +        return false;
> 
> Does the image loading cause us to re-evaluate compositing?

Actually, no. I'll investigate what's the right thing to do with contentChanged.

>> Source/WebCore/rendering/RenderLayerBacking.cpp:1363
>> +        return false;
> 
> This looks pretty platform-specific.

OK, I'll move to GraphicsLayer::shouldDirectlyCompositeTiledImage

>> Source/WebCore/rendering/RenderLayerBacking.cpp:1377
>> +        return;
> 
> It's not clear from the function name that you'll never get here for composited <img>, so setting contents to image unconditionally looks a bit weird.

Would a comment suffice for this? or maybe change the function name to updateDirectlyCompositedBackgroundImage?

>> LayoutTests/compositing/patterns/direct-pattern-compositing-add-text-expected.html:2
>> +   "http://www.w3.org/TR/html4/loose.dtd">
> 
> Yuck.

Oops, copy paste from somewhere.
Comment 45 Simon Fraser (smfr) 2013-03-15 12:07:05 PDT
(In reply to comment #44)
> (From update of attachment 187875 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=187875&action=review
> > Why does an alpha color bail here? Can't you still set the layer's background color and also do tiling?
> 
> It's currently not supported. We can support this in the future, but need to take care of background-compositing and other issues.
> Trying to err on the careful side for this patch. also, the more elements added to the layer, the less it benefits from direct compositing.

OK.

> > It's not clear from the function name that you'll never get here for composited <img>, so setting contents to image unconditionally looks a bit weird.
> 
> Would a comment suffice for this? or maybe change the function name to updateDirectlyCompositedBackgroundImage?

That name is better.
Comment 46 Noam Rosenthal 2013-03-18 09:57:57 PDT
Created attachment 193589 [details]
Patch
Comment 47 Build Bot 2013-03-18 15:01:16 PDT
Comment on attachment 193589 [details]
Patch

Attachment 193589 [details] did not pass mac-ews (mac):
Output: http://webkit-commit-queue.appspot.com/results/17187500

New failing tests:
css3/filters/custom/effect-custom-transform-parameters.html
compositing/background-color/background-color-alpha.html
fast/repaint/region-painting-in-composited-view.html
compositing/background-color/background-color-text-change.html
compositing/background-color/background-color-composite.html
compositing/background-color/background-color-text-clip.html
compositing/background-color/background-color-content-clip.html
compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html
compositing/background-color/background-color-padding-clip.html
fast/layers/no-clipping-overflow-hidden-added-after-transition.html
compositing/background-color/background-color-container.html
compositing/background-color/background-color-simple.html
css3/filters/huge-region-composited.html
compositing/overlap-blending/children-opacity-no-overlap.html
Comment 48 WebKit Review Bot 2013-03-18 16:56:50 PDT
Comment on attachment 193589 [details]
Patch

Attachment 193589 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/17132280

New failing tests:
css3/filters/effect-blur-hw.html
compositing/webgl/webgl-nonpremultiplied-blend.html
compositing/nested-direct-image-compositing.html
compositing/direct-image-compositing.html
http/tests/cache/subresource-failover-to-network.html
fast/css/font-family-pictograph.html
css3/filters/huge-region-composited.html
compositing/visibility/visibility-simple-canvas2d-layer.html
fast/canvas/webgl/webgl-layer-update.html
compositing/webgl/webgl-repaint.html
compositing/images/content-image.html
compositing/images/content-image-change.html
fast/canvas/webgl/webgl-composite-modes-repaint.html
compositing/visibility/visibility-simple-webgl-layer.html
compositing/patterns/direct-pattern-compositing.html
compositing/culling/tile-occlusion-boundaries.html
compositing/overflow/overflow-hidden-canvas-layer.html
compositing/visibility/visibility-image-layers.html
compositing/webgl/webgl-no-alpha.html
css3/filters/effect-reference-hw.html
compositing/webgl/webgl-reflection.html
compositing/visibility/visibility-image-layers-dynamic.html
compositing/backface-visibility/backface-visibility-image.html
compositing/masks/direct-image-mask.html
fast/canvas/webgl/webgl-composite-modes.html
fast/loader/javascript-url-in-object.html
compositing/color-matching/image-color-matching.html
compositing/overflow/overflow-compositing-descendant.html
compositing/backface-visibility/backface-visibility-webgl.html
compositing/reflections/simple-composited-reflections.html
Comment 49 Build Bot 2013-03-19 03:31:47 PDT
Comment on attachment 193589 [details]
Patch

Attachment 193589 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-commit-queue.appspot.com/results/17121799

New failing tests:
fast/css/sticky/sticky-margins.html
fast/css/sticky/sticky-top-margins.html
compositing/background-color/background-color-composite.html
fast/css/sticky/sticky-left-percentage.html
fast/css/sticky/sticky-stacking-context.html
fast/css/sticky/sticky-writing-mode-vertical-rl.html
fast/css/sticky/sticky-both-sides.html
css3/filters/huge-region-composited.html
fast/css/sticky/sticky-side-margins.html
fast/css/sticky/sticky-left.html
compositing/background-color/background-color-text-change.html
compositing/background-color/background-color-simple.html
css3/filters/custom/effect-custom-transform-parameters.html
fast/css/sticky/sticky-top.html
fast/layers/no-clipping-overflow-hidden-added-after-transition.html
fast/css/sticky/inflow-sticky.html
compositing/background-color/background-color-content-clip.html
editing/pasteboard/smart-paste-001.html
compositing/overlap-blending/children-opacity-no-overlap.html
fast/forms/number/number-spinbutton-in-multi-column.html
compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html
compositing/background-color/background-color-padding-clip.html
compositing/background-color/background-color-container.html
fast/css/sticky/sticky-writing-mode-vertical-lr.html
fast/css/sticky/sticky-writing-mode-horizontal-bt.html
http/tests/security/cross-origin-appcache-allowed.html
canvas/philip/tests/2d.text.draw.fontface.notinpage.html
compositing/background-color/background-color-text-clip.html
fast/css/sticky/sticky-overflowing.html
compositing/background-color/background-color-alpha.html
Comment 50 Noam Rosenthal 2013-03-22 03:48:01 PDT
Created attachment 194501 [details]
Patch
Comment 51 WebKit Review Bot 2013-03-22 05:16:02 PDT
Comment on attachment 194501 [details]
Patch

Attachment 194501 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/17140618

New failing tests:
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-load.html
compositing/patterns/direct-pattern-compositing-load.html
Comment 52 WebKit Review Bot 2013-03-22 05:16:07 PDT
Created attachment 194517 [details]
Archive of layout-test-results from gce-cr-linux-05

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: gce-cr-linux-05  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-3.3.8-gcg-201212281604-x86_64-with-GCEL-10.04-gcel_10.04
Comment 53 WebKit Review Bot 2013-03-22 05:53:59 PDT
Comment on attachment 194501 [details]
Patch

Attachment 194501 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/17247356

New failing tests:
platform/chromium/virtual/softwarecompositing/patterns/direct-pattern-compositing-load.html
compositing/patterns/direct-pattern-compositing-load.html
Comment 54 WebKit Review Bot 2013-03-22 05:54:05 PDT
Created attachment 194522 [details]
Archive of layout-test-results from gce-cr-linux-06

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: gce-cr-linux-06  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-3.3.8-gcg-201212281604-x86_64-with-GCEL-10.04-gcel_10.04
Comment 55 Noam Rosenthal 2013-03-22 06:13:18 PDT
Created attachment 194529 [details]
Patch
Comment 56 Noam Rosenthal 2013-03-25 14:59:02 PDT
This should now be cleaned up and ready for review.
I've added a test for the case where the background image is loaded after the layer is already composited.
Comment 57 Simon Fraser (smfr) 2013-04-10 09:31:19 PDT
Comment on attachment 194529 [details]
Patch

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

> Source/WebCore/platform/graphics/GraphicsLayer.h:330
> +    virtual void setContentsTilePhase(const IntPoint& p) { m_contentsTilePhase = p; }
> +    IntPoint contentsTilePhase() const { return m_contentsTilePhase; }

Would be nice to add a comment saying what this represents. What is it relative to; the GrpahicsLayer bounds? The content layer bounds? The offsetFromRenderer?
Comment 58 Noam Rosenthal 2013-04-10 10:38:53 PDT
Created attachment 197309 [details]
Patch
Comment 59 Noam Rosenthal 2013-04-10 10:39:48 PDT
(In reply to comment #57)
> (From update of attachment 194529 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=194529&action=review
> 
> > Source/WebCore/platform/graphics/GraphicsLayer.h:330
> > +    virtual void setContentsTilePhase(const IntPoint& p) { m_contentsTilePhase = p; }
> > +    IntPoint contentsTilePhase() const { return m_contentsTilePhase; }
> 
> Would be nice to add a comment saying what this represents. What is it relative to; the GrpahicsLayer bounds? The content layer bounds? The offsetFromRenderer?

Thanks for the review Simon, I've added a comment and will land after it gets another EWS run.
Comment 60 WebKit Commit Bot 2013-04-10 22:46:16 PDT
Comment on attachment 197309 [details]
Patch

Clearing flags on attachment: 197309

Committed r148172: <http://trac.webkit.org/changeset/148172>
Comment 61 WebKit Commit Bot 2013-04-10 22:46:23 PDT
All reviewed patches have been landed.  Closing bug.