Skip to content
This repository has been archived by the owner on Sep 6, 2021. It is now read-only.

Icons disappear from Brackets UI when Inkscape is installed #7208

Open
asincrono opened this issue Mar 16, 2014 · 29 comments
Open

Icons disappear from Brackets UI when Inkscape is installed #7208

asincrono opened this issue Mar 16, 2014 · 29 comments

Comments

@asincrono
Copy link

I can't see the "close file" icon at the left of the file names at the left bar, neither the "live development" and "extensions manager" at the top right. I can click over the place and the "button" works, but can't see the icons.
I see the broken image icon for "installed", "available" when I open the "extensions manager".
This is on a Windows 8.1 64 bit. Brackets Sprint 36 and Spanish language.

@peterflynn
Copy link
Member

@asincrono Hmm, this sounds like #7091... Are you also not seeing the expand/collapse triangles in the left-hand file tree? What about the Brackets logo in the About box?

@asincrono
Copy link
Author

Looks like the same thing. I can't see the collapse triangles.
top_left
extensions_manager
top_right

I will try what the other guy did.
I will show you my registry "HKEY_CLASSES_ROOT.svg" and "OpenWithProgIds" values if it helps with something.
"HKEY_CLASSES_ROOT.svg":
hkey_classes_root_svg
"HKEY_CLASSES_ROOT.svg\OpenWithProgIds":
hkey_classes_root_svg_openwithprogids
I will erase and try again (before that I will just try sprint 37).

@asincrono
Copy link
Author

Same behaviour with Sprint 37.
Worked after I deleted the "Content Type REG_SZ application/svg" entry.
Maybe related with having installed Inkscape and/or Libre Office?
Anyway thanks for the reference. I didn't find it. I'm new in GitHub and couldn't find a search box for search by "icon" in issues. Sorry if I made you lose your time.

@asincrono
Copy link
Author

I just reinstalled inkscape (was a dev build but I think will happen the same with the regular) and the icons went missing again. So I imaging this issue will affect the ppl with Inkscape and windows.
(Solved again editing the second line deleting "application/svg").

@peterflynn
Copy link
Member

Wow, that is crazy weird. Do SVG files render correctly for you in Chrome? (Some quick Googling didn't turn up any references to Inkscape breaking Chrome, but it's worth checking).

Reopening now that we have a firm repro case.

@peterflynn peterflynn reopened this Mar 18, 2014
@peterflynn peterflynn changed the title Missing icons in windows 8.1 64 bit (sprint 36, spanish) Icons disappear frm Brackets UI when Inkscape is installed Mar 18, 2014
@peterflynn
Copy link
Member

Clarified title (was: "Missing icons in windows 8.1 64 bit (sprint 36, spanish)")

@asincrono
Copy link
Author

I was doing some more tests and these are the results (this tests were made in Windows 7):
1.- I installed Brackers (sprint 37).
2.- I installed Inkscape (stable 48.4). Then tested Brackets and was working properly. Chrome was rendering SVG files ok. The registry was:
reg_before
3.- I installed Inkscape (development version r12126).
4.- Tried Barckets again and now stopped showing the icons. Chrome keeps rendering SVG files ok. The registry now was:
reg_after
5.- I uninstalled Inkscape. Brackets start showing icons again.The registry after uninstall:
reg_after_uninstall_dev
6.- Finally I re-installed the regular, stable, version of Inkscape and everything was working fine again. The registry being:
finally

So, as I understand it. The thing that was messing the icons in Brackets was the Inkscape development built version. But it didn't affect to Chrome SVG rendering as far as I know.

@marcelgerber
Copy link
Contributor

Btw, you can easily repro by just editing the registry key to anything else than image/svg+xml.

@peterflynn
Copy link
Member

@asincrono If you open a new tab in Chrome and drag any SVG file onto it -- so the file is viewed from a file:// URL -- does it render correctly in Chrome in that case?

It looks like Inkscape is setting an incorrect mimetype on .svg files, which affects how browsers 'serve' them up from file:// URLs, which is how Brackets's own UI is loaded. We'll have to ponder what could be done to work around this...

@marcelgerber
Copy link
Contributor

With the changed reg property, the file is "downloaded". With the right one, it is shown.
So it's about how chrome is handling the file.

@asincrono
Copy link
Author

