Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Cuireadh an snáithe seo sa chartlann. Cuir ceist nua má tá cabhair uait.

How does one find the "chrome://" .png icons?

more options

I found a script on userstyles.org that refers to various chrome://*/*/*.png's (e.g., chrome://branding/content/icon16.png, chrome://browser/skin/places/bookmark.png, and chrome://global/skin/icons/information-16.png). Even after searching my system, though, I could not find the .png files. My next guess is that they might be files within the firefox.exe itself. If so, I was wondering if there was a full list of them somewhere as I would prefer not to have to de-archive the .exe file to find out.

Thanks.

Réiteach roghnaithe

  • chrome://browser/skin/ is resource:///chrome/browser/skin/classic/browser/ (/browser/omni.ja)
  • chrome://global/skin/ is resource://gre/chrome/toolkit/skin/classic/global/ (/omni.ja)
  • chrome://mozapps/skin/ resource://gre/chrome/toolkit/skin/classic/mozapps/

In most cases you can see the actual path if you leave out the trailing file part.


  • resource:///chrome/browser/skin/classic/browser/
  • resource://gre/chrome/toolkit/skin/classic/
  • resource://gre/chrome/toolkit/skin/classic/global/
  • resource://gre/chrome/toolkit/skin/classic/global/tree/columnpicker.gif
  • resource://gre/chrome/toolkit/skin/classic/mozapps/extensions/
  • resource://gre/chrome/toolkit/skin/classic/mozapps/extensions/utilities.png
Read this answer in context 👍 1

All Replies (17)

more options

I don't think it's in the exe. More likely in omni.ja or another compressed / "jar" file.

more options

Those files with a chrome:// prefix including image files are not in the Firefox.exe file, but in one on the omni.ja (ZIP) archive files (\omni.ja and \browser\omni.ja).

  • resource://gre/
  • resource:///
  • resource:///chrome/browser/skin/classic/
  • resource://gre/chrome/toolkit/skin/classic/
more options

How does one go about de-compressing them or otherwise get a list of the .pngs? I found three omni.ja files (two where you mentioned and the third in \webapprt) and tried using both 7-Zip and PeaZip, then changed the .ja extension to .zip and tried again, and didn't have any success.

more options

You may have to de-optimize a copy of hr omni.ja file if your archive manager can't open the file directly.

The omni.ja file is an optimized ZIP archive and needs to be de-optimized before editing the file by running a python script and needs to be optimized again after the edited file has been placed back in the omni.ja archive.

Get the raw optimizejars.py file via the link on this page (Raw File link in top right corner):

python optimizejars.py --deoptimize ./ ./ ./
python optimizejars.py --optimize ./ ./ ./

You need to install Python if you do not have this program.

more options

1) According to the webpage the link leads to, that file does not exist. However, I was able to find it at http://hg.mozilla.org/mozilla-central/raw-file/f7016571b472/config/optimizejars.py . 2) I copied the omni.ja file to another directory, then used command prompt to change to that directory and typed the following:

python[space]optimizejars.py[space]--deoptimize[space]./[space]./[space]./

(Just to make sure, those appear to be two dashes "-" in front of "deoptimize"). I then proceeded to push enter and got the following error statement:

  File "optimizejars.py", line 289
    print %s %d %d in %s"  % <<"Ordered" if inlog is not None else "Deoptimized">,                 ^

SyntaxError : invalid syntax

Athraithe ag Deof_Movestofca ar

more options

The file works for me although I had to edit the optimizejars.py file in two places (302, 321) and change .jar to .ja to make the script work with omni.jar instead of omni.ja

more options

You can find a more recent version here (that is the one in my original link):

more options

Downloaded that version of optimizejars.py, changed omni.ja to omni.jar, opened command prompt, typed the following: python optimizejars.py --deoptimize ./ ./ ./ Result: File "optimizejars.py", line 1

    ^

SyntaxError: invalid syntax

If someone would be willing to upload a deoptimized omni.jar and post the link or even e-mail it to me (provided neither of those actions violate this site's TOS), that would be greatly appreciated (and probably a lot less hassle than trying to find out why they .py file isn't working for me).

more options

Try to remove the comment part at the start of the file and leave the lines starting with:

  • import sys, os, subprocess, struct, re
more options

BTW, the problem with my earlier try is that Firefox was downloading the link as an html document and including everything from "<?xml version="1.0" encoding="UTF-8"?>" to "</html>".

I was getting a syntax error message before I figured out that I should remove the line numbers from the .py file (yes, manually). Then I was getting an "unexpected indent" error messages, which I eventually also finally figured out. However, now I am stuck on line 255 ("if written_count == reordered_count:"), which prompts the following error message:

