Bug 123958

Summary: Scroll size is not recalculated when absolute left of child is updated
Product: WebKit Reporter: Artur Signell <artur>
Component: Layout and RenderingAssignee: Manish Gurnaney <manishgurnaney>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, darin, esprehn+autocc, glenn, kondapallykalyan, manishgurnaney, rniwa, simon.fraser, zalan
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
URL: http://artur.virtuallypreinstalled.com/webkit-scrollbars.html
Attachments:
Description Flags
Test to reproduce the problem in 4 steps
none
Patch
none
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion
none
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion
none
Patch
none
Archive of layout-test-results from webkit-ews-13 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion
none
Archive of layout-test-results from webkit-ews-02 for mac-mountainlion
none
Patch
none
Patch none

Description Artur Signell 2013-11-06 22:53:29 PST
Created attachment 216261 [details]
Test to reproduce the problem in 4 steps 

When a div with overflow: auto contains a child with position:absolute, the scroll bars are not always removed when they should be. If the overflow div shows scrollbars (for any reason) and the absolute div is moved (at least partly) outside the parent, the scrollbars will not be removed when the reason for scrollbars is removed and the absolute div is moved back to inside its parent.

Test case at http://artur.virtuallypreinstalled.com/webkit-scrollbars.html and as attachment.

Similar to #21462 and #71541 in the sense that scrollbars remain when they should not and in the sense that hacks to get around this become ugly and inefficient.
Comment 2 Manish Gurnaney 2014-03-10 22:11:54 PDT
Created attachment 226386 [details]
Patch
Comment 3 Simon Fraser (smfr) 2014-03-10 22:54:36 PDT
Comment on attachment 226386 [details]
Patch

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

> LayoutTests/fast/css/display-inline-block-scrollbar.html:85
> +        if (window.eventSender) {
> +            eventSender.mouseMoveTo(50, 60);
> +            eventSender.mouseDown();
> +            eventSender.mouseUp();
> +        }
> +        if (window.eventSender) {
> +            eventSender.mouseMoveTo(190, 60);
> +            eventSender.mouseDown();
> +            eventSender.mouseUp();
> +        }
> +        if (window.eventSender) {
> +            eventSender.mouseMoveTo(300, 60);
> +            eventSender.mouseDown();
> +            eventSender.mouseUp();
> +        }
> +        if (window.eventSender) {
> +            eventSender.mouseMoveTo(450, 60);
> +            eventSender.mouseDown();
> +            eventSender.mouseUp();
> +        }

Are these actually needed for the test?
Comment 4 Build Bot 2014-03-10 23:13:20 PDT
Comment on attachment 226386 [details]
Patch

Attachment 226386 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5398189540638720

New failing tests:
fast/css/display-inline-block-scrollbar.html
Comment 5 Build Bot 2014-03-10 23:13:26 PDT
Created attachment 226390 [details]
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-09  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 6 Build Bot 2014-03-10 23:42:33 PDT
Comment on attachment 226386 [details]
Patch

Attachment 226386 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/4953849404063744

New failing tests:
fast/css/display-inline-block-scrollbar.html
Comment 7 Build Bot 2014-03-10 23:42:37 PDT
Created attachment 226391 [details]
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-03  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 8 Build Bot 2014-03-10 23:45:41 PDT
Comment on attachment 226386 [details]
Patch

Attachment 226386 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5284103398096896

