Ein Rechtsklick auf einen beliebigen Button erzeugt ja immer:
Man müsste also wenn dann das kompl. Rechtsklick Popup deaktivieren.
Aber ob das wirklich Sinn macht
Das ist meine:
Nutze ich hier auch.
Siehe mein Movie in Beitrag Nr. 101
Ein Rechtsklick auf einen beliebigen Button erzeugt ja immer:
Man müsste also wenn dann das kompl. Rechtsklick Popup deaktivieren.
Aber ob das wirklich Sinn macht
Das ist meine:
Nutze ich hier auch.
Siehe mein Movie in Beitrag Nr. 101
Ich kann hier keine Probleme damit feststellen.
Ich auch nicht mehr.
Das Script, was ich im Einsatz hatte, war eines der ersten von hier, das ich dann nur mit neuem Icon und meinen Adressen abgeändert hatte. Leider habe ich es gestern gelöscht, weil dieser Fehler auftrat.
Nun habe ich im aktuellen Nightly mit diesem Script RE: Quicklink-Button getestet, funktioniert alles ohne Probleme, erstes Fenster und auch zweites Fenster.
Das Popup erscheint hier auch kurz, wäre schön, wenn es nicht mehr so ist.
Danke, für den Test, Andreas.
Ja.
Das habe ich aber auch bei einem anderen Skript mit Doppelfunktion Rechts- Linksklick.
Danke für die Info! Eigentlich ist die rechte Maustaste ja auch für diese Funktionalität vorgesehen und so gesehen ist diese Taste wohl auch nicht 1.Wahl, da dann eben auch die Systemfunktionen aus dem Kontextmenü fehlen. Na ja, man könnte auch wahlweise die ctrl/alt/shift-Taste beim Klicken nehmen oder die mittlere Maustaste.
Ist jetzt aber nicht so wichtig, finde ich...
Danke, für den Test, Andreas.
Gerne doch, wir helfen uns doch immer
Siehe mein Movie in Beitrag Nr. 101
Da war kein Code dabei.
Hast Du mit meinem code getestet?
Hast Du mit meinem code getestet?
Ich nutze das Skript aus Beitrag Nr. 96
Ich meinte den Code für meine Zusatzleiste....
den Code für meine Zusatzleiste....
Mein Skript ist fast identisch:
// Author @aborix
(function() {
if (location.href !== 'chrome://browser/content/browser.xhtml') return;
var tb = document.createXULElement('toolbar');
tb.id = 'new-toolbar';
tb.setAttribute('customizable', true);
tb.setAttribute('mode', 'icons');
tb.setAttribute("context","toolbar-context-menu");
var vbox = document.createXULElement('vbox');
document.getElementById('navigator-toolbox').parentNode.parentNode.insertBefore( vbox, null);
vbox.style.backgroundColor = '';
vbox.appendChild(tb);
CustomizableUI.registerArea('new-toolbar', {legacy: true});
CustomizableUI.registerToolbarNode(tb);
})();
Alles anzeigen
In einer Bugzilla-Diskussion (Link muss ich erst suchen) wurde z.B. das Aufrufen eines Lesezeichens als typische Anwendung für OpenTrustedLinkIn beschrieben.
Das interessiert mich. Falls du den Link noch findest, teile ihn bitte mit.
Jetzt müsste man noch herausfinden, wie man das kurzzeitige Aufpoppen des Kontextmenüs beim Rechtsklick verhindern kann.
Mit event.preventDefault().
Fällt dir evtl. dazu etwas ein?
BeitragRE: Quicklink-Button
[…]
Hallo @aborix .
Im Prinzip funtioniert es gut.
Nur das neue Fenster ist immer kleiner
camp-firefox.de/attachment/39572/
Ich kann es vergrößern, aber bei einem erneuten Rechtsklick ist es wieder kleiner.
Oder mache ich etwas falsch?2002Andreas27. November 2022 um 10:13
Öffne mal mit Strg+N ein neues Fenster. Ist es gleich groß?
Öffne mal mit Strg+N ein neues Fenster.
Das hat die ganz normale Größe dann.
Noch ein Test: Wie ist es, wenn du in die Browserkonsole eingibst:
OpenBrowserWindow()
Das interessiert mich. Falls du den Link noch findest, teile ihn bitte mit.
Mittlerweile glaube ich auch, dass du recht hast .
Mit Trusted-Links sind wohl in erster Linie Seitenaufrufe gemeint, welche (Firefox-)interne Seiten darstellen z.B. 'about:config' und diese sollen mit 'OpenTrustedLinkIn' geöffnet werden. Da wird dann das 'System Principal' eingestellt, bei allen anderen Inhalten wird dann wohl 'ContentPrincipal' oder 'NullPrincipal' eingestellt, welche über die Vorschaltfunktion 'openWebLinkIn' aufgerufen werden. Ich habe die Aussagen aus der Bugzilla-Diskussion wohl genau anders herum interpretiert, weil ich davon ausgegangen bin, dass mit 'Trusted' die Quelle des Aufrufs (eben die FirefoxUI) gemeint sind und nicht das Ziel (ein Webseite) ,
Sorry... .
Hier trotzdem noch der Bugzilla-Link:
Hier die Aussagen, auf die ich mich bezogen hatte:
Mit event.preventDefault().
Danke, funktioniert perfekt!
Guten Morgen auch.
Und mit dem Skript aus #96 klappt es nicht?
Und mit dem Skript aus #96 klappt es nicht?
Doch, das funktioniert hier einwandfrei.
Mich hat nur interessiert, warum es mit dem anderen Skript nicht so ist.
event.preventDefault()
Ist das so richtig eingetragen?
Mich hat nur interessiert, warum es mit dem anderen Skript nicht so ist.
Welches Skript nochmal genau?
Ist das so richtig eingetragen?
Das funktioniert zwar auch, aber ich meinte nach diesen Zeilen:
Welches Skript nochmal genau?
Dieses hier:
Das funktioniert zwar auch, aber ich meinte nach diesen Zeilen:
Ich hatte mich oben im Beitrag vertan, und meinte diesen neuen Eintrag:
event.preventDefault()
Dieses hier:
aborix26. November 2022 um 23:29
Da wird das neue Fenster nicht mit
OpenBrowserWindow()
sondern mit
openDialog(AppConstants.BROWSER_CHROME_URL)
geöffnet.
Wie ist es, wenn du diese Anweisung in die Browserkonsole eingibst?
Ich hatte mich oben im Beitrag vertan, und meinte diesen neuen Eintrag:
event.preventDefault()
Den meinte ich ohnehin auch.
wenn du diese Anweisung in die Browserkonsole eingibst?
Dann erscheint wieder dieses kleinere Fenster.
Danke für die Erklärung
Den meinte ich ohnehin auch.
Alles klar, danke.
Dann ändere ich das hier mal.
Ich habe mal alle Änderungen an meinem Skript aus #96 , welche hier im weiteren Verlauf diskutiert wurden, in ein sauberes Skript mit eigenem Icon übertragen. Außerdem wird jetzt ein Array verwendet und man muss die Links nur einmal dort eintragen.
Der notwendige 'Timeout' von 500ms in Zeile 50 beim Öffnen eines neuen Fensters ist unabhängig von der Zahl der zu öffnenden Tabs (na immerhin) und bei Problemen diesen Wert schrittweise leicht erhöhen. Einen Ersatz dafür habe ich leider nicht gefunden.
(function() {
if (!window.gBrowser){
return;
}
const quickLinks =
[
'https://www.tagesschau.de/',
'https://www.zdf.de/',
'https://www.br24.de/',
'https://www.spiegel.de/',
];
try {
CustomizableUI.createWidget({
id: 'link-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
var props = {
id: 'link-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: 'true',
label: 'Quicklink',
accesskey: '',
tooltiptext: 'Quicklink:\nForum - camp-firefox.de',
style: 'list-style-image: url(data:image/png;base64,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)',
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
} catch(e) { };
document.getElementById('link-button').addEventListener( 'click', function(event) {
let linkCaller=null;
let timeout=0;
if (event.button == 0) {
linkCaller = event.target;
}
else if (event.button == 2) {
event.preventDefault();
linkCaller = OpenBrowserWindow();
timeout=500;
}
else
return;
setTimeout(function() {
quickLinks.forEach((weblink,nIndex) => {
if( nIndex == 0 && event.button == 2 )
{
linkCaller.ownerGlobal.openWebLinkIn(weblink,"current");
}
else
{
linkCaller.ownerGlobal.openWebLinkIn(weblink,"tab");
}
});
}, timeout);
}, true);
}) ();
Alles anzeigen