[Firefox3] Removing Menu Bloat (Guide)


Recommended Posts

With the release of Firefox 3 RC1, Firefox3 is right around the corner, so I figure this is the perfect time to share with everyone a fix to a common annoyance: There's just too many menu items, and 99% of people never use half of them. Add a couple of Extensions, and the next time you right-click it might take you an extra 15 seconds to wade through all the options to find the actual functionality you are looking for.

Some menu entries are redundant, archaic and/or pointless. When was the last time you needed to use File -> Send Link... to email a link to someone? Probably quicker to fire off an IM, right? File->Open Location does nothing more than focuses on the Location bar. Tools->Web Search does nothing more than change focus to the Search Bar. I don't get it either.

And somethings are just easier to do some other way. Why Right-click and select "Back" from the context menu when 99.9% of the time you click the big new keyhole shaped back button? Maybe you're not a keyboard shortcut junkie, but I bet you probably have used Ctrl+X, Ctrl+C and Ctrl+V to cut, copy and paste before. Maybe you've even dabbled in Ctrl+A (Select All), or know that Ctrl+B and Ctrl+H open the Bookmark and History sidebars. Maybe you've installed one of the many mouse gesture extensions or do what I do and use mouse gestures in all of windows. Do you really need 50 menu entries to do those things then? No WAY!

Some Basics

There's basically two areas of focus for bloat removal:

  • The Context Menu, which is what pops up when you right-click on a web page,
  • and the Main Menu which is found on the toolbar.

For the most part, Firefox uses the same rendering engine to render it's interface that it does to draw webpages. There's pluses and minuses to this approach, but one of the positives is that it's very easy to customize, and in this context, remove menu items. All you need is a little CSS code, and things go away!

Another note: this guide is specific to Firefox 3, and some things will not work with older versions. The reason for this being that some of the CSS code which identifies the individual elements and classes has been changed. This change may also mean that some code that you find elsewhere on the web may not be up to date with Firefox3, and thus may not work.

So lets get started!

Menu Editor

Like almost anything when it comes to customizing Firefox, there's the efficient-but-unfriendly way of doing things and then there's they somebody-already-wrote-an-extension-for-this way. Menu Editor is that extension.

2.png

The interface is clean and obvious, so I won't go into a lot of detail about this extension in this guide. But it should be noted that Menu Editor has an advantage over the below method. It allows you to re-arrange items in the lists, via drag and drop. This is beyond the scope of the simple .css knowledge I have or have been able to find elsewhere on the web.

Menu editor is kept up to date rather well, and currently works flawlessly with Firefox3 RC1.

userChrome.css

Now, the "nuts and bolts" way of removing menu items is to edit Firefox's configuration files with a text editor. Why do this when there is MenuEditor you may ask? Well, there's a few reasons:

  • You don't need to install an extension for everything
    When people get into the mindset that they do, they eventually run into some sort of compatibility problems and think there's something wrong with firefox.
  • Installing extensions slows down Firefox.
    Each extension adds more code to Firefox which can cause longer load/unload times and more memory use. And if you're the kind of person who's trying to escape menu bloat, you probably appreciate avoiding extension bloat.
  • You only have to do it once
    Menu Editor is probably an interface you'll only interact with once or twice. So why would you want to have it installed all the time?
  • No compatibility issues
    You don't have to worry about userChrome.css refusing to load when you upgrade Firefox like you would an extension. Sure, a few individual identifiers may break on the next major backend change (Gecko 2.0), but most things will probably stay the same.
  • Menu Editor adds another thing to click.
    And you hate irony. ;)
  • It gives you that 1337 feeling
    You know you love it.

