Und
menuitem.style.listStyleImage = 'url("' + ....... + '")';
funktioniert auch.
Werde ich mal übernehmen, ist ja irgendwie 'eleganter'...
Und
menuitem.style.listStyleImage = 'url("' + ....... + '")';
funktioniert auch.
Werde ich mal übernehmen, ist ja irgendwie 'eleganter'...
Ich fress 'en Besen.
Burger tuts auch 🍔️ ...
Dies funzt bei mir (nur ein Beispiel), vieleicht bringt Dich das weiter.:
// JavaScript Document
// Test_gContextMenu.uc.js
(function() {
// ■■ START UserCustomisation ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
const buttonIcon = 'DeepL_2.png'; // Name.Dateiendung des anzuzeigenden Symbols | Name.file extension of the symbol to be displayed
const buttonPath = '/chrome/icons/'; // Pfad zum Ordner der das Icon beinhaltet | Path to folder containing the icon
const label = 'Test_gContextMenu'
const tooltiptext = 'Site als Lesezeichen speichern/ändern';
const oncommand = "gContextMenu.bookmarkThisPage();";
// ■■ END UserCustomisation ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
const curProfDir = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir));
// -- Contextmenu -----------------------------------------------
const menuitem1 = document.createXULElement('menuitem');
menuitem1.id = 'tabContextBookmarkpage';
menuitem1.setAttribute('label', label);
menuitem1.setAttribute('tooltiptext', tooltiptext);
menuitem1.setAttribute('oncommand', oncommand);
menuitem1.classList.add('menuitem-iconic');
menuitem1.style = "list-style-image: url('" + curProfDir + buttonPath + buttonIcon + "');";
const refItem1 = document.getElementById('context-inspect');
refItem1.parentNode.insertBefore(menuitem1, refItem1.nextSibling);
})();
Alles anzeigen
Super, freut mich.
Aber an Zeile 75 bin ich nicht schuld, siehe Originalbeitrag (oder klicke auf das Zitat).
Danke auch an Sören Hentzschel für die Info.
Du nutzt das Script von hier?
Bitte mal testen:
Ich hab das nur überflogen aber:
Zeile 62 fehlt am Ende ein Semikolon und in
Zeile 78
setPref('once');
ist BrowserReload(); nicht durch BrowserCommands.reload(); ersetzt.
Vieleicht wars das schon?
Zeile 52 + 68 löschen?
Ich nutze für mich (LINUX, keine Garantie für andere BS) allerdings dies (mit den gleichen Icons wie oben):
// B_Tooltip_toggle.uc.js
// dark theme
/*1. Verhalten des Tooltips beim start (ausgeschaltet/opacity:0)->*/
(function ttstart() {
// start config area--------------------------------------------
let IconPath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // Pfad zum Ordner der das .svg-Symbol (mit: fill="context-fill" fill-opacity="context-fill-opacity") beinhaltet.
// end config area----------------------------------------------
g1_tooltip_b = "0";
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
tooltip[label*=" "],
tooltip,
#tabbrowser-tab-tooltip {
appearance: none !important;
background-color: #3f3f3f !important;
color: #F9F9F9 !important;
font-size: 13px !important;
line-height: unset !important;
border: 1px solid #b03b0099 !important;
border-radius: 4px !important;
box-shadow: none !important;
width: auto !important;
height: auto !important;
justify-content: center !important;
align-items: center !important;
align-content: center !important;
vertical-align: middle !important;
overflow: hidden !important;
padding: 3px 7px 5px 7px !important;
display: none !important;
}
.places-tooltip-title {
border-bottom: 1px solid #b03b0099 !important;
padding-bottom: 3px !important;
margin-left: -7px !important;
margin-right: -7px !important;
padding-left: 7px !important;
padding-right: 7px !important;
color: #F9F9F9 !important;
}
.places-tooltip-uri {
font-size: 13px !important;
padding-top: 4px !important;
padding-bottom: 0px !important;
color: #b0b0b0 !important;
}
.places-tooltip {
display: flex !important;
}
#remoteBrowserTooltip{
display: none !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■Tabvorschau■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*muss in user.js aktiviert werden*/
.tab-preview-container {
border: 1px solid #b03b0099 !important;
border-radius: 4px !important;
background-color: #3f3f3f !important;
margin: 0 !important;
margin-top: 10px !important;
padding: 0 !important;
line-height: unset !important;
display: none !important;
}
.tab-preview-text-container {
border-radius: 0 !important;
border: 0 !important;
background: none !important;
margin: 0 !important;
padding: 0 !important;
}
.tab-preview-title,
.tab-preview-uri {
font-size: 13px !important;
font-weight: normal !important;
margin: 0 !important;
}
.tab-preview-title {
color: #F9F9F9 !important;
border-bottom: 0px solid #b03b0099 !important;
padding: 3px 7px 3px 7px !important;
max-height: 200px !important;
word-break: break-word !important;
}
.tab-preview-uri {
color: #b0b0b0 !important;
border-top: 1px solid #b03b0099 !important;
padding: 3px 7px 4px 7px !important;
max-height: 200px !important;
}
.tab-preview-thumbnail-container img,
.tab-preview-thumbnail-container canvas {
border-top: 1px solid #b03b0099 !important;
}
.tab-preview-thumbnail-container {
border-top: 0px solid #b03b0099 !important;
&:empty {
display: none !important;
}
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#toggle-tt-button .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #f60 !important;
transition: fill 0.4s ease-in-out 0.0s !important;
padding-top: 6.5px !important;
padding-bottom: 5.5px !important;
}
#toggle-tt-button:hover .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #dddddd !important;
transition: fill 0.4s ease-in-out 0.0s !important;
padding-top: 6.5px !important;
padding-bottom: 5.5px !important;
}
#toggle-tt-button:active .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: gold !important;
transition: fill 0.0s ease-in-out 0.0s !important;
padding-top: 6.5px !important;
padding-bottom: 5.5px !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
})();
/*2. Einschalten des Tooltips per Button (opacity:1)->*/
function tton() {
// start config area--------------------------------------------
let IconPath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // Pfad zum Ordner der das .svg-Symbol (mit: fill="context-fill" fill-opacity="context-fill-opacity") beinhaltet.
// end config area----------------------------------------------
g1_tooltip_b = "1";
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
tooltip[label*=" "],
tooltip,
#tabbrowser-tab-tooltip {
display: flex !important;
}
.places-tooltip {
display: flex !important;
}
#remoteBrowserTooltip{
display: none !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■Tabvorschau■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.tab-preview-container {
display: block !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#toggle-tt-button .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: gold !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:hover .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: #dddddd !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:active .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #f60 !important;
transition: fill 0.0s ease-in-out 0.0s !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
}
/*2a. Einschalten aller Tooltips per Button (opacity:1)->*/
function ttallon() {
// start config area--------------------------------------------
let IconPath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // Pfad zum Ordner der das .svg-Symbol (mit: fill="context-fill" fill-opacity="context-fill-opacity") beinhaltet.
// end config area----------------------------------------------
g1_tooltip_b = "2";
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
tooltip[label*=" "],
tooltip,
#tabbrowser-tab-tooltip {
display: flex !important;
}
.places-tooltip {
display: flex !important;
}
#remoteBrowserTooltip{
display: flex !important;
padding: 4px 7px 4px 7px !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■Tabvorschau■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.tab-preview-container {
display: block !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#toggle-tt-button .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: #72a572 !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:hover .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: #dddddd !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:active .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #cd0e14 !important;
transition: fill 0.0s ease-in-out 0.0s !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
}
/*3. Ausschalten des Tooltips per Button (opacity:0)->*/
function ttoff() {
// start config area--------------------------------------------
let IconPath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // Pfad zum Ordner der das .svg-Symbol (mit: fill="context-fill" fill-opacity="context-fill-opacity") beinhaltet.
// end config area----------------------------------------------
g1_tooltip_b = "0";
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
tooltip[label*=" "],
tooltip,
#tabbrowser-tab-tooltip {
display: none !important;
}
.places-tooltip {
display: flex !important;
}
#remoteBrowserTooltip{
display: none !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■Tabvorschau■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.tab-preview-container {
display: none !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#toggle-tt-button .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #f60 !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:hover .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #dddddd !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:active .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: gold !important;
transition: fill 0.0s ease-in-out 0.0s !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
}
/*3a. Ausschalten aller Tooltips per Button (opacity:0)->*/
function ttalloff() {
// start config area--------------------------------------------
let IconPath = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir, 'chrome', 'icons')); // Pfad zum Ordner der das .svg-Symbol (mit: fill="context-fill" fill-opacity="context-fill-opacity") beinhaltet.
// end config area----------------------------------------------
g1_tooltip_b = "3";
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
tooltip[label*=" "],
tooltip,
#tabbrowser-tab-tooltip {
display: none !important;
}
.places-tooltip {
display: none !important;
}
#remoteBrowserTooltip{
display: none !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■Tabvorschau■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.tab-preview-container {
display: none !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#toggle-tt-button .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #cd0e14 !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:hover .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-empty_contprop.svg") !important;
fill: #dddddd !important;
transition: fill 0.4s ease-in-out 0.0s !important;
}
#toggle-tt-button:active .toolbarbutton-icon {
list-style-image: url("${IconPath}/16_tooltip-text_contprop.svg") !important;
fill: #72a572 !important;
transition: fill 0.0s ease-in-out 0.0s !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
}
/*4. Button Tooltip on/off (opacity: 1/0)->*/
(function() {
/*Icon + Iconpfad wird durch 1.-3. geregelt (sollte der Pfad oder die Icons dort entfernt werden, muss das hier wieder aktiviert werden); Nachteil: nur ein Icon, keine transition; kein fill*/
/*
// start config area
let ButtonIcon = "16_tooltip-text_contprop.svg" // Name & Dateiendung des anzuzeigenden Symbols.
let ButtonIconPath = "/chrome/css/image/" // Pfad zum Ordner der das Symbol beinhaltet.
// end config area
*/
if (location.href !== 'chrome://browser/content/browser.xhtml') return;
try {
CustomizableUI.createWidget({
id: 'toggle-tt-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
let toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var props = {
id: 'toggle-tt-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: 'true',
label: 'Toggle Tooltip',
accesskey: '',
tooltiptext: 'Tooltip on/off\n\nStart: Nur Tt-Bookmarks sichtbar\n\nToggle Linksklick\nLinksklick \'on\': Alle bis auf Tt-Content sichtbar\nLinksklick \'off\': zurück auf \'Start\'\n\nToggle Mittelklick\nMittelklick \'on\': ALLE Tt\'s sichtbar \nMittelklick \'off\': ALLE Tt\'s ausgeblendet'
/* style: "list-style-image: url('" + PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir)) + ButtonIconPath + ButtonIcon + "');",*/
/*Icon+Pfad wird durch 1.-3. geregelt (sollte der Pfad oder die Icons dort entfernt werden, muss das hier wieder aktiviert werden)*/
};
for(var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
} catch(e) { };
document.getElementById('toggle-tt-button').addEventListener( "click", onClick );
function onClick(aEvent) {
if (event.button == 0) {
if(g1_tooltip_b == '') {
g1_tooltip_b = '1';
tton();
}
else if(g1_tooltip_b == '0') {
g1_tooltip_b = '1';
tton();
}
else if(g1_tooltip_b == '1') {
g1_tooltip_b = '0';
ttoff();
}/**/
else if(g1_tooltip_b == '3') {
g1_tooltip_b = '0';
ttoff();
}
else if(g1_tooltip_b == '2') {
g1_tooltip_b = '1';
ttoon();
}
}
else
if (event.button == 1) {
if(g1_tooltip_b == '') {
g1_tooltip_b = '2';
tton();
}
else if(g1_tooltip_b == '2') {
g1_tooltip_b = '3';
ttalloff();
}
else if(g1_tooltip_b == '3') {
g1_tooltip_b = '2';
ttallon();
}/**/
else if(g1_tooltip_b == '1') {
g1_tooltip_b = '2';
ttallon();
}
else if(g1_tooltip_b == '0') {
g1_tooltip_b = '3';
ttalloff();
}
}
else
if (event.button == 2) {
event.button.stopPropagation();
//alert("Rechtsklick wird nicht unterstützt");
}
else {
alert("ERROR: B_Tooltip_toggle.uc.js");
};
}
})();
Alles anzeigen
Ja ich weiß, ist wie mit Kanonen auf Spatzen schießen, deshalb am Besten gleich wieder vergessen!
Oder so mit 2 Icons:
(function() {
// start customisation area----------------------------------
const buttonIcon1 = '16_tooltip-empty_contprop.svg'; // Name & Dateiendung des anzuzeigenden Symbols
const buttonIcon2 = '16_tooltip-text_contprop.svg'; // Name & Dateiendung des anzuzeigenden Symbols
const buttonPath = '/chrome/icons/'; // Pfad zum Ordner der die Icons beinhaltet
// end customisation area-----------------------------------
const curProfDir = PathUtils.toFileURI(PathUtils.join(PathUtils.profileDir));
if(location.href != 'chrome://browser/content/browser.xhtml') return;
try {
CustomizableUI.createWidget({
id: 'Tooltip-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var button = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var attributes = {
id: 'Tooltip-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: 'true',
label: 'Tooltip aktivieren/deaktivieren',
tooltiptext: Services.prefs.getBoolPref('browser.chrome.toolbar_tips') ?
'Tooltip frei' : 'Tooltip gesperrt',
oncommand: '(' + onCommand.toString() + ')()'
};
for (var a in attributes) {
button.setAttribute(a, attributes[a]);
};
function onCommand() {
var isEnabled = !Services.prefs.getBoolPref('browser.chrome.toolbar_tips');
Services.prefs.setBoolPref('browser.chrome.toolbar_tips', isEnabled);
var windows = Services.wm.getEnumerator('navigator:browser');
while (windows.hasMoreElements()) {
let button = windows.getNext().document.getElementById('Tooltip-button');
if (isEnabled)
button.setAttribute('tooltiptext', 'Tooltip frei')
else
button.setAttribute('tooltiptext', 'Tooltip gesperrt');
};
};
return button;
}
});
} catch(e) { };
//-----------------------------------------
let sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
let uri = Services.io.newURI("data:text/css;charset=utf-8," + encodeURIComponent(`
#Tooltip-button[tooltiptext="Tooltip gesperrt"] {
list-style-image: url(${curProfDir}${buttonPath}${buttonIcon1});
fill: red !important;
}
#Tooltip-button[tooltiptext="Tooltip frei"] {
list-style-image: url(${curProfDir}${buttonPath}${buttonIcon2});
fill: green !important;
}
`), null, null);
sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
//-----------------------------------------------------------------
})();
Alles anzeigen
Solltest Du den Ordner wiederherstellen wollen, könntest Du in der Bibliothek fündig werden. Unter dem Menüpunkt Verwalten > Rückgängig...
Aber das war ja nicht Deine Frage. Mich stört auch, dass der User ohne Bestätigungsdialog einen LZ-Ordner löschen kann (und dass ohne Mahnung von FF, vorsichtig zu sein). Kann aber wieder rückgänig gemacht/wiederhergestellt werden.
Und irgendwie sollte jeder selbst für sein Handeln die Verantwortung übernehmen.
Ja ich weiß. Wie sollten wir das Problem denn jetzt lösen, ich meine damit das Überschreiben des oben erwähnten, überflüssigen 'Neuer Tab' durch z.B. Links aus 'Tabgroups'?
ich kann jetzt nicht beurteilen, wie sich das konkret im Falle dieses Scripts in der Praxis auswirkt.
Ich schon. Funktioniert.
Was das eigentliche Problem betrifft, muss Firefox als Tab-basierter Browser nun einmal immer mindestens einen Tab offen haben muss.
Offen haben schon, aber wo ist die Möglichkeit zum überschreiben? Mich nervt der überflüssige leere Tab beim Öffnen z.B. einer Tabgroup auch!
Nach dem Start von Firefox rufe ich in der Regel zunächst meine favorisierten Lesezeichen mittels (Alle in Tabs öffnen) auf, dabei "stört" mich ein wenig der erwähnte "Neue Tab", den ich dann schließe.
Es würde vielleicht helfen, wenn der 'Neue tab' dabei von den aufgerufenen Lesezeichen überschrieben wird (leider habe ich keine Quellenangaben des scripts mehr):
// JavaScript Document
/*
Wenn man mehrere Lesezeichen zugleich in Tabs öffnet, wird dabei der fokussierte Tab nicht überschrieben. Das Skript bewirkt, dass dieser Tab, wenn er leer ist, für das erste der Lesezeichen benutzt wird. Ein Tab gilt in diesem Zusammenhang im Wesentlichen dann als leer, wenn er die Seite about:blank, about:newtab oder about:home enthält. Genauer steht es hier im Quelltext:
isEmpty und isBlankPageURL
Das Skript verändert die Funktion PlacesUIUtils.openTabset, die für das gleichzeitige Öffnen mehrerer Tabs zuständig ist.
*/
(function() {
if (window.__SSi != 'window0')
return;
PlacesUIUtils.openTabset = function openTabset(aItemsToOpen, aEvent, aWindow) {
if (!aItemsToOpen.length)
return;
let browserWindow = aWindow &&
aWindow.document.documentElement.getAttribute("windowtype") == "navigator:browser" ?
aWindow : BrowserWindowTracker.getTopWindow();
var urls = [];
let skipMarking = browserWindow && PrivateBrowsingUtils.isWindowPrivate(browserWindow);
for (let item of aItemsToOpen) {
urls.push(item.uri);
if (skipMarking)
continue;
if (item.isBookmark)
this.markPageAsFollowedBookmark(item.uri);
else
this.markPageAsTyped(item.uri);
}
var where = browserWindow ?
browserWindow.whereToOpenLink(aEvent, false, true) : "window";
if (where == "window") {
let args = Cc["@mozilla.org/array;1"].createInstance(Ci.nsIMutableArray);
let stringsToLoad = Cc["@mozilla.org/array;1"].createInstance(Ci.nsIMutableArray);
urls.forEach(url => stringsToLoad.appendElement(PlacesUtils.toISupportsString(url)));
args.appendElement(stringsToLoad);
browserWindow = Services.ww.openWindow(
aWindow,
AppConstants.BROWSER_CHROME_URL,
null,
"chrome,dialog=no,all",
args
);
return;
}
var loadInBackground = (where == "tabshifted");
browserWindow.gBrowser.loadTabs(urls, {
inBackground: loadInBackground,
replace: browserWindow.gBrowser.selectedTab.isEmpty,
triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal(),
});
};
})();
Alles anzeigen
2) Webseite Icon nach oben verschieben: Auf dem Screnshot kann man erkennen das das Webseiten-Icon (in diesem Fall von Firefox) zu weit unten ist. Wie kann ich das beheben?
Du könntest diese Werte anpassen: margin-top
.tab-icon-image {
margin-top: 0px !important;
margin-left: 0px !important;
}
.tab-text {
margin-top: -20px !important;
margin-left: 5px !important;
}
.tab-close-button {
margin-top: -7px !important;
margin-right: -15px !important;
height: 30px !important;
width: 30px !important;
}
Alles anzeigen
Aber auch sonst scheint offensichtlich einiges z.B margin, height optisch nicht ansprechend.
Ich würde die css löschen und neu aufbauen.
Hilfreicher wäre es generell schon
nur mal schnell probiert:
Diese Werbung schlägt erst mit Zeitverzögerung zu. Lass die Seite doch einfach mal etwas länger offen.
Habe in 'Meine Filter' lediglich dies eingetragen (alle anderen Einstellungen sind auf 'standart', Drittquellen sind zugelassen):
web.de##^script:has-text(Taboola)
Habe seit 20 min keine neue Werbung am Anfang der Site.
Scheint zu funktionieren. Danke.
Scheinbar verstehe ich dein Anliegen nicht richtig.
Bei einem Rechtsklick auf den Seiteninhalt eines geöffneten Tabs erscheint in der menugroup on top der Stern, über den du auch eventuell vorhandene Lesezeichen löschen/ändern kannst. Genügt das nicht?