start-here SVG icons do not load in Qt applications

Bug #752607 reported by Florian Boucault
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ubuntu-mono (Ubuntu)
Fix Released
High
Olivier Tilloy

Bug Description

Binary package hint: ubuntu-mono

For some reason the existing versions of the start-here icons in ubuntu-mono-light and ubuntu-mono-dark fail to load in Qt applications.
I isolated the bit of the SVGs that prevent it from working: removing the last 'fill="none"' in the file fixes the issue while keeping the exact same rendering.
You will find fixed versions of the SVGs there:

http://people.canonical.com/~kaleo/ubuntu-mono-dark/start-here.svg
http://people.canonical.com/~kaleo/ubuntu-mono-light/start-here.svg

Related branches

Revision history for this message
Paul Sladen (sladen) wrote :

Florian: is this in the source version, or is it a result of dh_scour attacking the SVG during the package build process?

Revision history for this message
Florian Boucault (fboucault) wrote :

I am not sure. All I did was taking the SVGs from my installed system and tweaking it so that it works.

Revision history for this message
Olivier Tilloy (osomon) wrote :

@Paul: no, the problem is not a result of dh_scour. The SVG file in the source package already contains this 'fill="none"' that makes Qt choke (see http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/natty/ubuntu-mono/natty/view/head:/ubuntu-mono-dark/apps/22/start-here.svg, line 56).

Changed in ubuntu-mono (Ubuntu):
status: New → Confirmed
Revision history for this message
Olivier Tilloy (osomon) wrote :

Note: it seems that "none" is a perfectly valid value for the 'fill' attribute, but it implies that the path is going to be rendered invisible (which I reckon is what is happening with the Qt SVG engine). My wild guess is that it is rendered correctly by other engines (notably GTK’s) because this path element is enclosed in a group that has style="fill:#dfdbd2".

At a first glance and with my very limited knowledge of SVG it looks like in fact GTK is getting it wrong and should paint it invisible like Qt does. In any case, I’d argue the extra 'fill="none"' can be safely removed from the source SVGs.

Of course, the opinion of someone more versed in scalable graphics would be very welcome to confirm/invalidate my findings.

Revision history for this message
Olivier Tilloy (osomon) wrote :

Also note that only the start-here icons seem to be affected by this issue:

$ grep -rn "fill=\"none\"" *
ubuntu-mono-dark/apps/22/start-here.svg:56: fill="none"
ubuntu-mono-light/apps/22/start-here.svg:56: fill="none"

Revision history for this message
Olivier Tilloy (osomon) wrote :

The attached branch fixes the issue.

Olivier Tilloy (osomon)
Changed in ubuntu-mono (Ubuntu):
assignee: nobody → Olivier Tilloy (osomon)
status: Confirmed → In Progress
Paul Sladen (sladen)
Changed in ubuntu-mono (Ubuntu):
milestone: none → ubuntu-11.04-beta-2
importance: Undecided → High
Revision history for this message
Paul Sladen (sladen) wrote :

Pushed: [ubuntu/natty] ubuntu-mono 0.0.28 (Waiting for approval)

Changed in ubuntu-mono (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Olivier Tilloy (osomon) wrote :

Thanks Paul!

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-mono - 0.0.28

---------------
ubuntu-mono (0.0.28) natty; urgency=low

  [K.Vishnoo Charan Reddy]
  * User-home should be folder. (LP: #721121)

  [Olivier Tilloy]
  * Removed a suspicious 'fill="none"' attribute from some paths in the
    start-here icons, this was resulting in fully transparent rendering
    with Qt’s SVG engine. (LP: #752607)
 -- Paul Sladen <email address hidden> Mon, 11 Apr 2011 11:24:58 +0100

Changed in ubuntu-mono (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.