Still, there will be those people who will be baffled by the below method. In that case Menu Editor is for you. (don't feel bad, just say that you "have a life" :) )

Basic questions

Here are some basic questions that I'm not going to bother to answer, because Mozilla already gives better answers than I ever could. Just click the link if you need the answer.

My Code

The following is a slight derivation of my code that I use each and every day. Basically I make use of the keyboard shortcuts I listed above in the intro, and have removed all the redundant and flat out useless menu entries. I've tweaked it slightly because I remove the bookmarks menu, and I figure that is probably a little too much for most people.

It should also be noted that this code is optimized for Windows. Mac versions of Firefox (and Linux to a lesser extent) moves some things around to be in tune with their interface guidelines.

/*=========================Removing Unnecessary Items=================== */

/* Remove the Edit and Bookmarks menu*/

#navigator-toolbox menu[label=Edit],

/*#navigator-toolbox menu[label=Bookmarks],*/

/* Remove Main Menu Items*/

/*File Menu*/

#navigator-toolbox menuitem[label^=New Tab],

#navigator-toolbox menuitem[label^=Open Location],

#navigator-toolbox menuitem[label^=Open File],

#navigator-toolbox #menu_sendLink,

#navigator-toolbox menuitem[label=Close Window],

#navigator-toolbox menuitem[label=Close Tab],

#navigator-toolbox menuitem[label^=Close Tab] + menuseparator,

#navigator-toolbox menuitem[label^=Import] + menuseparator,

/*View Menu*/

#navigator-toolbox menu[label=Toolbars],

#navigator-toolbox menu[label=Sidebar],

#navigator-toolbox menuitem[label=Stop],

#navigator-toolbox menuitem[label=Reload],

#navigator-toolbox menuitem[label=Reload] + menuseparator,

/*History Menu*/

#navigator-toolbox menuitem[label=Back],

#navigator-toolbox menuitem[label=Forward],

#navigator-toolbox menuitem[label=Home],

/*Bookmarks Menu*/

#navigator-toolbox menuitem[label=Bookmark This Page],

#navigator-toolbox #subscribeToPageMenuitem,

#navigator-toolbox menuitem[command=Browser:BookmarkAllTabs],

#navigator-toolbox menu[label=Bookmarks Toolbar],

#navigator-toolbox menu[label=Bookmarks Toolbar] + menuseparator,

/*Tools Menu*/

#navigator-toolbox menuitem[label=Web Search],

#navigator-toolbox menuitem[label=Web Search] + menuseparator,

#navigator-toolbox #abp-menuitem,

#navigator-toolbox menuitem[label=Page Info] + menuseparator,

/*Help Menu*/

#navigator-toolbox menuitem[label=For Internet Explorer Users],

#navigator-toolbox menuitem[label=Report Web Forgery...] + menuseparator,

/*Remove Tabbar Context Menu Items*/

.tabbrowser-strip menuitem[label=New Tab],

.tabbrowser-strip menuitem[label=New Tab] + menuseparator,

.tabbrowser-strip menuitem[label=Undo Close Tab] + menuseparator,

.tabbrowser-strip menuitem[label=Close Tab],

/*Remove Document (webpage) Context Menu Items*/

#context-openlink,

#context-openlinkintab,

#context-sep-open,

#context-bookmarklink,

#context-sendlink,

#context-viewimage,

#context-sendimage,

#context-setWallpaper,

#context-setDesktopBackground,

#context-blockimage,

#context-back,

#context-forward,

#context-reload,

#context-stop,

#context-sep-stop,

#context-bookmarkpage,

#context-savepage,

#context-sendpage,

#context-sep-viewbgimage,

#context-viewbgimage,

#context-cut,

#context-copy,

#context-paste,

#context-delete,

#context-sep-paste,

#context-selectall,

#context-sep-selectall,

#frame-sep,

#context-sep-properties,

#context-viewsource,

/* Hide the Updates Button regardless of update(s) status. */

toolbarbutton[type=updates]

{display: none !important;}

Understanding the Above

Now, I didn't fully syntax highlight the above there, but I did use green to highlight the comments (which are text ignored by the CSS interpreter). I used the comments to help organize the code into it's obvious sections so that you could better understand it.

The most important line in the very last one (the one I colored red). That is the actual property that hides the items. The rest of the lines are Identifiers which point to the menu items, separated by commas so that they are all associated to the last line. You could honestly put this last line after each individual identifier instead of the commas, but I personally think that is a bit less tiddy.

Another thing you may be wondering is why I put #navigator-toolbox in front of all my main menu commands (not all guides and examples will do this). Well, the answer is simple: that restricts it to that command found on the main menu.

Example:

Before the new "Places" feature of Firefox3, there was the old bookmark manager. That bookmark manger had an Edit menu. So if you wanted to remove the (IMO) pointless Edit menu from the main window and you didn't use #navigator-toolbox you also accidentally removed the (not so useless) edit menu from the bookmarks manager as well.

This caused me headaches many times. :pinch:

Modifying the Above to Best Suit Your Needs

Obviously you and I may not have the exact same usage patterns. That's fine, you just need to tweak the above code then, to bet suit you.

If the above code is a little to "heavy-handed" for you, and you're really missing a menu item it removed, getting that menu item back is as easy as deleting or putting /*comment delimiters*/ around the item you want to bring back. Most of the names are self explanatory.

If there is an item you want to further remove, you can search the below links for the identifier, or ask here (I'll try to find it) or on the Mozillazine forums Or you can search them out with the DOM inspector.

I'm sure I can expand this section, so if you have any questions, ask them below.

Useful Links

I hope you found this guide useful!

Edited by shakey_snake
Link to comment
https://www.neowin.net/forum/topic/638769-firefox3-removing-menu-bloat-guide/
Share on other sites

very nice tuto man ... the new ff3 rc1 seems to be much better even tho none of my previous extensions or themes work on it yet ..

but now am kinda into opera .. its very easy and fast

quick question?

can i make a quick startup page in firefox like the one on opera if so then it would be awesome .. thanks in advance mate

very nice tuto man ... the new ff3 rc1 seems to be much better even tho none of my previous extensions or themes work on it yet ..

but now am kinda into opera .. its very easy and fast

quick question?

can i make a quick startup page in firefox like the one on opera if so then it would be awesome .. thanks in advance mate

The default start up page is Google. If by start up you mean Home Page?

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • I do trust Apple probably more than these other companies with certain data, but I also do think (and it has been demonstrated that) Apple pulls a lot of shenanigans and always has for a long time.
    • Does your iPhone support the latest iOS version? Here's the iOS 27 compatibility list by Aditya Tiwari It's that time of year when we get to know about the latest operating system updates for Apple devices. For iPhone, Apple previewed the iOS 27 update at WWDC 2026, where the company finally introduced an upgraded version of Siri. Apple typically supports iPhone models for up to five years. But it has been making exceptions in recent years (read iPhone 11). If you're wondering whether your iPhone is compatible with the iOS 27 update, here is the official list of devices: iPhone 17 Pro Max, iPhone 17 Pro, iPhone 17, iPhone 17e, iPhone Air iPhone 16 Pro Max, iPhone 16 Pro, iPhone 16, iPhone 16 Plus, iPhone 16e iPhone 15 Pro Max, iPhone 15 Pro, iPhone 15 Plus, iPhone 15 iPhone 14 Pro Max, iPhone 14 Pro, iPhone 14 Plus, iPhone 14 iPhone 13 Pro Max, iPhone 13 Pro, iPhone 13, iPhone 13 mini iPhone 12 Pro Max, iPhone 12 Pro, iPhone 12, iPhone 12 mini iPhone 11 Pro Max, iPhone 11 Pro, iPhone 11 iPhone SE (2nd generation), iPhone SE (3rd generation) So, you can download the iOS 27 developer beta on up to 31 different iPhone models. There has been no change to the list of supported iPhones since iOS 26. However, it will expand to include more devices when the iPhone 18 series arrives later this year. To download the developer beta on your iPhone, go to Settings > General > Software Update > Beta Updates. Here, select "iOS 27 Developer Beta" from the list of choices to get the new update. In addition to iOS 27, you can try the developer beta versions of macOS 27, iPadOS 27, watchOS 27, tvOS 27, and HomePod software 27 on your supported devices. iOS 27 comes with improved Liquid Glass, which you can adjust using a new transparency slider. Apple said during the keynote that iPhone apps now launch up to 30% faster, new photos appear in the Photos app up to 70% faster, and AirDrop transfers work up to 80% faster. The new update promises to improve performance on older iPhones by introducing a new CPU Scheduler that supports devices all the way back to the iPhone 11. While iOS 27 is supported on older iPhones, it goes without saying that they'll lack several features due to hardware differences. For instance, iPhone 14/14 Plus and older models come with a notch instead of the Dynamic Island. Similarly, Apple Intelligence features are supported on iPhone 15 Pro/Pro Max and later models.
    • The Radeon RX 9070 XT is right up there with the GeForce RTX 5070 Ti
    • I don't know why someone said useless, but it does have that pesky kernel driver bundled, and it's in perennial turmoil. When it goes bad, it goes very bad, and it's impossible to predict when it will due to system differences. I know that they're in the middle of development for a major new version that will include a completely new driver, one that they expect will largely solve the problem, but that's a ways out and it's unproven at this point.
    • doesn't AdGuard let ads through that pay to be let through?
  • Recent Achievements

    • Experienced
      JayZJay went up a rank
      Experienced
    • Reacting Well
      Sir_Timbit earned a badge
      Reacting Well
    • Week One Done
      rubentuben8 earned a badge
      Week One Done
    • Week One Done
      ARaclen earned a badge
      Week One Done
    • Week One Done
      jojodbn earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      524
    2. 2
      PsYcHoKiLLa
      231
    3. 3
      +Edouard
      132
    4. 4
      ATLien_0
      88
    5. 5
      Steven P.
      83
  • Tell a friend

    Love Neowin? Tell a friend!