Bug 73420

Summary: Add a way to automatically size a single frame to fit its content.
Product: WebKit Reporter: David Levin <levin>
Component: Layout and RenderingAssignee: David Levin <levin>
Status: RESOLVED FIXED    
Severity: Normal CC: dglazkov, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 73035, 73058, 73631    
Attachments:
Description Flags
WIP
none
Patch
none
Archive of layout-test-results from ec2-cr-linux-01
none
Patch dimich: review+

Description David Levin 2011-11-30 02:56:32 PST
See summary.
Comment 1 David Levin 2011-11-30 03:00:08 PST
Created attachment 117156 [details]
WIP
Comment 2 Alexey Proskuryakov 2011-11-30 11:35:34 PST
Comment on attachment 117156 [details]
WIP

Does this need to be ifdefed? The cost of breaking builds due to code that isn't enabled on contributor's platform is fairly high.
Comment 3 David Levin 2011-11-30 11:37:08 PST
(In reply to comment #2)
> (From update of attachment 117156 [details])
> Does this need to be ifdefed? The cost of breaking builds due to code that isn't enabled on contributor's platform is fairly high.

No worries, I'll get rid of that.
Comment 4 David Levin 2011-12-01 13:31:03 PST
Created attachment 117476 [details]
Patch
Comment 5 WebKit Review Bot 2011-12-01 14:50:02 PST
Comment on attachment 117476 [details]
Patch

Attachment 117476 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10704764

New failing tests:
compositing/generated-content.html
compositing/scrollbar-painting.html
compositing/geometry/clip.html
compositing/geometry/foreground-layer.html
compositing/geometry/limit-layer-bounds-overflow-repaint.html
compositing/geometry/layer-due-to-layer-children.html
compositing/geometry/composited-html-size.html
compositing/geometry/limit-layer-bounds-positioned-transition.html
compositing/animation/state-at-end-event-transform-layer.html
compositing/backface-visibility.html
compositing/geometry/clipped-video-controller.html
compositing/geometry/ancestor-overflow-change.html
compositing/geometry/layer-due-to-layer-children-deep.html
compositing/color-matching/image-color-matching.html
compositing/geometry/fixed-position.html
animations/3d/change-transform-in-end-event.html
animations/3d/state-at-end-event-transform.html
animations/opacity-transform-animation.html
compositing/backface-visibility-hierarchical-transform.html
compositing/animation/busy-indicator.html
Comment 6 WebKit Review Bot 2011-12-01 14:50:06 PST
Created attachment 117494 [details]
Archive of layout-test-results from ec2-cr-linux-01

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-01  Port: Chromium  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 7 David Levin 2011-12-01 16:26:42 PST
Created attachment 117517 [details]
Patch
Comment 8 Dmitry Titov 2011-12-01 17:44:07 PST
Comment on attachment 117517 [details]
Patch

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

> Source/WebCore/ChangeLog:8
> +        No new functionality exposed so no new tests. (There is a Chromium

It might be a separate patch, but it seems having it exposed at least via Chromium API and in Chromium DRT is what we want to do in order to add more tests. This will need more tests.

> Source/WebCore/page/FrameView.cpp:2331
> +        // Increase the dimensions due to any scrollbars that are displayed.

The comment should be updated to reflect the fact that these address situation when only one of the dimensions is over the limit - because if both are inside the limit there is no scrolbars and if both are outside the limit - then the limit already took care of both.
Comment 9 David Levin 2011-12-01 23:49:48 PST
Committed as http://trac.webkit.org/changeset/101752.

(In reply to comment #8)
> (From update of attachment 117517 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=117517&action=review
> 
> > Source/WebCore/ChangeLog:8
> > +        No new functionality exposed so no new tests. (There is a Chromium
> 
> It might be a separate patch, but it seems having it exposed at least via Chromium API and in Chromium DRT is what we want to do in order to add more tests. This will need more tests.

Filed bug 73631.

> 
> > Source/WebCore/page/FrameView.cpp:2331
> > +        // Increase the dimensions due to any scrollbars that are displayed.
> 
> The comment should be updated to reflect the fact that these address situation when only one of the dimensions is over the limit - because if both are inside the limit there is no scrolbars and if both are outside the limit - then the limit already took care of both.

Done.