As SAPlayer said, if I use the "application/svg" instead of "image/svg+xml", Chrome downloads the file (accessing by file://) if I try to open a SVG file from the web it works as usual, Chrome displays it.

@peterflynn
Copy link
Member

It looks like recent versions of CEF have an API that would let us fix this in our native code: https://code.google.com/p/chromiumembedded/issues/detail?id=1098

@peterflynn
Copy link
Member

Reviewed - low priority @JeffryBooher to use the CEF API to forcibly correct the mimetype within brackets-shell. (If we get more reports of this, priority might go up -- but low for now).

We may also want to file a bug against Inkscape just so they know their installer is setting an incorrect mimetype these days.

@JeffryBooher
Copy link
Contributor

I think the only way to solve this would be to check the registry to make sure that the correct mime type is registered for svg files and change it. The question is -- is this something we want to do? another tool has changed it and if we change the registry it would break the other tool. I don't know of a CEF API to take over mimetypes. @peterflynn was there an API that you know of that does this?

@asincrono
Copy link
Author

I need to remind that there was no the regular Inkscape the one who broke
Brackets. Was one of the deveoplment builds. The regular Inkscape has no
effect on Brackets.

2014-03-24 23:23 GMT+01:00 Jeff Booher notifications@github.com:

I think the only way to solve this would be to check the registry to make
sure that the correct mime type is registered for svg files and change it.
The question is -- is this something we want to do? another tool has
changed it and if we change the registry it would break the other tool. I
don't know of a CEF API to take over mimetypes. @peterflynnhttps://github.com/peterflynnwas there an API that you know of that does this?

Reply to this email directly or view it on GitHubhttps://github.com//issues/7208#issuecomment-38508933
.

@peterflynn
Copy link
Member

@JeffryBooher See the bug I linked to above: https://code.google.com/p/chromiumembedded/issues/detail?id=1098. This seems to be presenting an API for it. (Edit: actually https://code.google.com/p/chromiumembedded/issues/detail?id=515 might be more relevant)

Whether it's worth it to use that API at this point, I'm not sure though. This bug's priority is currently low / not nominated for 1.0, so...

@Jon-Davis
Copy link

I know this is an older post but I thought I'd ask here before I created a new post, so I am having the same problem that @asincrono had, however I do not have inkscape installed at all. I tried looking for the HKEY_CLASSES_ROOT.svg but I could not find it. I am running sprint 38 and was just wondering what I should do. I don't know much about brackets seeing as I just installed it, however I looked in the code and noticed there is no tags in the side bars.
code
Thanks for reading my post :)

@jcreedon
Copy link

@obliviousjd There are no tags because the image is displayed via the background-image CSS attribute.

For me, I was having the same problem as @asincrono, I had installed a dev version of Inkscape which had messed up the content type (MIME) of SVG. Deleting the Content Type Value in the HKEY_CLASSES_ROOT.svg key fixed it for me.

The underlying problem is that Chromium follows whatever content type Windows has it set as for the file extension. Windows stores these settings in the registry. If an application (in my case Inkscape, but it could be anything) comes in and changes the content type to something that chromium doesn't like, it will choose not to render it.

I would double check to see if there is a .svg key in HKEY_CLASSES_ROOT as that is really the only place in Windows that defines that behavior.

@Jon-Davis
Copy link

ok i didn't actually know what the HKEY_CLASSES_ROOT.svg was, I assumed it was a file in the brackets directory however i found out what it was and where to find it, so once i deleted it everything started working, sorry about the trouble I was just confused :)

@peterflynn peterflynn changed the title Icons disappear frm Brackets UI when Inkscape is installed Icons disappear from Brackets UI when Inkscape is installed May 25, 2014
@anselm-urban
Copy link

I have the same problem.

@JeffryBooher
Copy link
Contributor

Not sure why this issue was closed. It appears to still be a problem and this is the best candidate to fix (+has all of the required native API changes noted)

@JeffryBooher JeffryBooher reopened this Jan 15, 2015
@ghost
Copy link

ghost commented Jan 25, 2015

This issue is still affecting users, me included. Manually adjusting mime types in the registry is a poor workaround for such a simple fix.

@peterflynn
Copy link
Member

@felixhcat Can you describe the simple fix you have in mind?

@peterflynn
Copy link
Member

According to this the root problem has recently been fixed in Inkscape: https://bugs.launchpad.net/inkscape/+bug/1399720.

So it sounds like everyone who's having this issue just needs to update to the latest Inkscape prerelease (the bug supposedly only affects the 0.91/0.92 prerelease series, so anyone hitting this bug is presumably using a prerelease version already).

@lucianosb
Copy link

I was running both versions of Inkscape here: 0.91 and 0.91pre3 and had this bug.

I removed the 0.91pre3 version and the extension icons appeared again. Looks like it was indeed fixed.

@simsam7
Copy link

simsam7 commented May 2, 2015

So glad I found this thread, the missing icons in Brackets have been a nuisance!

@jbwCode
Copy link

jbwCode commented Aug 30, 2015

I ran across this issue with Brackets missing the triangle icons on the left, as well as the extension toolbar icons on the right. All fixed now ... see below :-)

I do NOT have Inkscape installed on my Windows PC. I do have various other graphics software installed, some of it is from Adobe.

The fix was to delete these registry keys (I backed them up first!):

[HKEY_CLASSES_ROOT\.svg]
@="Adobe.SVGCtl"
"Content Type"="image/svg-xml"

[HKEY_CLASSES_ROOT\.svg\OpenWithProgids]
"Brackets FileExt"=""

and

[HKEY_CLASSES_ROOT\.svgz]
@="Adobe.SVGCtl"
"Content Type"="image/svg-xml"

@sergiodiezdepedro
Copy link

I had the same problem that @jbwCode spoke. No Inkscape, but Photoshop and Elements installled here I deleted the same registry keys and all the svg icons in Brackets are visible now.

@ldco
Copy link

ldco commented Jul 1, 2017

Same thing in Ubuntu 16.04. Uninstalling Inscape doesn't help.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

14 participants