WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
109646
Constrain fixed layers to the viewport, not the document
https://bugs.webkit.org/show_bug.cgi?id=109646
Summary
Constrain fixed layers to the viewport, not the document
Simon Fraser (smfr)
Reported
2013-02-12 18:20:18 PST
RenderLayerBacking::updateCompositedBounds() has code to constrain composited layer positions to the document rect. This is bad for fixed-position elements, because this constrained rect will change every time the scroll offset changes. This means that whenever layout happens (which causes us to update compositing layers), we'll recompute the fixed layer bounds, and change it if we scrolled, and that will result in jiggles.
Attachments
Patch
(5.78 KB, patch)
2013-02-12 18:26 PST
,
Simon Fraser (smfr)
bdakin
: review+
webkit.review.bot
: commit-queue-
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Simon Fraser (smfr)
Comment 1
2013-02-12 18:26:19 PST
Created
attachment 187984
[details]
Patch
WebKit Review Bot
Comment 2
2013-02-12 21:36:55 PST
Comment on
attachment 187984
[details]
Patch
Attachment 187984
[details]
did not pass chromium-ews (chromium-xvfb): Output:
http://queues.webkit.org/results/16522575
New failing tests: compositing/geometry/limit-layer-bounds-fixed.html platform/chromium/virtual/softwarecompositing/geometry/limit-layer-bounds-fixed.html
Benjamin Poulain
Comment 3
2013-02-12 22:40:42 PST
Comment on
attachment 187984
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=187984&action=review
> LayoutTests/ChangeLog:11 > + Constrain fixed layers to the viewport, not the document > +
https://bugs.webkit.org/show_bug.cgi?id=109646
> + > + Reviewed by NOBODY (OOPS!). > + > + Test with a big fixed element in a compositing layer. > + > + * compositing/geometry/limit-layer-bounds-fixed-expected.txt: Added. > + * compositing/geometry/limit-layer-bounds-fixed.html: Added.
Wouldn't it be better to test this with a ref-test?
Simon Fraser (smfr)
Comment 4
2013-02-12 22:45:48 PST
(In reply to
comment #3
)
> Wouldn't it be better to test this with a ref-test?
No; the visible appearance is the unchanged (unless we ref-test the layerTreeAsText output, which is weird!).
Benjamin Poulain
Comment 5
2013-02-12 23:00:20 PST
(In reply to
comment #4
)
> No; the visible appearance is the unchanged (unless we ref-test the layerTreeAsText output, which is weird!).
I think I fail to see how the output verify the change. Would you mind explaining a bit how the layers differed before the change?
Beth Dakin
Comment 6
2013-02-14 11:18:29 PST
Comment on
attachment 187984
[details]
Patch Looks good! You should address Benjamin's question though.
Simon Fraser (smfr)
Comment 7
2013-02-14 11:21:03 PST
(In reply to
comment #5
)
> (In reply to
comment #4
) > > No; the visible appearance is the unchanged (unless we ref-test the layerTreeAsText output, which is weird!). > > I think I fail to see how the output verify the change. Would you mind explaining a bit how the layers differed before the change?
The (bounds 300.00 200.00) for the fixed layer are different (smaller) with the patch.
Simon Fraser (smfr)
Comment 8
2013-02-15 16:43:36 PST
***
Bug 108556
has been marked as a duplicate of this bug. ***
Simon Fraser (smfr)
Comment 9
2013-02-15 17:11:16 PST
http://trac.webkit.org/changeset/143073
Chris Dumez
Comment 10
2013-02-17 07:33:17 PST
The new test appears to be failing on WK2 EFL:
http://build.webkit.org/results/EFL%20Linux%2064-bit%20Debug%20WK2/r143117%20(9569)/compositing/geometry/limit-layer-bounds-fixed-pretty-diff.html
Simon Fraser (smfr)
Comment 11
2013-02-17 11:20:13 PST
EFL might not do compositing for fixed pos. It should just get a new baseline.
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