WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
103999
Rework
bug 97927
to not depend on RenderLayer::allowsScrolling
https://bugs.webkit.org/show_bug.cgi?id=103999
Summary
Rework bug 97927 to not depend on RenderLayer::allowsScrolling
Antonio Gomes
Reported
2012-12-04 07:27:43 PST
Instead of adding ::allowScrolling calls to check scrollability, check if scrolling in allowed in the direction where overflow happens. That allow methods like RenderLayer::updateScrollbarsAfterLayout and RenderLayer::updateScrollbarsAfterStyleChange to be scrollbars-agnostic. Reason behind it: scrollbars can be disabled completely (not only "hidden") in WebCore, and its drawing delegated to the client application.
Attachments
patch
(4.83 KB, patch)
2012-12-04 08:11 PST
,
Antonio Gomes
simon.fraser
: review-
Details
Formatted Diff
Diff
patch2 - take simon's feedback into account
(11.86 KB, patch)
2012-12-05 08:27 PST
,
Antonio Gomes
no flags
Details
Formatted Diff
Diff
(landed r136947, r=jamesr) patch 2.1 - take Sami's feedback into account
(12.04 KB, patch)
2012-12-06 07:16 PST
,
Antonio Gomes
no flags
Details
Formatted Diff
Diff
patch for EWS
(12.10 KB, patch)
2012-12-07 05:03 PST
,
Antonio Gomes
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Antonio Gomes
Comment 1
2012-12-04 08:11:46 PST
Created
attachment 177484
[details]
patch
Simon Fraser (smfr)
Comment 2
2012-12-04 13:04:49 PST
Comment on
attachment 177484
[details]
patch View in context:
https://bugs.webkit.org/attachment.cgi?id=177484&action=review
It would be nice to only have the "scrollsOverflowX() && scrollWidth() != clientWidth()" logic in one place; here it's in both RenderLayer and RenderBox, and the various width implementations are subtly different.
> Source/WebCore/rendering/RenderBox.cpp:621 > + bool hasOverflowAndAllowsScrollingInThatDirection = (scrollsOverflowX() && scrollWidth() != clientWidth())
Awkward variable name. How about hasScrollableOverflow?
Antonio Gomes
Comment 3
2012-12-05 08:27:17 PST
Created
attachment 177756
[details]
patch2 - take simon's feedback into account
Sami Kyöstilä
Comment 4
2012-12-06 06:46:16 PST
Comment on
attachment 177756
[details]
patch2 - take simon's feedback into account View in context:
https://bugs.webkit.org/attachment.cgi?id=177756&action=review
Thanks Antonio, I think this makes the logic clearer.
> Source/WebCore/ChangeLog:17 > + The naming pattern for the newly added methods were choosen to keep the consitency
s/choosen/chosen/, s/consitency/consistency/.
> Source/WebCore/ChangeLog:20 > + No new tests, as it is a refactor. Also it is already covered by ScrollingCoordinatorChromiumTest.clippedBodyTest.
Not exactly a refactor since it makes canBeScrolledAndHasScrollableArea() more strict, although I can't think of any bad effects from doing so.
Antonio Gomes
Comment 5
2012-12-06 07:16:36 PST
Created
attachment 178009
[details]
(landed
r136947
, r=jamesr) patch 2.1 - take Sami's feedback into account
Antonio Gomes
Comment 6
2012-12-06 15:53:44 PST
(In reply to
comment #5
)
> Created an attachment (id=178009) [details] > patch 2.1 - take Sami's feedback into account
Kindly ping reviewers.
Antonio Gomes
Comment 7
2012-12-07 05:03:30 PST
Created
attachment 178200
[details]
patch for EWS
Antonio Gomes
Comment 8
2012-12-07 05:15:37 PST
Comment on
attachment 178009
[details]
(landed
r136947
, r=jamesr) patch 2.1 - take Sami's feedback into account
https://trac.webkit.org/changeset/136947
Csaba Osztrogonác
Comment 9
2012-12-07 06:08:00 PST
(In reply to
comment #8
)
> (From update of
attachment 178009
[details]
) >
https://trac.webkit.org/changeset/136947
It broke 2 tests on all platform: - fast/events/autoscroll-in-textfield.html - fast/events/autoscroll-should-not-stop-on-keypress.html --- /ramdisk/qt-linux-64-release/build/layout-test-results/fast/events/autoscroll-in-textfield-expected.txt +++ /ramdisk/qt-linux-64-release/build/layout-test-results/fast/events/autoscroll-in-textfield-actual.txt @@ -1,3 +1,3 @@
https://bugs.webkit.org/show_bug.cgi?id=20201
To do the test manually you have to try triggering the autoscroll by starting the dragging from within the text field and moving to the right. If the autoscroll occurs the test has PASSED. -PASSED +FAILED the textfield should have been scrolled --- /ramdisk/qt-linux-64-release/build/layout-test-results/fast/events/autoscroll-should-not-stop-on-keypress-expected.txt +++ /ramdisk/qt-linux-64-release/build/layout-test-results/fast/events/autoscroll-should-not-stop-on-keypress-actual.txt @@ -1,5 +1,5 @@ -PASS frame.contentDocument.body.scrollTop + frame.clientHeight is frame.contentDocument.body.scrollHeight +FAIL frame.contentDocument.body.scrollTop + frame.clientHeight should be 2022. Was 400. PASS successfullyParsed is true TEST COMPLETE
Antonio Gomes
Comment 10
2012-12-07 06:14:45 PST
(In reply to
comment #9
)
> (In reply to
comment #8
) > > (From update of
attachment 178009
[details]
[details]) > >
https://trac.webkit.org/changeset/136947
> > It broke 2 tests on all platform: > - fast/events/autoscroll-in-textfield.html > - fast/events/autoscroll-should-not-stop-on-keypress.html
Saw it. Checking...
Antonio Gomes
Comment 11
2012-12-07 06:38:47 PST
Unfortunately, EWS for some reason can not apply the patch and run the tests in advance. I will likely revert the RenderBox part of the patch, and track is separately. Testing locally first. to See if it fixes the tests.
Antonio Gomes
Comment 12
2012-12-07 06:39:34 PST
Unfortunately, EWS for some reason can not apply the patch and run the tests in advance (abarth, would you know why?). I will likely revert the RenderBox part of the patch, and track is separately. Testing locally first to see if it fixes the tests.
Antonio Gomes
Comment 13
2012-12-07 08:30:36 PST
(In reply to
comment #12
) ...
> I will likely revert the RenderBox part of the patch, and track is separately.
Filed
bug 104373
Antonio Gomes
Comment 14
2012-12-12 08:34:24 PST
(In reply to
comment #11
)
> Unfortunately, EWS for some reason can not apply the patch and run the tests in advance. > > I will likely revert the RenderBox part of the patch, and track is separately. Testing locally first. to See if it fixes the tests.
Fixed by
https://trac.webkit.org/changeset/136954
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