User:Dickvl
Contents
Bookmarklets
Bookmarklets can be found here: User:Dickvl/Bookmarklets
See also Wikipedia: Bookmarklet
Here is a bookmarklet to display the content of the Navigator object (plugins, mimeTypes)
javascript:/* dickvl@kb.mozillazine.org */ (function(){ var b='<br>',i,L,O,p,pN,pT=('Navigator properties:').bold()+b+b,oT=('Navigator objects:').bold()+b+b,fT=('Navigator functions:').bold()+b+b; for(pN in navigator){ if(typeof navigator[pN]=='object'){ O=navigator[pN];L=(O.length)?O.length:0;oT+=(pN+': ').bold()+L.toString().bold()+b; for(i=0;i<L;i++){M=O[i];oT+=('['+(i+1)+'] ').bold(); for(p in M){if(typeof M[p]!='function'&&typeof M[p]!='object'&&p!='length'){oT+=(p+': ').bold()+M[p]+(' | ').bold()}} if(M.enabledPlugin){oT+=('Plugin: ').bold()+M.enabledPlugin.name} oT+=b} oT+=b} else if(typeof navigator[pN]!='function'){pT+=(pN+': ').bold()+navigator[pN]+b} else if(typeof navigator[pN]=='function'){if(/Enabled/.test(pN)){fT+=(pN+': ').bold()+navigator[pN]()+b}}} with(document.open()){write(pT+b+oT+b+fT);close();} })();
Code
Code for userChrome.css and userContent.css can be found here User:Dickvl/Code
Double Underlined pop-ups
You can add this code to userContent.css to hide some ads and some IntelliTXT type pop-ups (double underlined links) [1].
/* google_ads_frame, yahoo iframe*/ IFRAME[src*='googlesyndication'], IFRAME[name='google_ads_frame'] {display:none!important} IFRAME[title='Ads by Yahoo!'] {display:none!important} /* intelliTXT and others */ #iTt,#adbrite_inline_div,#AdvertBanner,#amzn-popup-div, #konaLayers,#lwPreview,#menuModule,#tf_AdDiv,#tooltipBox, #IL_BUBBLE,#IL_FORM_CONT,#snap_com_shot_main {display:none!important} /* get.lingospot.com */ .lingo_info_box *,.lingo_spot *,.lingo_reset *{display:none!important}
Error Console
The Code examples to run in the "Tools -> Error Console" have been moved to the User:Dickvl/JavaScript_Error_Console page.
Extensions
Private Browsing
Private Browsing disable (pbdisable) is a simple extension to disable the "Tools -> Start Private Browsing" menu entry and the "Tools > Clear Recent History" menu entry in Firefox 3.5/6.
The extension hides these menu entries and also disables their shortcut keys and should prevent Firefox from entering Private Browsing mode. The code doesn't hide "Tools -> Options -> Privacy" to start PB mode automatically and you need to add code to userChrome.css to do that. The code in userChrome.css also hides the menu entries if the extension is disabled or not installed. Current Firefox versions still process code in userChrome.css if started in Safe_mode. It is possible to clear the cache via "Tools -> Options -> Advanced -> Network" and to clear history in the Library and History sidebar. See also [2]
For more information about the Private Browsing disable extension please visit: User:Dickvl/Private_Browsing_disable
Keysdisable
I use this code on Linux to disable some shortcuts that I want to use in Prefbar or that are otherwise dangerous (Ctr+Q to Quit Firefox is too close to Ctrl+W).
if(E=window.document.getElementById('key_closeWindow')){E.removeAttribute('key');E.removeAttribute('modifiers');E.removeAttribute('command');} if(E=window.document.getElementById('key_quitApplication')){E.removeAttribute('key');E.removeAttribute('modifiers');E.removeAttribute('command');} if(E=window.document.getElementById('key_privatebrowsing')){E.removeAttribute('key');E.removeAttribute('modifiers');E.removeAttribute('command');} if(E=window.document.getElementById('key_openDownloads')){E.removeAttribute('key');E.removeAttribute('modifiers');E.removeAttribute('command');} if(E=window.document.getElementById('key_undoCloseWindow')){E.removeAttribute('key');E.removeAttribute('modifiers');E.removeAttribute('command');} if(E=window.document.getElementById('manBookmarkKb')){E.removeAttribute('key');E.removeAttribute('modifiers');E.removeAttribute('command');}
You can use the DOM Inspector to find the ID of a menu entry if you want to disable other menu entries.
You can modify the file keysdisable.xul in the keysdisable.jar (zip) archive in the keysdisable.xpi (zip) archive to make the changes.
Copy and paste the full DATA code in the location bar and press the Enter key. Save the file as keysdisable.xpi. Updated maxVersion to 6.* (Apr 13, 2011)
data:application/octet-stream;base64, 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 BgAGANkBAAB4BQAAAAA=
Restart Firefox
This extension adds a Restart Firefox item to the File menu and the App menu. It displays that menu entry in the language of the installed locale (&addon.restartNow.label), so should work with all locales. All open tabs and windows should be restored if session restore is working properly.
Copy and paste the full DATA code in the location bar and press the Enter key. Save the file as restarter-1.2-fx.xpi (updated Jul 2, 2013) - works with Firefox 3.0 and later)
data:application/octet-stream;base64, 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
TabVisited
In Firefox 3.6 and above it is no longer possible to use the selected attribute to style unvisited and visited tabs with code in userChrome.css. In Firefox 3.6 and above only the selected tab gets a selected="true" attribute. In previous Firefox 3 and 3.5 versions the visited tabs get a selected="false" attribute, but that attribute was removed to fix buggy behavior [3], [4].
For more information about the TabVisited extension please visit: User:Dickvl/TabVisited
In Firefox 9+ versions you will have an unread attribute that you can use to style tabs that haven't been visited during the current session.
See: tab - MDN
Quote:
This attribute is set to true if the tab is unread; that is, either it has not yet been selected during the current session, or has changed since the last time it was selected.
This attribute is not present if the tab is not unread.
.tabbrowser-tab[unread="true"] .tab-text {} .tabbrowser-tab:not([unread="true"]) .tab-text {} .tabbrowser-tab[selected="true"] .tab-text {} /* not busy: background image */ .tabbrowser-tab:not([busy])[unread="true"] {background-image:-moz-linear-gradient(rgba(153,221,6,0.8) 1px,rgba(153,221,6,0.7) 3px,rgba(153,221,6,0.5) 32%),-moz-linear-gradient(-moz-dialog,-moz-dialog)!important} .tabbrowser-tab:not([busy]):not([unread]) {background-image:-moz-linear-gradient(rgba(255,204,204,0.8) 1px,rgba(255,204,204,0.7) 3px,rgba(255,204,204,0.5) 32%), -moz-linear-gradient(-moz-dialog,-moz-dialog)!important} .tabbrowser-tab:not([busy])[selected="true"] {background-image:-moz-linear-gradient(rgba(255,255,9,0.8) 1px,rgba(255,255,9,0.6) 3px,rgba(255,255,9,0.4) 32%),-moz-linear-gradient(-moz-dialog,-moz-dialog)!important} /* busy */ .tabbrowser-tab[busy] {background-image:-moz-linear-gradient(rgba(0,6,204,0.8) 1px, rgba(0,6,204,0.7) 3px, rgba(0,6,204,0.7) 32%),-moz-linear-gradient(-moz-dialog,-moz-dialog)!important} .tabbrowser-tab[busy] .tab-text {color:rgb(255,255,0)!important} .tabbrowser-tab[busy][selected="true"] {background-image:-moz-linear-gradient(rgba(0,204,255,0.8) 1px,rgba(0,204,255,0.7) 3px,rgba(0,204,255,0.6) 32%),-moz-linear-gradient(-moz-dialog,-moz-dialog)!important} .tabbrowser-tab[busy][selected="true"] .tab-text {color:rgb(0,0,255)!important}
See also:
- Updating add-ons for Firefox 9 - MDN: Theme_changes
- bug 487242#c34 - Regression: in userChrome.css no longer possible to distinguish between unvisited tabs, visited tabs, and the selected tab