Beiträge von aborix
-
-
-
Das Script reagiert worauf? Auf Strg+0? Müsste demnach auf jeder gewünschten Seite ausgeführt werden?
Ja, genau.
Wäre es dann nicht sinniger, einen allgemeinen Style in Stylus zu erstellen, der ohne Tastataur greift?
Der den Default Zoom auf 120 % setzt? Oder soll er etwas anderes leisten?
-
-
Das Skript aus #29 funktioniert bei mir im neuesten Nightly einwandfrei.
-
Abendstern, meine Liebe, ich empfehle dir das Skript von Aris aus dem vorhergehenden Beitrag, es funktioniert bestens.
-
(!window.gBrowser)
Nur nebenbei: Schreibst Du inzwischen immer das Zitierte, weil es kürzer ist oder gibt das noch mehr (positive) Nebenwirkungen?
Mit
location != AppConstants.BROWSER_CHROME_URL
kommt bei manchen Fenstern trotzdem eine Fehlermeldung, weil dort das Objekt AppConstants nicht existiert; z.B. bei Alert-Fenstern und der Browserkonsole.
Man müsste
!window.AppConstants || location != AppConstants.BROWSER_CHROME_URL
abfragen und da ist das andere kürzer und einfacher.
-
Ja, das war so beabsichtigt.
Jetzt wird die Sidebar wieder geschlossen. Der Wechsel von Chronik zu Lesezeichen und umgekehrt kann übrigens direkt erfolgen, die Sidebar muss dazwischen nicht geschlossen werden.
JavaScript
Alles anzeigen(function() { if (!window.gBrowser) return; let historyButton = document.getElementById('history-panelmenu'); let sidebarButton = document.getElementById('sidebar-button'); sidebarButton.removeAttribute('checked'); setTimeout(() => SidebarUI.hide(), 100); function addListener(button, sidebarId) { button.addEventListener('click', event => { if (event.button != 0) return; event.preventDefault(); if (SidebarUI.currentID == sidebarId) { SidebarUI.hide(); } else { SidebarUI.show(sidebarId); sidebarButton.removeAttribute('checked'); } }); }; addListener(historyButton, 'viewHistorySidebar'); addListener(sidebarButton, 'viewBookmarksSidebar'); })();
-
Ich kenne die Buttons, es gibt aber auch noch den Lesezeichen-Menü-Button und mit dem Sidebars-Button kann man sowohl Lesezeichen als auch Chronik anzeigen lassen; es war für mich nicht eindeutig.
Im folgenden Skript öffnet der Chronik-Button die Chronik und der Sidebars-Button die Lesezeichen in der Sidebar. Im auskommentierten Teil öffnet der Lesezeichen-Menü-Button die Lesezeichen in der Sidebar, das ist vielleicht auch für jemanden interessant.
JavaScript
Alles anzeigen(function() { if (!window.gBrowser) return; // Chronik-Button document.getElementById('history-panelmenu').addEventListener('click', event => { if (event.button != 0) return; event.preventDefault(); SidebarUI.show('viewHistorySidebar'); }); /* // Lesezeichen-Menü-Button document.getElementById('bookmarks-menu-button').addEventListener('click', event => { if (event.button != 0) return; SidebarUI.show('viewBookmarksSidebar'); }); document.getElementById('BMB_bookmarksPopup').style.display = 'none'; */ // Sidebars-Button document.getElementById('sidebar-button').addEventListener('click', event => { if (event.button != 0) return; event.preventDefault(); SidebarUI.show('viewBookmarksSidebar'); }); })();
-
Kann man die Buttons so gestalten, dass die Lesezeichen und Chronik direkt in der Sidebar angezeigt werden?
Ja, mit einem Skript. Zeige auf einem Screenshot, welche Buttons du meinst. Geht es um Fx 68esr ?
-
So funktioniert es:
JavaScript
Alles anzeigen(function() { if (location != AppConstants.BROWSER_CHROME_URL) return; PlacesUIUtils.openNodeWithEvent = function PUIU_openNodeWithEvent(aNode, aEvent) { let window = aEvent.target.ownerGlobal; let browserWindow = (window && window.document.documentElement.getAttribute('windowtype') == 'navigator:browser') ? window : BrowserWindowTracker.getTopWindow(); let where = window.whereToOpenLink(aEvent, false, true); if (this.loadBookmarksInTabs) { if (where == 'current' && !aNode.uri.startsWith('javascript:')) { where = 'tab'; } if (where == 'tab' && browserWindow.gBrowser.selectedTab.isEmpty) { where = 'current'; } } this._openNodeIn(aNode, where, window); } let onPopupshowing = function() { let historyMenu = document.getElementById('history-menu'); if (!historyMenu._placesView) { new HistoryMenu(event); historyMenu._placesView._onCommand = function HM__onCommand(aEvent) { let placesNode = aEvent.target._placesNode; if (placesNode) { PlacesUIUtils.openNodeWithEvent(placesNode, aEvent); }; }; }; }; let historyPopup = document.getElementById('goPopup'); historyPopup.setAttribute('onpopupshowing', '(' + onPopupshowing.toString() + ')()'); })();
In Zeile 6 fehlte am Anfang PlacesUIUtils.openNodeWithEvent =
Ohne dem funktioniert es auch in Fx 69 nicht. Sonst habe ich nichts verändert.
-
-
Eine Frage noch was ist denn besser, ne Funktion über ein Addon oder über ein Script nachzurüsten
Wenn man nicht gerade Spaß am Basteln hat, sind Erweiterungen eindeutig vorzuziehen. Sie haben weitaus weniger Berechtigungen als Skripte und können daher bei unerwünschten Wirkungen viel weniger Schaden anrichten. Ich schätze auch vorsichtig, dass Erweiterungen von ihren Entwicklern i.d.R. zumindest nicht schlechter gewartet werden als Skripte, d.h. schnell an neue Firefox-Versionen angepasst werden. Außerdem werden sie von AMO grob überprüft.
-
-
Das Abonnieren und Abonnement-Beenden geschieht mit Klick auf das Fahne-Symbol oben rechts
Das Symbol ist allerdings nur in der Desktop-Ansicht zu sehen. Gibt es in der Mobil-Ansicht einen ähnlich einfachen Weg?
-
Die Lesezeichen des früheren Forums heissen jetzt "Abonnierte Themen". Man kann sie ganz oben über Forum → Abonnierte Themen aufrufen. Das Abonnieren und Abonnement-Beenden geschieht mit Klick auf das Fahne-Symbol oben rechts, siehe dazu auch diese beiden Beiträge:
Großer camp-firefox.de Relaunch #79
Benachrichtung löschen, Abo eines Beitrages deaktivieren, wie? #2
-
Gern geschehen.
Der Cursor ist nur bei der Neuer-Tab-Seite und bei einer leeren Seite in der Suchleiste. Es ist auch anderes möglich.
-
Teste bitte:
JavaScript
Alles anzeigen(function() { if (!window.BrowserSearch) return; let tId; function onTabEvent() { clearTimeout(tId); tId = setTimeout(function() { if (isBlankPageURL(gBrowser.selectedBrowser.currentURI.spec)) { BrowserSearch.searchBar.select(); } }, 500); }; onTabEvent(); gBrowser.tabContainer.addEventListener('TabSelect', onTabEvent); })();
-
-
Hallo,
ich vermute, Erweiterungen haben nicht die Berechtigung, Leisten zu manipulieren. Aber mit einem userChromeJS-Skript lässt sich das machen.
Für einen Test gib den folgenden Code in die Browserkonsole ein.
Am Anfang des Codes trage bei thresholdWidth und -Height die Grenzwerte für die Fenstergröße ein. Wird einer der Werte unterschritten, werden die Leisten ausgeblendet.
JavaScript
Alles anzeigen(function() { if (!window.gBrowser) return; const thresholdWidth = 350; const thresholdHeight = 250; let navToolbox = document.getElementById('navigator-toolbox'); let showBars = true; window.addEventListener('resize', function() { if (showBars) { if (outerHeight < thresholdHeight || outerWidth < thresholdWidth) { navToolbox.style.display = 'none'; showBars = false; }; } else { if (outerHeight > thresholdHeight && outerWidth > thresholdWidth) { navToolbox.style.display = ''; showBars = true; }; }; }); })();