elif written_count <: reordered_count : caret under the semi-colon SyntaxError: invalid syntax

Furthermore, replacing the double equal signs with a single equal sign results in pretty much the same, except with "<" replaced with "=" with the caret below that.

Athraithe ag cor-el ar

more options

Further note: the "<" above is showing up in the error message as &[no space]lt&

more options

I wonder whether it might be easier to download the source code. Paths might differ, but if you are mostly interested in seeing all the images, perhaps it would be good enough. Downloading Source Archives - Developer Guide | MDN (the page recommends using the 7-zip software to unpack the archive)

more options

You should click the Raw link at the top of the page to get the file without HTML code and line numbers.

more options

@jscher2000:
1) I thought writing " I was wondering if there was a full list of them somewhere..." made it clear that such a list was all I was interested in (rather than in seeing the images), but in hindsight, I understand why someone might have misunderstood. My apologies for the confusion.
2) The .png's in the source archive seem to be pretty much the same as those listed at the <a href="http://mxr.mozilla.org/mozilla-release/find?text=&string=.png">Mozilla file search page</a> and differ from those mentioned in the script referred to in my first post. For some reason I do not understand, I cannot find any of the following files referred to in the script via the search page:

("chrome://branding/content/icon16.png")
("chrome://browser/skin/aboutSessionRestore-window-icon.png")
("chrome://browser/skin/appmenu-icons.png")
("chrome://browser/skin/Privacy-16.png")
("chrome://browser/skin/places/allBookmarks.png")
("chrome://browser/skin/places/bookmark.png")
("chrome://browser/skin/places/unsortedBookmarks.png")
("chrome://browser/skin/preferences/alwaysAsk.png")
("chrome://browser/skin/tabview/stack-expander.png")
("chrome://global/skin/dirListing/folder.png")
("chrome://global/skin/icons/autoscroll.png")
("chrome://global/skin/icons/blacklist_large.png")
("chrome://global/skin/icons/close.png")
("chrome://global/skin/icons/information-16.png")
("chrome://global/skin/icons/resizer-rtl.png")
("chrome://global/skin/toolbar/spring.png")
("chrome://global/skin/tree/columnpicker.gif")
("chrome://mozapps/skin/extensions/category-available.png")
("chrome://mozapps/skin/extensions/category-languages.png")
("chrome://mozapps/skin/extensions/discover-logo.png")
("chrome://mozapps/skin/extensions/utilities.png")

@cor-el: My mistake, as you did mention the Raw File link. Still getting an error message, though: Line 289 [Line 252 if the comments at the start are removed as you suggested]

print "%s %d%d in %s "[a caret on the next line appears under this quotation mark] % <<"Ordered" if inlog is not None else "Deoptimized">,
SyntaxError: invalid syntax

BTW, if the .png's in the omni.ja are the same as those in the archive mentioned by jscher2000 and not those referred to in the script, this is just going to be a dead end.

Athraithe ag cor-el ar

more options

Upon further review, it appears the search lists many (but not all) of them, although some "translation" is required. E.g., "/toolkit/themes/gnomestripe/global/icons/" , "/toolkit/themes/pinstripe/global/icons/" and "/toolkit/themes/winstripe/global/icons" = "chrome://global/skin/icons/".

Athraithe ag Deof_Movestofca ar

more options

Réiteach Roghnaithe

  • chrome://browser/skin/ is resource:///chrome/browser/skin/classic/browser/ (/browser/omni.ja)
  • chrome://global/skin/ is resource://gre/chrome/toolkit/skin/classic/global/ (/omni.ja)
  • chrome://mozapps/skin/ resource://gre/chrome/toolkit/skin/classic/mozapps/

In most cases you can see the actual path if you leave out the trailing file part.


  • resource:///chrome/browser/skin/classic/browser/
  • resource://gre/chrome/toolkit/skin/classic/
  • resource://gre/chrome/toolkit/skin/classic/global/
  • resource://gre/chrome/toolkit/skin/classic/global/tree/columnpicker.gif
  • resource://gre/chrome/toolkit/skin/classic/mozapps/extensions/
  • resource://gre/chrome/toolkit/skin/classic/mozapps/extensions/utilities.png
more options

Although your solution works, I found an easier way somewhere else. For future reference, the omni.ja file can be opened by the Firefox browser. See http://forum.userstyles.org/discussion/comment/77174#Comment_77174 for full details if your interested. Two helpful hints that he forgot to mention: 1) the */omni.ja!/chrome/toolkit/skin/classic/ folder can be bookmarked for future reference; and, 2) files (or at least png files) can be saved to disk via drag and drop.