On a fresh installation of Firefox on MacOS, right-clicking an image while some text on the page is highlighted (to show as many buttons as possible) looks like so:
To be blunt: holy fucking shit, what the fuck is all of this shit? 24 rows of which 2 are greyed-out (aka: fucking useless), 7 dividers, 2 submenus; because a single row for “Ask an AI Chatbot” wasn’t enough, they just had to make another submenu. Amazing. Also not pictured is the “Search Image with Google Lens” button which seems to be behind some type of segmented rollout, because my real Firefox installation has it, but this fresh version doesn’t.
The “Inspect Accessibility Properties” button was added because I opened the DevTools (Inspector) once. It’s not obvious how to actually disable it ever again. Why am I shown “Copy Clean Link” if there is no clean link (or the link is already clean)? The same goes for “Copy Clean Link to Highlight”. Why can’t I make it so it always defaults to the “clean link” no matter what (and get rid of “Copy Link” completely, instead)? “Ask an AI Chatbot”? No, fuck you.
The rest? Completely useless. Thanks for showing me every feature you’ve ever shipped, with no authoritative selection of what users actually care about – and making it completely non-obvious how to disable the useless shit here.
Enough venting, let’s clean this all up. The following settings in about:config can be used to disable a ton of these useless right-click menu buttons. Set all of these to false.
browser.translations.select.enable– Removes the “Translate Selection” button from the right-click menu.screenshots.browser.component.enabled– Disables the built-in Firefox screenshot functionality, which also removes the “Take Screenshot” button.dom.text_fragments.enabled– Disables Text Fragments support, which also removes the “Copy Link to Highlight” button (and disables the auto-focus on URLs that include#:~:text=...).privacy.query_stripping.strip_on_share.enabled– Removes the “Copy Clean Link” / “Copy Link Without Site Tracking” buttons.devtools.accessibility.enabled– Disables the DevTools Accessibility Inspector and removes the “Inspect Accessibility Properties” button.browser.ml.chat.menu– Removes the “Ask an AI Chatbot” button.browser.ml.linkPreview.enabled– Disables Link Previews (and the AI-generated key points inside them), removing “Preview Link” button.dom.text-recognition.enabled– Disables OCR on images, removing the “Copy Text From Image” button.browser.search.visualSearch.featureGate– Disables Visual Search (Google Lens integration) and removes “Search Image with Google Lens” button.extensions.formautofill.addresses.enabled– Disables address autofill and the associated menu/button that sometimes appears in forms.extensions.formautofill.creditCards.enabled– Disables credit card/payment method autofill and removes the associated menu/button that sometimes appears in forms.widget.macos.native-context-menus– Turns off native macOS context menus so Firefox uses its own menus. This removes the “Services” button.print.enabled– Completely disables Firefox’ printing UI and capabilities, which also removes the “Print” and “Print Selection…” buttons (why does this menu have...after “Print Selection”? The world will, of course, never know.)
How do we look now?
Great, much better, we’re down from 24 buttons to just 15. Here’s what it looks like when you right-click on a page and when you right-click a link:
We still have the following useless buttons though:
- “Bookmark Link…”
- “Save Link As…”
- “Email Image…”
- “Set Image as Desktop Background…”
- “Bookmark Page…”
Why do all of the above have ...? No clue. But the real bad news is that we can’t get rid of these things by simply toggling some option in about:config.
We also have these when we right-click in a form:
- “Check Spelling” (right-clicking in a form)
- “Languages”
Despite the browser only being used in one language, there is no way to get rid of the “Languages” menu there. It’s possible to get rid of “Check Spelling” by completely disabling spellcheck, but that’s a useful feature for me, so I don’t.
Those remaining useless buttons can only be removed by creating a custom userChrome.css. I’ll cover how to do that in my next post.