RESOLVED FIXED 104943
Out-of-view check of fixed position element in frame is incorrect when page is scaled
https://bugs.webkit.org/show_bug.cgi?id=104943
Summary Out-of-view check of fixed position element in frame is incorrect when page i...
Xianzhu Wang
Reported 2012-12-13 13:05:50 PST
Fixed position element in a frame disappears when the page is scaled and the frame is scrolled to a certain position. This bug is caused by my patch to bug 104303. The layerBounds should be scaled by the frameScaleFactor, not pageScaleFactor. I should have include tests for fixed position in frames in bug 104303. Will upload a patch soon.
Attachments
Patch (17.51 KB, patch)
2012-12-13 13:56 PST, Xianzhu Wang
no flags
Add comments in tests (18.07 KB, patch)
2012-12-13 14:25 PST, Xianzhu Wang
no flags
PASS/FAIL (9.59 KB, patch)
2012-12-13 15:36 PST, Xianzhu Wang
no flags
Rebased, for landing (9.67 KB, patch)
2012-12-13 18:23 PST, Xianzhu Wang
no flags
Xianzhu Wang
Comment 1 2012-12-13 13:56:10 PST
Eric Seidel (no email)
Comment 2 2012-12-13 14:03:39 PST
Comment on attachment 179328 [details] Patch I'm not sure what the layer dumps tell me in the -expected files.
Xianzhu Wang
Comment 3 2012-12-13 14:25:26 PST
Created attachment 179335 [details] Add comments in tests
Xianzhu Wang
Comment 4 2012-12-13 14:26:56 PST
(In reply to comment #2) > (From update of attachment 179328 [details]) > I'm not sure what the layer dumps tell me in the -expected files. They expect that the layer tree in the frame is not affected by page scale. Added comments in the new patch.
Eric Seidel (no email)
Comment 5 2012-12-13 14:40:23 PST
Why not just capture the layer tree in a string, change the scale and assert they were identical? that would allow you to just print "PASS" or "FAIL" (presumably with the dump off the full tree in the fail case) and have much easier to understand/maintain tests. :)
Xianzhu Wang
Comment 6 2012-12-13 15:35:29 PST
(In reply to comment #5) > Why not just capture the layer tree in a string, change the scale and assert they were identical? > > that would allow you to just print "PASS" or "FAIL" (presumably with the dump off the full tree in the fail case) and have much easier to understand/maintain tests. :) I thought that dumping layer tree of the frame from the main page wouldn't work, so I dumped the layer tree of the whole page causing difficulty to compare the result. Just tried and it works because window.internals API doesn't check domains.
Xianzhu Wang
Comment 7 2012-12-13 15:36:35 PST
Created attachment 179356 [details] PASS/FAIL
WebKit Review Bot
Comment 8 2012-12-13 17:29:20 PST
Comment on attachment 179356 [details] PASS/FAIL Attachment 179356 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/15312474 New failing tests: inspector-protocol/debugger-terminate-dedicated-worker-while-paused.html
Xianzhu Wang
Comment 9 2012-12-13 17:33:21 PST
Comment on attachment 179356 [details] PASS/FAIL The failure seems unrelated. Try cq+ again.
WebKit Review Bot
Comment 10 2012-12-13 18:04:35 PST
Comment on attachment 179356 [details] PASS/FAIL Rejecting attachment 179356 [details] from commit-queue. Failed to run "['/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '-..." exit_code: 2 Last 500 characters of output: Kit/chromium/third_party/yasm/source/patched-yasm --revision 167605 --non-interactive --force --accept theirs-conflict --ignore-externals' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' 53>At revision 167605. ________ running '/usr/bin/python tools/clang/scripts/update.py --mac-only' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' ________ running '/usr/bin/python gyp_webkit' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' Updating webkit projects from gyp files... Full output: http://queues.webkit.org/results/15314506
Xianzhu Wang
Comment 11 2012-12-13 18:23:02 PST
Created attachment 179394 [details] Rebased, for landing
WebKit Review Bot
Comment 12 2012-12-13 18:59:40 PST
Comment on attachment 179394 [details] Rebased, for landing Clearing flags on attachment: 179394 Committed r137697: <http://trac.webkit.org/changeset/137697>
WebKit Review Bot
Comment 13 2012-12-13 18:59:45 PST
All reviewed patches have been landed. Closing bug.
Beth Dakin
Comment 14 2012-12-14 11:42:50 PST
These tests are failing on Mac.
Simon Fraser (smfr)
Comment 15 2012-12-14 14:04:07 PST
In WebKit1, layer trees for pages with iframes can differ from WK2. The root document may not have any layers.
Note You need to log in before you can comment on or make changes to this bug.