Ja das war nur ein Schreibfehler von mir. Die Dateien sind ja die aus der Zip Datei, keine Änderung an den Dateien vorgenommen, also alles Original. Ich kann mir das leider nicht erklären warum die Scripte bei mir nicht gehen. Wenn sie bei allen anderen gehen. Hab alles so gemacht wie es auf Seite 1 Angezeigt und von Endor Bildlich dargestellt wurde. CSS Nr2 von Seite 1 benutzt, einzig Breite auf 60px geändert sonst nichts. Und Script 3 Original von Seite 1. Keine Anpassung oder sonstiges im Script gemacht.
Beiträge von stromike
-
-
Geht leider auch nicht weder das Script noch der Button wird angezeigt. Ich glaub ich gebs auf. Der mag mich einfach nicht
-
Hab ich extra selbst nachgeschaut gerade über die config-Prefs.js und über about:config ist genaus so eingestellt mit false
-
HAb ich dir doch hier schwarz auf weiß in einem Bild gezeigt. RE: Mehrzeilige Tableiste für aktuelle FireFox-Versionen (71+). Ok den neuen Code probiere ich gleich mal aus.
So neuer Code geht also auch nicht. Auch im Portablen nicht. Das kann doch nicht sein.
-
Hey BrokenHeart, hab jetzt doch tatsächlich mein System auf 1909 upgedatet. Nur um zu sehen ob es am System liegt und ich muss euch leider entäuschen, Das Script funktioniert bei mir nicht. Aber anscheinend geht gar kein Script, außer den CSS Dateien. Denn
Code
Alles anzeigen// aboutconfig-button.uc.js (function() { if (location != 'chrome://browser/content/browser.xhtml') return; try { CustomizableUI.createWidget({ id: 'aboutconfig-ToolBarButton', 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: 'aboutconfig-ToolBarButton', class: 'toolbarbutton-1 chromeclass-toolbar-additional', label: 'About:Config', tooltiptext: 'About:Config', style: 'list-style-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACkUlEQVQ4 ja2SX0hTcRTHv27euz/qLvfqdtO8lRmEoLm2RTTUmWHFtlgYIlFPleNuI5cggYTJpDGIVnP+CaVQ3FtCkY QvPfYSprewxCZCUYwgUKIeHIidHvSKiPrUef2ez/ec3/l9gf9VoijmhcPhq7FYbKizszNSUVFRvFOfATgg sqgEUA5AtynYbDb78PDwfCaToaWlJUokEk8A6LfxZfHThsG3rcKk38reA3Bwq8hJktQSiUSmstksLS8vr9 XX11/cokv3bRih0fI1Shyi+euGNMfAAQCMw+E4KoriSQD5jY2NiUwmQ0REsiz3qnDMhhEaMBNN24nuFtH4 GShGwA4AOo/Hc01RFOrq6nqZTCa/K4pCCwtpejqammIY5kTMiiHqK1yjaTtRTwk9d2sWLDoEAZgAACzLVv b393+amZmh2dlZGhsbo0g0Sg/jiWz0WO7HvwlhVYVfuDWLJgZBAGYAOer7dDqd7qzX632dSqXoZlvbvBzu +BFv2E+rj0ykwuPnMcczCAEQdvohlud5r8fjeceybDOg9QdrKn/+8YMouo8mzmmpLI95ACB/jzSgiGGY4w DMDoejnYio54p35VldLk1UW+mWif/WUlratJcBALBOpzNAROSX5UkA0RqN/utEtZXSPh/Fef53myR1ANDu BBe6XK4gEVEgEHgFoA5AIQe0tHPc5w+1tZT2+aiX4+h2SUkfAIMKakRRbKCNktcnuwGwG7oxH2jqtli+vK mqotaCgulujlu5xPNu1UAbCoVGVQNBEG4A4LZtZ+CBy3fM5sUBSfrl57j3xRtBAgCjy+UaTCaTcxaLpQfA 4V3uUyBotc2n9PrHPHABgHHTHUA1ACeAI7sdSB2G9RwYAeT8A0L0/bjRXZQXAAAAAElFTkSuQmCC)', onclick: 'if (event.button == 0) { \ openTrustedLinkIn("about:config", "tab");\ }; ' }; for (var p in props) toolbaritem.setAttribute(p, props[p]); return toolbaritem; } }); } catch(e) { }; })();
dieser Code den du da mal hier angegeben hattest wird mir nicht angezeigt in Anpassen. Weder im normalen noch in der Portablen version die ja komplett neu und ganz woanders liegt und auch dort ist der Button nicht zu finden. Woran könnte das denn jetzt liegen. Es sind wirklich alle 4 Dateien/Ordner da wo sie hingehören. Und diese Funktionen/Scripte sind doch ausschließlich für Firefox und haben normalerweise absolut gar nichts mit dem System zu tun. Bin jetzt selbst total überfragt und kann mir das nicht erklären.
-
-
Also mit dem Code von 2002Andreas aus Seite 1 gehen die Tabs runter allerdings legen sie sich über die Favoriten. D.h es müsste noch weiter runter welcher wert muss ich ändern?
-
Also das mit dem Portablen funzt teils teils sag ich jetzt mal. Die Tabs gehen nicht unter die Favs obwohl so eingestellt. Das scrollen funzt nur wenn toolkit.tabbox.switchByScrolling auf true gestellt wird. Dann ist es aber auch merkwürdig. Er nimmt zuerst die Tabreihen und geht dann die Tabs durch, sieht komisch aus, aber bei den breiten Tabs wohl so üblich. Werds mal auf meine 60px einstellen und sehen wie es dann aussieht.
Der Knaller wenn ich das aus dem Script raus lösche, geht es trotzdem. Die haben also 0 Funktion.
var bTabsDown = false; // [true]: Tab-Leiste unter allen anderen Toolbars, [false]: Tab-Leiste oben
var bTabWheel = false; // [true]: Tab-Wheel-Selection einschalten, [false]: Tab-Wheel-Selection ausschalten
var bPageScroll = false; // [true]: seitenweises Scrollen einschalten, [false]: zeilenweises Scrollen einschalten
Dir Funktion Tableiste unter die anderen geht eh nicht egal was macn macht true oder false. Genauso wie die 2te und auch 3te die haben 0 Funktion. Wenn ich toolkit.tabbox.switchByScrolling auf true habe sind die total unnötig. Mach ich das auf false geht kein scrollen auch nicht mit dem Script.
-
Also Momentan sieht es so aus bei mir. HAb den FF73.01 mal auf andere Partition installiert. Vorher alles gelöscht klar. Dann nur die 2 about:config Einträge toolkit.tabbox.switchByScrolling und toolkit.legacyUserProfileCustomizations.stylesheets auf true gestellt. Dann die CSS Nr2 von der ersten Seite in den Chrome Ordner kopiert. Ergebnis: Browser maximiert sich Tabs sind in meiner Breite 60px und mehrreihig. Nur das Verschieben geht nur nach oben an den Anfang aber damit kann ich leben. Da ich momentan keine der uc.js Scripte brauche ist das jetzt ok so für mich. Einzig die Tabs nach unten bringen wäre noch ganz gut über css. Die 4 Dateien die man da ins Verzeichnis und Chrome Ordner kopieren kann hab ich nicht gemacht. Weil ich denke das da der Hase im Pfeffer liegt. Das mit dem Portablen werde ich aber mal testen und berichten.
-
Gedownloaded. Vorhandene Versionen gelöscht neue rein kopiert, leider das selbe in Grün. Schade. Naja 1 klick mehr für mich aber nervt dann irgendwann mal. Vielleicht fällt ja irgend jemandem was ein dazu. Trotzdem Danke
-
Wie gesagt alles gemacht wie es hier auf der ersten Seite steht. Alles da wo es hin gehört. Glaubs mir einfach ist so.
Aber jetzt was Lustiges für euch.
about:config: ---> toolkit.tabbox.switchByScrolling auf true und ich kann scrollen. Nur das Problem mit den Tabs verschieben geht nur in die erste Reihe. Und das maximieren ist leider auch nicht gelöst.
Das habe ich hier nirgends gefunden. Stand jetzt bei der Version von TabWheelScroll - FF 71+ das hier mal angeboten wurde von pro100user, genau das hatte ich vorher benutzt diese Bindings.xml das ging dann aber auf einmal nicht mehr. Jetzt gehts ohne die nur mit der about:config Einstellung
-
Hm irgendwas stimmt bei den Scripten nicht. Alles gelöscht. Sämtliche Profile Dateien und in der Registry. Komplett.
Neue Version von FF73.01 gedownloaded und installiert. Firefox geöffnet und geht maximiert und das Scrollen horizontal. FF zu gemacht, alle Script Dateien da hin kopiert wo sie hingehören. FF aufgemacht und er geht nicht maximiert auf. Das sag mir doch das etwas nicht mit den Scripten stimmt. Kann doch jetzt nicht wahr sein. Hab alles so gemacht wie es hier im Forum steht, bin ja nun auch nicht zu blöde das nicht zu können, mach schon seit 20 Jahren an PC rum aber das hatte ich jetzt noch nie. Und es ist nicht das erste mal das ich Scripte (css und uc.js) beim FF nutze. Das macht mich ja selber verrückt das es bei euch geht und bei mir nicht. Ich will hier keinen schlecht reden, ganz im Gegenteil ich finde es klasse was ihr hier für Arbeit leistet für uns da muss man euch echt loben dafür, alle miteinander die da so fleißig helfen. Also sorry falls ich hier jemand Angegriffen haben sollte das war so nicht gemeint. Es kann ja gerne mal jemand von den Jungs gerne mal bei mir per Teamviewer schauen ob alles stimmt, vielleicht übersehe ich einfach irgendwas total läppisches, keine Ahnung.
p.s. Außer das es Version 1809 ist ist alles auf dem neuesten Stand, garantiert. Ich hab die 19ner Versionen ausgelassen weil die vielen Probleme gemacht haben und will bei der 20H1 wieder aktuell werden die ja jetzt bald kommt^^
-
Ich benutze alle anderen Browser ebenfalls. Den FF eigentlich also Info Browser bei dem ich Standardseiten aufhabe wo ich viel Lese. Die anderen Browser sind für andere Funktionen da. Aber jetzt kommt der Knaller, das hab ich schon bei dem letzten Update gehabt. Sobald neue Version installiert wird, ist es nicht mehr möglich den FF als maximiertes Fenster zu öffnen. Ist grade hier von FF73 auf FF73.01 wieder so. Und als Gegenprobe hab ich gleich mal auf dem Laptop das selbe gemacht und auch da das selbe kein maximieren mehr möglich. Die machen mehr kaputt als sie ganz machen. Und mit dieser ganzen scripterei ist man wohl nicht so ganz auf der Sicheren Seite, wollen sie doch angeblich der sicherste Browser sein. Na wenn ich mir Grundfunktionen die ja bei den anderen gehen, hier rein coden muss, da hört der Spaß dann irgendwo auf.
-
CSS
Alles anzeigen/*AGENT_SHEET*/ @charset "UTF-8"; @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul); #tabbrowser-tabs .tabbrowser-arrowscrollbox { -moz-binding: url("chrome://global/content/bindings/scrollbox.xml#arrowscrollbox") !important; } /* ------------------------------------------------*/ /* Mehrzeilige Tabreihen mit optischen Anpassungen */ /* ------------------------------------------------*/ /* Tab-Höhe */ .tabbrowser-tab { min-height: 28px !important; max-height: 28px !important; vertical-align: bottom !important; margin-top: 1px !important; margin-bottom: 1px !important; } /* Feste Breite des einzelnem Tabs */ .tabbrowser-tab:not([pinned]) { min-width: 60px !important; } /* Platz für Scrollbar schaffen */ .tabbrowser-tabs { margin-right: -41px !important; } tabs > arrowscrollbox { display: block; } scrollbox[part][orient="horizontal"] { display: flex; flex-wrap: wrap; overflow: visible !important; overflow-x: hidden !important; overflow-y: auto !important; min-height: 30px !important; /* Tab-Höhe(28px) + 2px */ max-height: calc( 3 * 30px ) !important; /* Anzahl der Tabreihen * Minimal- Höhe */ -moz-window-dragging: no-drag !important; } /* Buttons/Zwischenräume Ausblenden */ hbox.titlebar-spacer, #alltabs-button,tabs tab:not([fadein]), [class="scrollbutton-up"], [class="scrollbutton-up"] + spacer, scrollbox[part][orient="horizontal"] + spacer, [class="scrollbutton-down"] { display: none; } #TabsToolbar > .titlebar-buttonbox-container { display: none !important; } /* -----------------------------*/ /* Tab: Optische Anpassungen */ /* -----------------------------*/ #tabbrowser-tabs :not([fokus]){ opacity: 1!important; } #TabsToolbar:not(:-moz-lwtheme){ color: black !important; } /* Tab-Separatoren entfernen */ .tabbrowser-tab::after, .tabbrowser-tab::before { opacity: 0 !important; border-image: unset !important; border-image-slice: none !important; width: 2 !important; } /* Schriftart/Schriftgröße ändern */ .tabbrowser-tab .tab-label { text-shadow: 1px 1px 0px #000000 !important; font-weight: 500 !important; font-size: 12px !important; font-family: "Arial" !important; color: white !important; } .tabbrowser-tab .tab-label:not(:-moz-lwtheme) { text-shadow: none !important; color: black !important; } .tabbrowser-tab .tab-label[selected="true"] { text-shadow: 1px 1px 0px #000000 !important; color: white !important; font-weight: 500 !important; font-size: 12px !important; font-family: "Arial" !important; } /* Tab-Line entfernen */ #TabsToolbar .tabbrowser-tab .tab-line { display: none !important; } /* Tab-Höhe */ .tabbrowser-tab { min-height: 28px !important; max-height: 28px !important; vertical-align: bottom !important; margin-top: 1px !important; margin-bottom: 1px !important; } /* Tab-Rahmen entfernen */ #TabsToolbar .tabbrowser-tab[visuallyselected="true"], #TabsToolbar .tabbrowser-tab, #TabsToolbar .tabbrowser-tab .tab-background { background: unset !important; border-top: unset !important; outline: none !important; } /* Tab-Schließen-Button entfernen *//* .tabbrowser-tab .tab-close-button { visibility: collapse !important; } */ /* Tab-Icon ausrichten *//* .tab-throbber:not([pinned]), .tab-sharing-icon-overlay:not([pinned]), .tab-icon-pending:not([pinned]), .tab-icon-image:not([pinned]) { margin-top: -1px !important; } */ /*------------------*/ /* Tab-Hintergrund */ /*------------------*/ /*--- selektiert ---*/ .tab-background[selected=true]:not(:-moz-lwtheme) > spacer { background-image: linear-gradient( rgba(103,171,224,1), rgba(10,58,95,1) ), none !important; /* blau */ /*background-image: linear-gradient( rgba(230,175,175,1), rgba(84,25,25,1) ), none !important;*/ /* rot */ filter: drop-shadow(4px 3px 2px rgba(0,0,0,0.33)) drop-shadow(-4px 3px 2px rgba(0,0,0,0.33)) !important; } .tab-background[selected=true]:-moz-lwtheme > spacer { background-image: linear-gradient( rgba(103,171,224,1), rgba(10,58,95,1) ), none !important; filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.33)) drop-shadow(-2px 3px 2px rgba(0,0,0,0.33)) !important; } /*--- hover(nicht selektiert) ---*/ .tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected=true]):not(:- moz-lwtheme) > spacer { background-image: linear-gradient( rgba(255,255,255,1), rgba(115,115,115,1) ), none !important; filter: brightness(130%) contrast(95%) drop-shadow(1px 1px 1px rgba(0,0,0,0.33)) drop-shadow(-1px 1px 1px rgba(0,0,0,0.33)) !important; } .tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected=true]):-moz- lwtheme > spacer { background-image: linear-gradient( rgba(225,225,225,0.66), rgba(100,125,145,0.66) ), none !important; box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75); } /*--- nicht selektiert ---*/ .tab-background:not([selected=true]):not(:-moz-lwtheme) > spacer { background-image: linear-gradient( rgba(255,255,255,1), rgba(125,125,125,1) ), none !important; filter: brightness(115%) contrast(90%) drop-shadow(1px 1px 1px rgba(0,0,0,0.33)) drop-shadow(-1px 1px 1px rgba(0,0,0,0.33)) !important; } .tab-background:not([selected=true]):-moz-lwtheme > spacer { background-image: linear-gradient( rgba(255,255,255,0.33), rgba(110,110,110,0.33) ), none !important; box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75); } /*--- Multi-selektiert ---*/ .tab-background[multiselected=true]:not([selected=true]) > spacer { background-image: linear-gradient( rgba(225,225,225,1), rgba(50,98,135,1) ), none !important; } .tabbrowser-tab:hover > .tab-stack > .tab-background[multiselected= true]:not([selected=true]) > spacer { background-image: linear-gradient( rgba(225,225,225,1), rgba(50,98,135,1) ), none !important; }
CSS
Alles anzeigen// ==UserScript== // @name zzzz-MultiRowTab_LiteforFx48.uc.js // @namespace http://space.geocities.yahoo.co.jp/gl/alice0775 // @description Experimentelle CSS Version für Mehrzeilige Tableiste // @include main // @compatibility Firefox 72 // @author Alice0775 // @version 2016/08/05 00:00 Firefox 48 // @version 2016/05/01 00:01 hide favicon if busy // @version 2016/03/09 00:01 Bug 1222490 - Actually remove panorama for Fx45+ // @version 2016/02/09 00:01 workaround css for lwt // @version 2016/02/09 00:00 // ==/UserScript== "use strict"; MultiRowTabLiteforFx(); function MultiRowTabLiteforFx() { var bTabsDown = true; // [true]: Tab-Leiste unter allen anderen Toolbars, [false]: Tab-Leiste oben var bTabWheel = true; // [true]: Tab-Wheel-Selection einschalten, [false]: Tab-Wheel-Selection ausschalten var bPageScroll = true; // [true]: seitenweises Scrollen einschalten, [false]: zeilenweises Scrollen einschalten var nTabLines = 3; // Anzahl der sichtbaren Tab-Zeilen, darüber hinaus wird gescrollt -> !! Wert aus 'userChome.css' übernehmen!! var css =` tabs tab { border-left: solid 1px hsla(0,0%,0%,0) !important; border-right: solid 1px hsla(0,0%,0%,0) !important; } tabs tab:after,tabs tab:before { display: none !important; } `; var sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci. nsIStyleSheetService); var uri = makeURI('data:text/css;charset=UTF=8,' + encodeURIComponent(css)); sss.loadAndRegisterSheet(uri, sss.AUTHOR_SHEET); if(bTabsDown){ var tabbar = document.getElementById("TabsToolbar"); tabbar.parentNode.parentNode.appendChild(tabbar); var css =` #main-window[sizemode="normal"] #titlebar { margin-bottom: -6px;} `; var sss = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci. nsIStyleSheetService); var uri = makeURI('data:text/css;charset=UTF=8,' + encodeURIComponent(css)); sss.loadAndRegisterSheet(uri, sss.AUTHOR_SHEET); } gBrowser.tabContainer.clearDropIndicator = function() { var tabs = this.allTabs; for (let i = 0, len = tabs.length; i < len; i++) { tabs[i].style.removeProperty("border-left-color"); tabs[i].style.removeProperty("border-right-color"); } } gBrowser.tabContainer.addEventListener("dragleave", function(event) { this. clearDropIndicator(event); }, true); //-------------------------------------------------------------------------------- ---------- // ... // DomContentLoaded-Event: // ... document.addEventListener("DOMContentLoaded", function(event) { gBrowser.selectedTab.scrollIntoView(); }); // ... // TabSelect-Event: // ... gBrowser.tabContainer.addEventListener("TabSelect", function(event) { var bScroll = false; var bScrollTop = true; var scrollBoxY1 = event.target.parentElement.scrollbox.screenY; var scrollBoxHeight = event.target.parentElement.scrollbox.clientHeight; var scrollBoxY2 = scrollBoxY1+scrollBoxHeight; var TabSelY1 = event.target.screenY; var TabSelHeight = event.target.clientHeight; var TabSelY2 = TabSelY1+TabSelHeight; if( TabSelY2 > scrollBoxY2 ) { bScroll = true; bScrollTop = false; } if( TabSelY1 < scrollBoxY1 ) { bScroll = true; bScrollTop = true; } if( bScroll ) { setTimeout(function() { event.target.scrollIntoView(bScrollTop); }, 0); } }, true); // ... // Wheel-Event: // ... gBrowser.tabContainer.addEventListener("wheel", function(event) { event.preventDefault(); event.stopPropagation(); var scrollUp = true; var wrap = false; var scrollBy = 0; var scrollBoxY1 = gBrowser.tabContainer._animateElement.scrollbox. scrollTop; var scrollHeight; let nTabLineHeight = gBrowser.tabContainer._animateElement.scrollbox. clientHeight/nTabLines ; if(bPageScroll) {scrollHeight = gBrowser.tabContainer._animateElement.scrollbox. clientHeight;} else {scrollHeight = nTabLineHeight;} let dir = (scrollUp ? 1 : -1) * Math.sign(event.deltaY); var bLastScrollLine = false; if( gBrowser.tabContainer._animateElement.scrollbox.scrollTopMax == gBrowser.tabContainer._animateElement.scrollbox.scrollTop) { bLastScrollLine = true; } if( !bTabWheel || event.ctrlKey || event.originalTarget.localName == "thumb" || event.originalTarget.localName == "slider" || event. originalTarget.localName == "scrollbarbutton" ) { setTimeout(function() { var scrollBoxMod = scrollBoxY1%scrollHeight; if( scrollBoxMod > 0 ) { if( dir == -1 ) { scrollBoxY1 -= scrollBoxMod; if(scrollBoxMod < nTabLineHeight && !bLastScrollLine) { scrollBoxY1 -= scrollHeight; } } else { scrollBoxY1 += (scrollHeight-(scrollBoxMod)); if(scrollHeight-(scrollBoxMod) < nTabLineHeight) { scrollBoxY1 += scrollHeight; } } } else { if( dir == -1 ) { scrollBoxY1 -= scrollHeight; } else { scrollBoxY1 += scrollHeight; } } gBrowser.tabContainer._animateElement.scrollbox.scrollTo({ top: scrollBoxY1, left: 0, behavior: 'auto'}); }, 20); } if( bTabWheel && !event.ctrlKey ) { setTimeout(function() { if( event.originalTarget.localName != "slider" && event.originalTarget.localName != "thumb" && event.originalTarget.localName != "scrollbarbutton" ) { //let dir = (scrollUp ? 1 : -1) * Math.sign(event.deltaY); gBrowser.tabContainer.advanceSelectedTab(dir, wrap); if( (gBrowser.tabContainer._firstTab == gBrowser.selectedTab) || (gBrowser.tabContainer._lastTab == gBrowser.selectedTab) ) { gBrowser.selectedTab.scrollIntoView(); } } }, 50); } }, false); //-------------------------------------------------------------------------------- ----------- gBrowser.tabContainer.on_dragover = function(event) { this.clearDropIndicator(); var effects = this._getDropEffectForTabDrag(event); var ind = this._tabDropIndicator; if (effects == "" || effects == "none") { ind.hidden = true; return; } event.preventDefault(); event.stopPropagation(); if (effects == "link") { let tab = this._getDragTargetTab(event, true); if (tab) { if (!this._dragTime) { this._dragTime = Date.now(); } if (Date.now() >= this._dragTime + this._dragOverDelay) { this.selectedItem = tab; } ind.hidden = true; return; } } let newIndex = this._getDropIndex(event, effects == "link"); let children = this.allTabs; if (newIndex == children.length) { children[newIndex - 1].style.setProperty("border-right-color","red", "important"); } else { children[newIndex].style.setProperty("border-left-color","red", "important"); } } gBrowser.tabContainer.on_drop = function(event) { this.clearDropIndicator(); var dt = event.dataTransfer; var dropEffect = dt.dropEffect; var draggedTab; let movingTabs; if (dt.mozTypesAt(0)[0] == TAB_DROP_TYPE) { // tab copy or move draggedTab = dt.mozGetDataAt(TAB_DROP_TYPE, 0); // not our drop then if (!draggedTab) { return; } movingTabs = draggedTab._dragData.movingTabs; draggedTab.container._finishGroupSelectedTabs(draggedTab); } this._tabDropIndicator.hidden = true; event.stopPropagation(); if (draggedTab && dropEffect == "copy") { // copy the dropped tab (wherever it's from) let newIndex = this._getDropIndex(event, false); let draggedTabCopy; for (let tab of movingTabs) { let newTab = gBrowser.duplicateTab(tab); gBrowser.moveTabTo(newTab, newIndex++); if (tab == draggedTab) { draggedTabCopy = newTab; } } if (draggedTab.container != this || event.shiftKey) { this.selectedItem = draggedTabCopy; } } else if (draggedTab && draggedTab.container == this) { let oldTranslateX = Math.round(draggedTab._dragData.translateX); let tabWidth = Math.round(draggedTab._dragData.tabWidth); let translateOffset = oldTranslateX % tabWidth; let newTranslateX = oldTranslateX - translateOffset; if (oldTranslateX > 0 && translateOffset > tabWidth / 2) { newTranslateX += tabWidth; } else if (oldTranslateX < 0 && -translateOffset > tabWidth / 2) { newTranslateX -= tabWidth; } let dropIndex = this._getDropIndex(event, false); // "animDropIndex" in draggedTab._dragData && // draggedTab._dragData.animDropIndex; let incrementDropIndex = true; if (dropIndex && dropIndex > movingTabs[0]._tPos) { dropIndex--; incrementDropIndex = false; } let animate = gBrowser.animationsEnabled; if (oldTranslateX && oldTranslateX != newTranslateX && animate) { for (let tab of movingTabs) { tab.setAttribute("tabdrop-samewindow", "true"); tab.style.transform = "translateX(" + newTranslateX + "px)"; let onTransitionEnd = transitionendEvent => { if ( transitionendEvent.propertyName != "transform" || transitionendEvent.originalTarget != tab ) { return; } tab.removeEventListener("transitionend", onTransitionEnd); tab.removeAttribute("tabdrop-samewindow"); this._finishAnimateTabMove(); if (dropIndex !== false) { gBrowser.moveTabTo(tab, dropIndex); if (incrementDropIndex) { dropIndex++; } } gBrowser.syncThrobberAnimations(tab); }; tab.addEventListener("transitionend", onTransitionEnd); } } else { this._finishAnimateTabMove(); if (dropIndex !== false) { for (let tab of movingTabs) { gBrowser.moveTabTo(tab, dropIndex); if (incrementDropIndex) { dropIndex++; } } } } } else if (draggedTab) { let newIndex = this._getDropIndex(event, false); let newTabs = []; for (let tab of movingTabs) { let newTab = gBrowser.adoptTab(tab, newIndex++, tab == draggedTab); newTabs.push(newTab); } // Restore tab selection gBrowser.addRangeToMultiSelectedTabs( newTabs[0], newTabs[newTabs.length - 1] ); } else { // Pass true to disallow dropping javascript: or data: urls let links; try { links = browserDragAndDrop.dropLinks(event, true); } catch (ex) {} if (!links || links.length === 0) { return; } let inBackground = Services.prefs.getBoolPref( "browser.tabs.loadInBackground" ); if (event.shiftKey) { inBackground = !inBackground; } let targetTab = this._getDragTargetTab(event, true); let userContextId = this.selectedItem.getAttribute("usercontextid"); let replace = !!targetTab; let newIndex = this._getDropIndex(event, true); let urls = links.map(link => link.url); let csp = browserDragAndDrop.getCSP(event); let triggeringPrincipal = browserDragAndDrop.getTriggeringPrincipal( event ); (async () => { if ( urls.length >= Services.prefs.getIntPref("browser.tabs.maxOpenBeforeWarn") ) { // Sync dialog cannot be used inside drop event handler. let answer = await OpenInTabsUtils.promiseConfirmOpenInTabs( urls.length, window ); if (!answer) { return; } } gBrowser.loadTabs(urls, { inBackground, replace, allowThirdPartyFixup: true, targetTab, newIndex, userContextId, triggeringPrincipal, csp, }); })(); } if (draggedTab) { delete draggedTab._dragData; } } gBrowser.tabContainer._getDropIndex = function(event, isLink) { var tabs = this.allTabs; var tab = this._getDragTargetTab(event, isLink); if (!RTL_UI) { for (let i = tab ? tab._tPos : 0; i < tabs.length; i++) { if ( event.screenY < tabs[i].screenY + tabs[i].getBoundingClientRect().height ) { if ( event.screenX < tabs[i].screenX + tabs[i].getBoundingClientRect().width / 2 ) { return i; } if ( event.screenX > tabs[i].screenX + tabs[i].getBoundingClientRect().width / 2 && event.screenX < tabs[i].screenX + tabs[i].getBoundingClientRect().width ) { return i + 1; } } } } else { for (let i = tab ? tab._tPos : 0; i < tabs.length; i++) { if ( event.screenY < tabs[i].screenY + tabs[i].getBoundingClientRect().height ) { if ( event.screenX < tabs[i].screenX + tabs[i].getBoundingClientRect().width && event.screenX > tabs[i].screenX + tabs[i].getBoundingClientRect().width / 2 ) { return i; } if ( event.screenX < tabs[i].screenX + tabs[i].getBoundingClientRect().width / 2 ) { return i + 1; } } } } return tabs.length; } }
-
Also wenn ich mehr als 3 Tab Reihen habe, was ja komisch ist weil eigentlich auf 3 eingestellt. Dann kann ich zumindestens mal hoch und runter scrollen die Tableiste, das wars dann auch schon.
-
Punkt 1 ja schon mehrfach Scripte benutzt und auch css. War bisher immer ok gewesen. Probleme erst hier mit Version 73.
Hab jetzt den Firefox neu installiert. Die Scripte neu in die Ordner kopiert. Das userChrome.css 2 benutzt nur feste breite auf 60 eingestellt. Das neue Script in den Ordner Chrome kopiert. Jetzt wirds Lustig, beim ersten start des Browser war die Scrollfunktion vorhanden, natürlich nur horizontal so wie es Standard ist. Nachdem ich dann alles kopiert hatte Firefox auf gemacht und siehe da mehrfach Reihe bei Tabs. Scrollen tot. Tab verschieben geht immer noch nur in Reihe 1. Jetzt bin ich auch total überfragt was hier noch falsch sein könnte
-
genau das habe ich gemacht, alles gelöscht, script 2 genommen und nur feste breite eingestellt auf 60px mehr nicht, dann den MultiLineTab71Plus-V4.uc.js komplett neu erstellt mit dem was du gerade gepostet hast. Keinerlei scrollen möglich. mehrere Reihen kein Problem aber das wars auch schon. Die Tabs können maximal an die in die oberste Reihe an den Anfang der ersten 4 Positionen verschoben werden, manchmal sind sie auch irgendwo in der 2ten Zeile. Auf beiden sind nur 3 Reihen gleich eingestellt. Muss in der userChrome.css noch irgendwas davor gestellt werden irgendwas von namesspace? oder geht das auch so?
nochmal alles nachgeschaut, alles scripte da wo sie hin gehören so wie gezeigt und toolkit.legacyUserProfileCustomizations.stylesheets auf True, keine Chance FF73 Win10 64b Version 1809. Absolut keinerlei scrollen, noch nicht mal die Standartscrollfunktion ist vorhanden. Und ich kann true oder fals einstellen die Tabs bleiben immer oben, war vorher mit tabsrunter.uc.js nicht so gewesen
-
funzt hier bei mir nicht, obwohl alles auf true gestellt wurde ist die Leiste oben und scrollen geht gar nicht ebenso wie das verschieben der Tabs, no go. Ich habe den Code 2 genommen und feste breite der tabs auf 60px gestellt das wars.
-
LOL der war gut. Ich dachte die wären zusammen ist natürlich nicht so, danke das Huhn war mal wieder blind
-
Mit basteln meine ich das ich dann die Tabs zb auf meine eigene Größe mit x und Farbe usw verändere. Ich hab gesehen das hier einige die Menüleiste in der Titelleiste haben das interessiert mich auch wie das geht^^