In Nightly definitiv nicht mehr.
Du hast doch den Punkt Aktualisieren in Deinem Bild, das erscheint nur wenn es ein neues Update gibt.
In Nightly definitiv nicht mehr.
Du hast doch den Punkt Aktualisieren in Deinem Bild, das erscheint nur wenn es ein neues Update gibt.
Wenn es für ein Add-on ein Update gibt, erscheint eine Schaltfläche (Update) im neuen Add-ons-Manger im Unterbereich der drei Punkte.
Gruß
EDV-Oldi
Hallo Sören,
auf einem Smartphone ist es sehr umständlich Foren als gelesen zu markieren.
Hallo Sören,
hattest Du noch keine Zeit diese Funktion einzufügen?
Gruß EDV-Oldi
Morgen ist auch noch ein Tag.
Gruß
EDV-Oldi
Hallo milupo,
ich lösche in solchen Fällen den Ordner ( chrome_debugger_profile ) im Profil.
Dann hat bei mir immer wieder alles funktioniert
Gruß
EDV-Oldi
Zumindest aus der CSS-Datei heraus geht es, habe aber jetzt erst einmal nur für das Nightly getestet.
Ja in der CSS Datei hatte ich das so auch drin, ich möchte aber das selbe Icon auch im TAB eingeblendet haben und das geht scheinbar nur wenn das Icon direkt in den Eigenschaften eingetragen wird.
Gruß
EDV-Oldi
Das ist quasi das gleiche Icon nur umgewandelt in base64 somit bist du unabhängi von der Seite githubusercontent.com
Danke, habe mein Icon umgewandelt und genommen, ist auch kleiner.
Einen Link auf ein Icon auf meinem PC kann man nicht nehmen?
Zum Beispiel in dieser Form: url("file:///D:/Seafile/Mozilla/Icons/deaktivieren.png")
Gruß
EDV-Oldi
Ne, man sollte den Firefox neu laden.
So noch einmal meine Css Datei sieht so aus:
/*Name von bestimmten Lesezeichen wird ausgeblendet */
/*#PlacesToolbarItems label[class="toolbarbutton-text"][value="Editor"]{
display:none!important;}*/
/* diverse Lesezeicheen mit eigenem Favicon versehen */
.bookmark-item[label="Text Editor"] image {
width:0!important;
height:0!important;
padding: 0 0 16px 16px !important;
background:url("file:///D:/Seafile/Mozilla/Icons/notizen.png")!important;}
Und der Eintrag in den Eigenschaften von dem Lesezeichen so:
data:text/html,<title>Text Editor</title><button onClick="SaveTextArea()">Save</button> <script language="javascript" type="text/javascript"> function SaveTextArea() { window.location = "data:application/octet-stream," + escape(txtBody.value); } </script> <textarea id="txtBody" style="font-size: 2.5em; width: 100%; height: 100%; border: none; outline: none" autofocus> </textarea>
In der Lesezeichensymbolleiste wird mein Icon angezeigt, aber im Tab nicht
So jetzt erst einmal Abendessen.
Gruß
EDV-Oldi
Hallo Zitronella,
Name von Lesezeichen muss natürlich übereinstimmen mit dem Namen im Code von der userChrome.css
das war es.
Gruß
EDV-Oldi
Hier schon mit dem originalem Lesezeichen.
Aber bei mir nur wenn ich diesen Code benutze,
data:text/html,<link rel="shortcut icon" href="https://raw.githubusercontent.com/Microsoft/Windows-classic-samples/master/Samples/Win7Samples/winui/shell/appplatform/aerowizards/migratingtoaerowizardssdksample/wizard97/notepad.ico" type="image/x-icon"><title>Text Editor</title><button onClick="SaveTextArea()">Save</button> <script language="javascript" type="text/javascript"> function SaveTextArea() { window.location = "data:application/octet-stream," + escape(txtBody.value); } </script> <textarea id="txtBody" style="font-size: 2em; width: 100%; height: 100%; boarder: none; outline: none" autofocus> </textarea>
mit Deinem Code aber nicht.
data:text/html,<title>Text Editor</title><button onClick="SaveTextArea()">Save</button> <script language="javascript" type="text/javascript"> function SaveTextArea() { window.location = "data:application/octet-stream," + escape(txtBody.value); } </script> <textarea id="txtBody" style="font-size: 2.5em; width: 100%; height: 100%; border: none; outline: none" autofocus> </textarea>
Wie ich Dich verstanden habe hast Du dann über eine CSS Datei ein anderes Icon für den Tab eingebunden.
Oder ich habe ich komplett falsch verstanden.
Du hattest geschrieben das Du diesen Eintrag
data:text/html,<title>Text Editor</title><button onClick="SaveTextArea()">Save</button> <script language="javascript" type="text/javascript"> function SaveTextArea() { window.location = "data:application/octet-stream," + escape(txtBody.value); } </script> <textarea id="txtBody" style="font-size: 2.5em; width: 100%; height: 100%; border: none; outline: none" autofocus> </textarea>
benutzt.
Dann wird aber kein Icon in dem Tab angezeigt.
Das sich beiden Icons von Zitronella und von @ffokcuf unterscheiden möchte ich aber überall das selbe benutzen.
Wie bekommen ich jetzt in dem Tab ein Icon meiner Wahl angezeigt?
Gruß
EDV-Oldi
Hallo Andreas,
welches ich für mich aber entfernt habe, ich nutze weiterhin das von dir in einem CSS Code.
wie und wo hast Du dieses Icon eingetragen?
Gruß
EDV-Oldi
Also soeben getestet und funktioniert bei mir nicht.
Hast Du auch den geänderten Code von Sören genommen?
Hier mein Code
//Location Bar Enhancer5.1;Loading Bar0.3.0
//Geändert von Sören
(function(){
var cssStr = (function(){/*
#urlbar {
background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,0), rgba(255,255,255,0) 6px, rgba(255,255,255,1) 6px, rgba(255,255,255,1) 6px), linear-gradient(to right, rgba(255,255,255) 0%, rgba(69,69,69) 100%);
background-size:0 0;
background-repeat:repeat-x, no-repeat;
transition: background-size 350ms ease 0s !important;
}
#urlbar:not([style="background-size: 0% 100%;"]) {
animation: progress-bar-stripes 2s linear infinite;
}
@-moz-keyframes progress-bar-stripes {
from {
background-position: 0, 0;
}
to {
background-position: 51px 0, 0;
}
}
*/}).toString().replace(/^.+\s|.+$/,"");
var style = document.createProcessingInstruction("xml-stylesheet", "type=\"text/css\"" + " href=\"data:text/css;base64," + btoa(cssStr) + "\"");
var mainW = document.getElementById("main-window");
document.insertBefore(style, mainW);
function main(window) {
var {document, gBrowser} = window;
function $(id) { return document.getElementById(id) };
var urlbar = $("urlbar");
let pageProgress = 0;
let async = makeWindowHelpers(window).async;
var LoadingBar = {
listener: {
onChangeTab: function(e) {
urlbar.style.backgroundSize = '0% 100%';
pageProgress = 0;
},
onProgressChange: function(aBrowser,webProgress,request,curSelfProgress,maxSelfProgress,curTotalProgress,maxTotalProgress) {
if (gBrowser.contentDocument === aBrowser.contentDocument) {
var val = (curTotalProgress-1)/(maxTotalProgress-1);
pageProgress = val;
urlbar.style.backgroundSize = (100*val) + '% 100%';
if (val > 0.9)
async(function() {
if (pageProgress > 0.95)
urlbar.style.backgroundSize = '100% 100%';
}, 1000);
}
},
onStateChange: function() {
if (pageProgress > 0.95){
async(function() {
urlbar.style.backgroundSize = '0% 100%';
pageProgress = 0;
}, 1000);
}else{
urlbar.style.backgroundSize = '0% 100%';
}
}
}
};
gBrowser.tabContainer.addEventListener('TabSelect',LoadingBar.listener.onChangeTab,false);
gBrowser.addTabsProgressListener(LoadingBar.listener);
unload(function() {
gBrowser.tabContainer.removeEventListener('TabSelect',LoadingBar.listener.onChangeTab,false);
gBrowser.removeTabsProgressListener(LoadingBar.listener);
}, window);
}
watchWindows(main, "navigator:browser");
function runOnLoad(window, callback, winType) {
window.addEventListener("load", function() {
window.removeEventListener("load", arguments.callee, false);
if (window.document.documentElement.getAttribute("windowtype") == winType)
callback(window);
}, false);
}
function runOnWindows(callback, winType) {
function watcher(window) {
try {
callback(window);
}
catch(ex) {}
}
let browserWindows = Services.wm.getEnumerator(winType);
while (browserWindows.hasMoreElements()) {
let browserWindow = browserWindows.getNext();
if (browserWindow.document.readyState == "complete")
watcher(browserWindow);
else
runOnLoad(browserWindow, watcher, winType);
}
}
function watchWindows(callback, winType) {
function watcher(window) {
try {
callback(window);
}
catch(ex) {}
}
runOnWindows(callback, winType);
function windowWatcher(subject, topic) {
if (topic == "domwindowopened")
runOnLoad(subject, watcher, winType);
}
Services.ww.registerNotification(windowWatcher);
unload(function() { Services.ww.unregisterNotification(windowWatcher) });
}
function unload(callback, container) {
let unloaders = unload.unloaders;
if (unloaders == null)
unloaders = unload.unloaders = [];
if (callback == null) {
unloaders.slice().forEach(function(unloader) { unloader() });
unloaders.length = 0;
return null;
}
if (container != null) {
container.addEventListener("unload", removeUnloader, false);
let origCallback = callback;
callback = function() {
container.removeEventListener("unload", removeUnloader, false);
origCallback();
}
}
function unloader() {
try {
callback();
}
catch(ex) {}
}
unloaders.push(unloader);
function removeUnloader() {
let index = unloaders.indexOf(unloader);
if (index != -1)
unloaders.splice(index, 1);
}
return removeUnloader;
}
function makeWindowHelpers(window) {
let {clearTimeout, setTimeout} = window;
function async(callback, delay) {
delay = delay || 0;
let timer = setTimeout(function() {
stopTimer();
callback();
}, delay);
function stopTimer() {
if (timer == null)
return;
clearTimeout(timer);
timer = null;
}
}
return {
async: async,
};
}
})();
Alles anzeigen
Gruß
EDV-Oldi
Bei mir funktioniert das Loding Bar Script wieder. Zwar nicht so perfekt wie das alte Script aber besser als nichts .
Gruß EDV-Oldi vom Smartphone
Dieses Script funktioniert bei mir im Nightly
//// Translate DeepL ////
///https://github.com/ardiman/userChrome.js/tree/master/contexttranslate///
// ex ContextTranslate.uc.js///
(function () {
if (location != 'chrome://browser/content/browser.xhtml')
return;
let translate = function () {
let browserMM = gBrowser.selectedBrowser.messageManager;
browserMM.addMessageListener('getSelection', function listener(message) {
let t = (message.data !== '');
let e = (document.charset || document.characterSet);
if (t) {
openWebLinkIn('https://www.deepl.com/translator#en/de/' + encodeURIComponent(message.data), 'tab');
} else {
openWebLinkIn('https://www.deepl.com/translate?u=' + encodeURIComponent(gBrowser.currentURI.spec) + '&hl=de-DE&ie=' + e + '&sl=auto&tl=de-DE', 'tab');
};
browserMM.removeMessageListener('getSelection', listener, true);
});
browserMM.loadFrameScript('data:,sendAsyncMessage("getSelection", content.document.getSelection().toString())', true);
}
let menuitem = document.createXULElement('menuitem');
menuitem.id = 'context-googletranslate';
menuitem.setAttribute('label', 'Übersetzen');
menuitem.setAttribute('tooltiptext', 'Mit DeeplTranslate übersetzen');
menuitem.setAttribute('oncommand', '(' + translate.toString() + ')()');
menuitem.classList.add('menuitem-iconic');
//Wer kein Icon möchte kann die nächsten beiden Zeilen auskommentieren/löschen
//menuitem.style.listStyleImage = 'url("https://www.deepl.com/favicon.ico")';
menuitem.style.listStyleImage = ' url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACNwAAAjcB9wZEwgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAGZSURBVDiNjZKxaxRBFMZ/b2ZHbWITUxkRC4PnBUW0k1gkoFlMYmIR8R+w0UZBFAvtLAMS0ipC0guCd0GOa23EJGTPkBRCSCNHKiEgMzvPwmjCuiv3lft97zff7BuhQraWTouJLwE0mmf518a7spwUPxwZvlmLms8B4wWrLZhHPvuwUg44N9afGPcc4T5gK4pFgSUv/jHrre8HgKHJE4nzHWBgn/sZdBuYqQB1Q+5rbLR2DUBy1J89GIbEmNmQNW8DqxWAgcS5IQBT5vqYP3H1Gw9AHyosAKECVA4QuKfIPMhHVKygV4OVU8ByT4BDsiI6rWpusdbYUdgpBpLSMeGTRLYx2o5q9kT0ja2P3xU401ODQJz1neYdVRkT9C1gyob/Ngg/3VbifJf9TVg1L2Q43UC1eo3eb8KfB7O7uRf7T782Yo8hXBG4DFwvaRgFFoP4GTqt7u/bFuTOp5dU9BUw8u/BOhqy5fZ//4HvNL6ErHlNkSmFb4e9YM1WMV+5xjxrvM+P99VBngI/qnK96UI66OrpEhcnThatXx/tiqJJdDA6AAAAAElFTkSuQmCC")';
let refItem = document.getElementById('context-inspect');
refItem.parentNode.insertBefore(menuitem, refItem);
})();
Alles anzeigen
Das ist mein Code für die linke Spalte, teste bitte einmal.
/* FF - Add-ons-Manager linke Spalte */
#categories {
margin-top:-1px !important;
}
#categories > .category,
#preferencesButton,
#addonsButton,
#helpButton {
margin-left:1px!important;
}
#categories > .category:not([disabled]) {
border-radius:60px!important;
}
#preferencesButton,
#addonsButton,
#helpButton,
#category-availableUpdates {
background-color: silver !important;
margin-top:5px !important;
border-radius:60px !important;
}
#category-availableUpdates {
color:red !important;
}
#preferencesButton:hover,
#addonsButton:hover,
#helpButton:hover {
color:white !important;
background-color: gray !important;
margin-top:5px !important;
border-radius:60px !important;
}
#category-discover .category-icon {
list-style-image: url("../../../Icons/Add-ons-Web.png") !important;
-moz-image-region: auto !important;}
#category-discover[selected="true"] {
background-color: silver !important;
color: white !important; }
#category-extension .category-icon {
list-style-image: url("../../../Icons/addon_grün_32.png") !important;
-moz-image-region: auto !important;}
#category-extension[selected="true"] {
background-color: silver !important;
color: white !important;
}
#category-theme .category-icon {
list-style-image: url("../../../Icons/themen_36.png") !important;
-moz-image-region: auto !important;}
#category-theme[selected="true"] {
background-color: silver !important;
color: white !important; }
#category-plugin .category-icon {
list-style-image: url("../../../Icons/plugin.png") !important;
-moz-image-region: auto !important;}
#category-plugin[selected="true"] {
background-color: silver !important;
color: white !important; }
#category-dictionary .category-icon {
list-style-image: url("../../../Icons/wörterbücher_32.png") !important;
-moz-image-region: auto !important;}
#category-dictionary[selected="true"] {
background-color: silver !important;
color: white !important; }
#preferencesButton .sidebar-footer-icon {
list-style-image: url("../../../Icons/config.png") !important;
-moz-image-region: rect(0px 0px 0px 0px) !important; }
#addonsButton .sidebar-footer-icon {
list-style-image: url("../../../Icons/addons.png") !important;
-moz-image-region: rect(0px 16px 16px 0px) !important; }
#helpButton .sidebar-footer-icon {
list-style-image: url("../../../Icons/hilfe.png") !important;
-moz-image-region: rect(0px 16px 16px 0px) !important; }
Alles anzeigen
Der Code bewirkt hier nichts...
Kann sein das noch etwas fehlt, ich schaue nach dem essen noch einmal.
Danke, dann brauche ich aber noch die Icons.
Die musst Du doch irgendwo habe, hier funktioniert ja nur ein direkter Link zu den Icons.