Bug 188423

Summary: SVGs with percentage dimensions not properly sized
Product: [Applications] konqueror Reporter: Jeff Schiller <codedread>
Component: generalAssignee: Konqueror Developers <konq-bugs>
Status: RESOLVED WORKSFORME    
Severity: normal CC: chris, maksim
Priority: NOR    
Version: 4.2.1   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Jeff Schiller 2009-03-29 20:59:43 UTC
Version:           4.2.1 (using KDE 4.2.1)
OS:                Linux
Installed from:    Ubuntu Packages

http://www.w3.org/Graphics/SVG/Test/20061213/htmlObjectHarness/full-color-prop-01-b.html

Konqueror 4.2.1 no longer displays this page properly.  The html:object frame is sized :

<object data="../svggen/color-prop-01-b.svg" width="480" height="360" type="image/svg+xml"/>

And the frame is sized properly.  However the contained image is http://www.w3.org/Graphics/SVG/Test/20061213/svggen/color-prop-01-b.svg and has:

<svg ... width="100%" height="100%" viewBox="0 0 480 360">

Konqueror or KHTML Image Part or KSVG2 interprets this as 100px by 100px.  I've experimented and changed this to width="200" height="200".  I've also removed the width/height completely (the default values of these attributes are 100%/100%) and everything looks just perfect (as they do in Firefox, Safari, Chrome, Opera).

I'm pretty sure this used to work in Konqueror 3.5.x.

Also, I'm not able to view the source of the SVG image with Konqueror.  Reason?
Comment 1 Chris Lilley 2009-03-30 17:34:34 UTC
This is a significant reversion compared to previous versions of Konqueror.
Comment 2 Maksim Orlovich 2009-05-09 16:52:30 UTC
Thanks for the reduction.. but something is odd, seems to work again (?)
Comment 3 Maksim Orlovich 2009-05-09 19:10:30 UTC
Never mind that --- uninitialized value, the m_hasSetContainerSize deal.
Comment 4 Dawit Alemayehu 2011-12-01 06:20:37 UTC
Seems to work fine in both khtml and webkit engines in KDE 4.7.x. Feel free to reopen if that is not the case for you.