Bug 11976

Summary: <object> tags should treat width/height on a referenced SVG as intrinsic width/height
Product: WebKit Reporter: Eric Seidel (no email) <eric>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: hyatt, jamesr, jeffschiller, leviw, pascal22p, zimmermann
Priority: P2    
Version: 420+   
Hardware: Mac   
OS: OS X 10.4   
Bug Depends on: 10526, 12207, 15849    
Bug Blocks:    
Attachments:
Description Flags
test case to demonstrate the desired behavior none

Description Eric Seidel (no email) 2006-12-26 00:04:20 PST
<object> tags should treat width/height on a referenced SVG as intrinsic width/height

This bug came out of the comments from:
http://bugs.webkit.org/show_bug.cgi?id=10526

It might even be a duplicate of bug 10526, but it was hard for me to tell what exactly bug 10526 is about.

Hyatt and I (and I think jwatt or tor was present as well) talked about treating <svg> specified width/height as intrinsic height when using an SVG image in an <img> tag or CSS background image.  In the comments of bug 10526 it was suggested that we also do so for <object> tags.  Making this work would be a nice step in the direction of having real SVG in <img> support.
Comment 1 Eric Seidel (no email) 2006-12-26 00:15:59 PST
Created attachment 12026 [details]
test case to demonstrate the desired behavior

I should note, that I know of no browser which behaves the way this test case expects it to be have.  Opera does not seem to use width for intrinsic size (at least 9.01 does not).  Opera does seem to use the height attribute on the SVG for intrinsic height however.
Comment 2 Eric Seidel (no email) 2007-06-12 10:37:48 PDT
Either way, this should be done after the SVGRenderRoot split, bug 12207.
Comment 3 Rob Buis 2007-06-13 22:31:25 PDT
(In reply to comment #1)
> Created an attachment (id=12026) [edit]
> test case to demonstrate the desired behavior
> 
> I should note, that I know of no browser which behaves the way this test case
> expects it to be have.  Opera does not seem to use width for intrinsic size (at
> least 9.01 does not).  Opera does seem to use the height attribute on the SVG
> for intrinsic height however.

I am not sure this testcase is correct. Needs discussion with Eric I think.
Cheers,

Rob.
Comment 4 Eric Seidel (no email) 2007-06-14 09:55:23 PDT
I think this is basically the same bug as:
http://bugs.webkit.org/show_bug.cgi?id=10526
One could probably be duped against the other.
Comment 5 Eric Seidel (no email) 2007-06-14 10:17:06 PDT
We discussed the test case.  It's correct.
Comment 6 Eric Seidel (no email) 2007-09-29 15:45:25 PDT
void RenderHTMLCanvas::canvasSizeChanged()

is a good example of how we could do this.  It is called when <canvas> changes size.  We just need to add a similar method to RenderPartObject and have SVGSVGElement call it appropriately.
Comment 7 Eric Seidel (no email) 2007-12-27 02:30:16 PST
The real way to fix this is bug 15849.
Comment 8 Pascal 2009-03-16 06:58:47 PDT
This bug is still not solved. I have hit the problem myself. Here is an example:
http://pascal.parois.net/public/webkit/arbre.html

Firefox 3 and opera 10 render it properly (not opera 9). I don't about IE with the appropriate plugin.

This has been tested on the last nighty build : r41707 on linux.

Cheers,
Pascal
Comment 9 Nikolas Zimmermann 2011-05-27 05:39:53 PDT
The patch on bug 10526 fixes this bug.
Comment 10 Nikolas Zimmermann 2011-05-27 11:29:11 PDT
Fixed in r87526.
Comment 11 Levi Weintraub 2011-07-25 17:31:33 PDT
Re-opening because the fix that was originally landed is being reverted. See Bug 64974. Feel free to close this and open one of the many related ones if they do a better job describing the problem.
Comment 12 Nikolas Zimmermann 2012-05-19 08:33:55 PDT
Closing again, the test case works fine and is covered by tests in trunk.