Bug 83960

Summary: [CSS Filters] Do not use clipping rect when calculating the bounds of a layer
Product: WebKit Reporter: Alexandru Chiculita <achicu>
Component: Layout and RenderingAssignee: Alexandru Chiculita <achicu>
Status: RESOLVED FIXED    
Severity: Normal CC: dino, gustavo.noronha, gustavo, simon.fraser, xan.lopez
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch V1 simon.fraser: review+, simon.fraser: commit-queue-

Description Alexandru Chiculita 2012-04-13 16:38:24 PDT
WebKit should not clip the bounding box of a layer when it draws it into a memory buffer in order to compute the CSS Filter for it. That's because the drop-shadow or blur effects might reference pixels outside the initial clipping box.

This should fix the results for two tests that are already checked in:
LayoutTests/css3/filters/filter-repaint-shadow-clipped.html
LayoutTests/css3/filters/filter-repaint-shadow-rotated.html
Comment 1 Alexandru Chiculita 2012-04-13 17:29:59 PDT
Created attachment 137184 [details]
Patch V1
Comment 2 Simon Fraser (smfr) 2012-04-13 17:36:27 PDT
Comment on attachment 137184 [details]
Patch V1

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

> Source/WebCore/ChangeLog:14
> +        No new tests added in this patch, but this patch fixes two existing tests that fail.
> +        LayoutTests/css3/filters/filter-repaint-shadow-clipped.html
> +        LayoutTests/css3/filters/filter-repaint-shadow-rotated.html

Do these tests need to be unskipped or given new pixel results?
Comment 3 Gyuyoung Kim 2012-04-13 19:50:09 PDT
Comment on attachment 137184 [details]
Patch V1

Attachment 137184 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/12406117
Comment 4 Gustavo Noronha (kov) 2012-04-13 20:45:06 PDT
Comment on attachment 137184 [details]
Patch V1

Attachment 137184 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/12408037
Comment 5 Collabora GTK+ EWS bot 2012-04-13 23:07:36 PDT
Comment on attachment 137184 [details]
Patch V1

Attachment 137184 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/12408069
Comment 6 Alexandru Chiculita 2012-04-17 17:10:54 PDT
I need to also update the #else branch. I will do that before committing.
Comment 7 Alexandru Chiculita 2012-04-18 09:36:50 PDT
(In reply to comment #2)
> (From update of attachment 137184 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=137184&action=review
> 
> > Source/WebCore/ChangeLog:14
> > +        No new tests added in this patch, but this patch fixes two existing tests that fail.
> > +        LayoutTests/css3/filters/filter-repaint-shadow-clipped.html
> > +        LayoutTests/css3/filters/filter-repaint-shadow-rotated.html
> 
> Do these tests need to be unskipped or given new pixel results?

The results seem to be up-to-date and no failure in Skipped tests were added.
Comment 8 Alexandru Chiculita 2012-04-18 09:37:04 PDT
Landed in http://trac.webkit.org/changeset/114518 .