New failing tests:
fast/css/display-inline-block-scrollbar.html
Comment 9 Build Bot 2014-03-10 23:45:45 PDT
Created attachment 226392 [details]
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-04  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 10 Manish Gurnaney 2014-03-10 23:59:03 PDT
(In reply to comment #3)
> (From update of attachment 226386 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=226386&action=review
> 
> > LayoutTests/fast/css/display-inline-block-scrollbar.html:85
> > +        if (window.eventSender) {
> > +            eventSender.mouseMoveTo(50, 60);
> > +            eventSender.mouseDown();
> > +            eventSender.mouseUp();
> > +        }
> > +        if (window.eventSender) {
> > +            eventSender.mouseMoveTo(190, 60);
> > +            eventSender.mouseDown();
> > +            eventSender.mouseUp();
> > +        }
> > +        if (window.eventSender) {
> > +            eventSender.mouseMoveTo(300, 60);
> > +            eventSender.mouseDown();
> > +            eventSender.mouseUp();
> > +        }
> > +        if (window.eventSender) {
> > +            eventSender.mouseMoveTo(450, 60);
> > +            eventSender.mouseDown();
> > +            eventSender.mouseUp();
> > +        }
> 
> Are these actually needed for the test?
Thanks for the quick review. These are required to simulate click events on the button. Running the JavaScript one bye one does not solve the purpose.
Comment 11 Manish Gurnaney 2014-03-11 01:45:18 PDT
Created attachment 226396 [details]
Patch
Comment 12 Build Bot 2014-03-11 02:43:47 PDT
Comment on attachment 226396 [details]
Patch

Attachment 226396 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5296989910597632

New failing tests:
fast/css/display-inline-block-scrollbar.html
Comment 13 Build Bot 2014-03-11 02:43:50 PDT
Created attachment 226405 [details]
Archive of layout-test-results from webkit-ews-13 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-13  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 14 Build Bot 2014-03-11 03:09:07 PDT
Comment on attachment 226396 [details]
Patch

Attachment 226396 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/6707808821051392

New failing tests:
fast/css/display-inline-block-scrollbar.html
Comment 15 Build Bot 2014-03-11 03:09:12 PDT
Created attachment 226410 [details]
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-08  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 16 Build Bot 2014-03-11 03:54:51 PDT
Comment on attachment 226396 [details]
Patch

Attachment 226396 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5415781726683136

New failing tests:
fast/css/display-inline-block-scrollbar.html
Comment 17 Build Bot 2014-03-11 03:54:55 PDT
Created attachment 226415 [details]
Archive of layout-test-results from webkit-ews-02 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-02  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 18 Manish Gurnaney 2014-03-11 06:43:18 PDT
Created attachment 226421 [details]
Patch
Comment 19 zalan 2014-03-11 07:04:59 PDT
Comment on attachment 226421 [details]
Patch

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

> Source/WebCore/rendering/InlineFlowBox.cpp:941
> +    // Clear old overflow if any.

I don't think this comment adds any value.
Comment 20 Simon Fraser (smfr) 2014-03-11 09:07:52 PDT
Comment on attachment 226421 [details]
Patch

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

> LayoutTests/fast/css/display-inline-block-scrollbar.html:8
> +            if (window.testRunner) {
> +                testRunner.waitUntilDone();
> +            }

No need for braces.
Comment 21 Manish Gurnaney 2014-03-11 22:42:12 PDT
Created attachment 226475 [details]
Patch
Comment 22 Early Warning System Bot 2014-03-13 22:02:20 PDT
Comment on attachment 226475 [details]
Patch

Rejecting attachment 226475 [details] from commit-queue.

gur.trio@gmail.com does not have committer permissions according to http://trac.webkit.org/browser/trunk/Tools/Scripts/webkitpy/common/config/contributors.json.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in Tools/Scripts/webkitpy/common/config/contributors.json by adding yourself to the file (no review needed).  The commit-queue restarts itself every 2 hours.  After restart the commit-queue will correctly respect your committer rights.
Comment 23 WebKit Commit Bot 2014-03-13 22:54:40 PDT
Comment on attachment 226475 [details]
Patch

Clearing flags on attachment: 226475

Committed r165602: <http://trac.webkit.org/changeset/165602>
Comment 24 WebKit Commit Bot 2014-03-13 22:54:45 PDT
All reviewed patches have been landed.  Closing bug.