1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. GermanFreme82

Beiträge von GermanFreme82

  • Anleitung um die Tableiste unter die Navigationsleiste zu setzten (FX65+)

    • GermanFreme82
    • 9. Mai 2019 um 10:59
    Zitat von 2002Andreas


    Gerne doch :D

    Sag mir bitte einmal welche Farbnamen man reinschreiben kann, denn ich bin gerade heftig am raten :) .

  • Anleitung um die Tableiste unter die Navigationsleiste zu setzten (FX65+)

    • GermanFreme82
    • 9. Mai 2019 um 10:56
    Zitat von 2002Andreas


    Bitte testen, Farben nach Wunsch anpassen:

    CSS
    /*Inaktiver Tab */
    
    
    .tabbrowser-tab:not([selected]) .tab-content {
    	 background: lightgrey !important; 
    	 color:black!important;
    	}
    
    
    /*Aktiver Tab */
    
    .tabbrowser-tab[selected] .tab-content { 
    	background: orange !important;
        }
    Alles anzeigen

    Das ist ja der Hammer wooooow !
    Ich wußte gar nicht, das man die einfärben kann und deine Anleitung hat sofort funktioniert.
    Vielen lieben DANK dafür !

    Kannst du mir bitte noch sagen welche Farbname man dort eintragen kann ?

  • "bleibt auf dem Teppich"

    • GermanFreme82
    • 9. Mai 2019 um 10:51
    Zitat von Elena M


    Wenn schon keine Besserung möglich ist, dann wünsche ich Dir auf jeden Fall einen erträglichen Status, GermanFreme82!

    Vielen herzlichen Dank für dein Mitgefühl. :oops:

  • "bleibt auf dem Teppich"

    • GermanFreme82
    • 6. Mai 2019 um 19:37
    Zitat von 2002Andreas


    Was mich betrifft...nicht vielleicht, sondern ich akzeptiere sie. :wink:

    :klasse::oops:

  • Add ons wurden deaktiviert

    • GermanFreme82
    • 6. Mai 2019 um 19:35
    Zitat von 2002Andreas


    Kann doch mal passieren :wink:

    Dankeschön ! :oops:

  • "bleibt auf dem Teppich"

    • GermanFreme82
    • 6. Mai 2019 um 19:33
    Zitat von 2002Andreas


    Das hat Stil :klasse:

    Ganz ganz großes DANKE an dich !
    Es ist schön zu wissen, das du meine Entschuldigung ehrlich aufgefaßt und vielleicht sogar akzeptiert hast.

    PS: Eine Besserung wird es leider nie geben, ist bleibend und situationsabhängig ... leider. Ist kein Witz ist wirklich heftig an manchen Tagen.

  • Add ons wurden deaktiviert

    • GermanFreme82
    • 6. Mai 2019 um 19:30
    Zitat von 2002Andreas


    Steht doch auf der Seite die du selber aufrufen kannst:

    Neue Funktionen und Änderungen.

    Screenshot (330).png

    Achso ok vielen lieben DANK !
    Die hab ich ganz vergessen anzuklicken ... man bin ich ein Dummerle ;-).

  • "bleibt auf dem Teppich"

    • GermanFreme82
    • 6. Mai 2019 um 19:29

    Bei mir war am Wochenende auch Land unter.
    Erst ging mein Server in Arsch, dann wollte mein FritzBox mich nicht mehr reinlassen und dann ging Firefox nicht mehr.
    Das war nicht leicht zu verkraften, besonders nicht für mich, weil ich gesundheitlich eh auf dem letzten Loch pfiff die Tage udn dann noch sowas.

    Klar ist das Forum hier kein Platz um sich Luft zu machen, aber in der Not wußte ich mir nicht zu helfen und hab mal laut gemeckert gegen Firefox, was nicht so gut ankam bei der Community.

    Allerdings hab ich mich auch dafür entschuldigt und ich hoffe, das haben auch alle mitbekommen, die ich verschreckt habe.

  • Add ons wurden deaktiviert

    • GermanFreme82
    • 6. Mai 2019 um 19:23

    Ich habe eben gesehen das FF 66.0.4 raus ist.
    Kann mir bitte jemand kurz sagen, ob im neuen FF das Problem offiziell behoben wurde ?
    Bei mir scheint es nur zufällig gelöst zu sein durch 1 oder 2 Einstellungen (siehe Beitrag weiter oben).

  • Add ons wurden deaktiviert

    • GermanFreme82
    • 5. Mai 2019 um 11:00

    Nachdem ich mich gestern so unmöglich aufgeführt habe möchte ich nun versuchen mal etwas kosntruktives beizutragen.
    Ich habe eben 2 Dinge getan und die haben zumindest jetzt "noch" zur folge, das mein Firefox alle seine Erweiterungen zuläßt.

    1.) In den Einstellungen 3 Häkchen gesetzt (siehe Foto)
    .
    [attachment=0]2019.05.05 Bild 02.png[/attachment]
    .
    2. ) about:config => Adressleiste eingeben | "xpinstall.signatures.required" eintippen und den Wert auf "false" setzen (Doppelklick links)

    Ich bin kein Profi und ich habe keine Ahnung davon was ich damit getan habe, aber bei mir läuft Firefox 66.0.3 nun wieder "normal".

    Ich möchte an dieser Stelle nochmal ganz ganz aufrichtig dafür entschuldigen, wie ich mich gestern verhalten habe euch gegenüber und ich bitte euch darum mir zu verzeihen.

    Bilder

    • 2019.05.05 Bild 02.png
      • 25,7 kB
      • 1.086 × 286
  • Add ons wurden deaktiviert

    • GermanFreme82
    • 5. Mai 2019 um 00:56

    Kein LAden und auch nicht gewerblich is auch zu spät um zu erklären kann kaum Augen aufhaltne noch.

    Nen sorry das tut mir leid, das ich so aufgebracht war, aber wenn man vor dem NICHTS steht mit einmal und das dann so sein soll alles, dann ist man genervt. Klar hab ich Verständnis für euch und das mein Ton nicht der Beste war, aber auch ich möchte auch mal ins Bett gehen 00 Uhr, oder wie spät das grad ist. Da rauf ich mir die Haare um diese Zeit nur wiel in China ein Sack umfällt und dann Firefox Amok läuft ich kann shcon kaum die Augen noch offen halten und weiß nicht mehr ganz was ich schriebe nur das der Fehler hier affig ist oder war.

    Ich sags nochmal es tut mir leid das ich so forsch un bösartig war und ich suche keine Entschuldigung dafür es tut mir LEID !

    Ich entschuldige mich bei euch allen und bitte euch inständig um etwas Nachsicht und Vergebung.

    ich geh jetzt pennen udn hoffenltlich Morgen abend siehts dann vielliceicht besser aus.

  • Add ons wurden deaktiviert

    • GermanFreme82
    • 5. Mai 2019 um 00:07

    Was soll der Mist ich muß mit dem hier ARBEITEN !
    Wann wird der Fehler dnen behoben ab Monatg muß der LAden hier wieder laufen.
    Mir Platz langsam der KRagen mit diesen nutzlosen Mist hier wird man quasi enteignet ich will meine Addons haben basta und da macht mir kein Firefox Vorschriften soweit kommts noch.

    Bin stinksauer !!!

  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 22. März 2019 um 03:47

    So ich bin jetz erstmal durch mit den ganzen Änderungen (kam eben erst dazu).
    Bis jetzt läuft alles einwandfrei udn ohne Fehler.

    So als kleiner Zusatz wäre es noch mega, wenn ich mal testweise die TAB-Lietse nach unten bringen könnte, ABER überhalb der Statusleiste, falls das geht.

    Ich DANKE dir nochmals bist echt megahilfreich gewesen bei allem !!!!!!

  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 17:45
    Zitat von 2002Andreas


    Also sind deine Probleme alle gelöst!?

    Bis auf eine winzige Kleinigkeit schon, ABER ich danke dir nochmals 1.000x für deine großartige ruhige und sachliche Hilfe ! :klasse:

    Schau mal bitte auf das Bild und sag mir bitte einmal, was das dort ist und ob man das wegmachen kann, denn die Buttons machen genau das gleich, wie die ganz oben rechts am Rand und sind somit vollkommen sinnlos an der Stelle:

    [attachment=0]2019.03.21 Bild 08.png[/attachment]

    Bilder

    • 2019.03.21 Bild 08.png
      • 272,95 kB
      • 1.920 × 351
  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 16:57

    Jetzt fehlt nur noch die Funktion "TABs schützen" für das Kontextmenü.
    Die Datei liegt im Pfad "C:\Users\VMWare-PC\AppData\Roaming\Mozilla\Firefox\Profiles\ltuhfjqd.default\chrome", aber funktioniert leider nicht, soll bedeuten, sie wird NICHT angezeigt.

    TabProtectmod.uc.js

    Code
    // ==UserScript==
    // @name           tabProtect_mod2.uc.js
    // @namespace      http://space.geocities.yahoo.co.jp/gl/alice0775
    // @description    Tab schützen
    // @include        main
    // @author         Alice0775
    // @Note           Tabulator wird nicht unterstützt
    // @Note           Beim Wechsel in den Privaten Modus über Tableiste, kann es beim
    // @Note           Speichern und Wiederherstellen der Browsersitzung Probleme geben
    // @compatibility  60
    // @version        2018/06/21 19:50 workaround regression
    // @version        2018/06/21 19:40 fix restore session if *.restore_on_demand is enabled
    // @version        2018/06/10 00:00 workaround restore session
    // @version        2018/05/23 00:00 Fixed typo(status is undeled when unprotect)
    // @version        2018/05/12 15:30 workaround restore session for all window
    // @version        2018/05/06 14:00 workaround for tab move
    // @version        2018/05/04 12:00 cleanup for 60
    // @version        2018/05/04 23:00 for 60
    // ==/UserScript==
    
    
    var tabProtect = {
      debug: function(aMsg){
              Cc["@mozilla.org/consoleservice;1"]
                .getService(Ci.nsIConsoleService)
                .logStringMessage(aMsg.toString());
      },
    
    
      sessionStore: {
        get ss() {
          try { 
            return Components.classes["@mozilla.org/browser/sessionstore;1"].
                                   getService(Components.interfaces.nsISessionStore)
          } catch(e) {
            return;
          }
        },
    
    
        getTabValue : function(aTab, aKey) {
          if (typeof SessionStore.getCustomTabValue == "function")
            return SessionStore.getCustomTabValue(aTab, aKey);
          else
            return this.ss.getTabValue(aTab, aKey);
        },
    
    
        setTabValue : function(aTab, aKey, aValue) {
          if (typeof SessionStore.setCustomTabValue == "function")
            return SessionStore.setCustomTabValue(aTab, aKey, aValue);
          else
            return this.ss.setTabValue(aTab, aKey, aValue);
    
    
        },
        deleteTabValue : function(aTab, aKey) {
          if (typeof SessionStore.deleteCustomTabValue == "function")
            return SessionStore.deleteCustomTabValue(aTab, aKey);
          else
            return this.ss.deleteTabValue(aTab, aKey);
        }
      },
    
    
      init: function(){
        this.tabContextMenu();
    
    
        //tabbrowser.xml ersetzen
        gBrowser.removeTab_org = gBrowser.removeTab;
        gBrowser.removeTab = function(aTab, aParams) {
          if (aTab.localName != "tab")
            aTab = this.selectedTab;
          if (aTab.hasAttribute("tabProtect"))
            return;
          gBrowser.removeTab_org(aTab, aParams);
        }
    
    
        // CSS Übernehmen
        var stack = document.getAnonymousElementByAttribute(
                                gBrowser.tabContainer.firstChild, "class", "tab-stack");
          var style = `
          .tab-close-button[hidden='true'] image {
            width: 0px;
          }
          .tab-icon-protect{
            margin-top: 10px; /*Notwendige Anpassung*/
            margin-left: -6px; /*Notwendige Anpassung*/
            list-style-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAQUlEQVQ4jWNgGAXDADASUvDvOsN/fPJMlLqAhRhFTJqo/H/XKXQBsoFEuQDDVnIMQPcGXJxYA3C5hiwvUOwCZAAAlRcK7m+YgB4AAAAASUVORK5CYII=');
          }
          .tab-icon-protect[hidden='true'] {
            display: none;
          }
          `;
        var sspi = document.createProcessingInstruction(
          'xml-stylesheet',
          'type="text/css" href="data:text/css,' + encodeURIComponent(style) + '"'
        );
        document.insertBefore(sspi, document.documentElement);
        sspi.getAttribute = function(name) {
        return document.documentElement.getAttribute(name);
        };
    
    
        this.restoreAll(0);
        gBrowser.tabContainer.addEventListener('TabMove', tabProtect.TabMove, false);
        gBrowser.tabContainer.addEventListener('SSTabRestoring', tabProtect.restore,false);
        window.addEventListener('unload',function(){ tabProtect.uninit();},false)
    
    
      },
    
    
      restoreAll: function(delay = 0) {
        var that = this;
        setTimeout(init, delay, 0);
        function init(i){
          if(i < gBrowser.tabs.length){
            var aTab = gBrowser.tabs[i];
            that.restoreForTab(aTab);
            i++;
            arguments.callee(i);
          }else{
          }
        }
      },
    
    
      uninit: function(){
        window.removeEventListener('unload',function(){ tabProtect.uninit();},false)
        gBrowser.tabContainer.removeEventListener('SSTabRestoring', tabProtect.restore,false);
        gBrowser.tabContainer.removeEventListener('TabMove', tabProtect.TabMove, false);
      },
    
    
    
    
      TabMove: function(aEvent){
        var aTab = aEvent.target;
        gBrowser.protectTabIcon(aTab);
      },
    
    
      tabContextMenu: function(){
        //tab context menu
        var tabContext = gBrowser.tabContainer.contextMenu;
        var menuitem = this.tabProtectMenu
                     = tabContext.appendChild(
                            document.createElement("menuitem"));
        menuitem.id = "tabProtect";
        menuitem.setAttribute("type", "checkbox");
        menuitem.setAttribute("label", "Tab schützen");
        menuitem.setAttribute("accesskey", "z");
        menuitem.setAttribute("oncommand","tabProtect.toggle(event);");
        tabContext.addEventListener('popupshowing',function(event){tabProtect.setCheckbox(event);},false);
      },
    
    
      restore: function(event){
        tabProtect.restoreAll(0);
      },
    
    
      restoreForTab: function(aTab){
        var retrievedData = this.sessionStore.getTabValue(aTab, "tabProtect") == "true";
        if(retrievedData){
          aTab.setAttribute('tabProtect',true);
          var closeButton = document.getAnonymousElementByAttribute(
                                 aTab, "anonid", "close-button");
          closeButton.setAttribute('hidden',true);
        }
        gBrowser.protectTabIcon(aTab);
      },
    
    
      toggle: function(event){
        var aTab = TabContextMenu.contextTab;
        if( !aTab || aTab.localName !='tab') return;
        gBrowser.protectTab(aTab);
      },
    
    
      toggleProtectSelectedTabs: function(){
        var tabs = MultipleTabService.getSelectedTabs();
        gBrowser.protectTab(tabs[0]);
        for (var i= 1; i < tabs.length; i++){
            gBrowser.protectTab(tabs[i]);
        }
      },
    
    
      setCheckbox: function(event){
        var menuitem = this.tabProtectMenu;
        var aTab = TabContextMenu.contextTab;
        if( !aTab || aTab.localName !='tab'){
          menuitem.setAttribute('hidden',true);
          return;
        }
        menuitem.setAttribute('hidden',false);
        if(aTab.hasAttribute('tabProtect') && aTab.getAttribute('tabProtect')){
          menuitem.setAttribute('checked', true);
        }else{
          menuitem.setAttribute('checked', false);
        }
      }
    }
    if(!('TM_init' in window)) {
      gBrowser.isProtectTab = function (aTab){
        return aTab.hasAttribute("tabProtect");
      }
    
    
      gBrowser.protectTab = function (aTab){
        if ( aTab.hasAttribute("tabProtect") ){
          aTab.removeAttribute("tabProtect");
          try {
            tabProtect.sessionStore.deleteTabValue(aTab, "tabProtect");
          } catch(e) {}
          var isProtected = false;
        } else {
          aTab.setAttribute("tabProtect", "true");
          tabProtect.sessionStore.setTabValue(aTab, "tabProtect", "true");
          var isProtected = true;
        }
        this.protectTabIcon(aTab);
        return isProtected;
      }
    
    
      gBrowser.protectTabIcon = function (aTab){
        const kXULNS =
                 "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
        var closeButton = document.getAnonymousElementByAttribute(
                        aTab, "anonid", "close-button");
        var image = document.getAnonymousElementByAttribute(
                                 aTab, "class", "tab-icon-protect");
        if ( aTab.hasAttribute("tabProtect") ){
          closeButton.setAttribute('hidden',true);
          if(!image){
            var stack = document.getAnonymousElementByAttribute(
                                   aTab, "class", "tab-stack");
            var image = document.createElementNS(kXULNS,'image');
            image.setAttribute('class','tab-icon-protect');
            image.setAttribute('left',0);
            image.setAttribute('top',0);
            if(stack) stack.appendChild(image);
          }
          aTab.setAttribute('class',aTab.getAttribute('class')+' tabProtect');
          image.removeAttribute('hidden');
        }else{
          closeButton.setAttribute('hidden',false);
          if(image){
            image.setAttribute('hidden', true);
          }
          aTab.setAttribute('class',aTab.getAttribute('class').replace(/\stabProtect/g,''));
        }
      }
    }
    
    
    if(!('TM_init' in window)) tabProtect.init();
    Alles anzeigen

    Update:

    Ich bin jetzt auf diese Website gegangen, weil ich in dem Text oben was kopiert hatte:
    Link => https://github.com/alice0775/user…tect_mod2.uc.js

    dort habe ich mir den Quellcode erneut kopiert und als "TabProtectmod.uc.js" gespeichert und es GEHT:

    Code
    // ==UserScript==
    // @name           tabProtect_mod2.uc.js
    // @namespace      http://space.geocities.yahoo.co.jp/gl/alice0775
    // @description    tabProtect
    // @include        main
    // @exclude        about:*
    // @author         Alice0775
    // @Note           タブのデタッチ非対応
    // @Note           タスクバーからprivate browsingモードに入るとtabの状態と復帰後のtabのセッション保存おかしくなる
    // @compatibility  60
    // @version        2018/09/27 10:30 fix  tab detach
    // @version        2018/09/26 07:30 support tab detach
    // @version        2018/09/25 21:30 working with tab multi selection
    // @version        2018/06/21 19:50 workaround regression
    // @version        2018/06/21 19:40 fix restore session if *.restore_on_demand is enabled
    // @version        2018/06/10 00:00 workaround restore session
    // @version        2018/05/23 00:00 Fixed typo(status is undeled when unprotect)
    // @version        2018/05/12 15:30 workaround restore session for all window
    // @version        2018/05/06 14:00 workaround for tab move
    // @version        2018/05/04 12:00 cleanup for 60
    // @version        2018/05/04 23:00 for 60
    // ==/UserScript==
    
    
    var tabProtect = {
      debug: function(aMsg){
              Cc["@mozilla.org/consoleservice;1"]
                .getService(Ci.nsIConsoleService)
                .logStringMessage(aMsg.toString());
      },
    
    
      sessionStore: {
        get ss() {
          try { 
            return Components.classes["@mozilla.org/browser/sessionstore;1"].
                                   getService(Components.interfaces.nsISessionStore)
          } catch(e) {
            return;
          }
        },
    
    
        getTabValue : function(aTab, aKey) {
          if (typeof SessionStore.getCustomTabValue == "function")
            return SessionStore.getCustomTabValue(aTab, aKey);
          else
            return this.ss.getTabValue(aTab, aKey);
        },
    
    
        setTabValue : function(aTab, aKey, aValue) {
          if (typeof SessionStore.setCustomTabValue == "function")
            return SessionStore.setCustomTabValue(aTab, aKey, aValue);
          else
            return this.ss.setTabValue(aTab, aKey, aValue);
    
    
        },
        deleteTabValue : function(aTab, aKey) {
          if (typeof SessionStore.deleteCustomTabValue == "function")
            return SessionStore.deleteCustomTabValue(aTab, aKey);
          else
            return this.ss.deleteTabValue(aTab, aKey);
        }
      },
    
    
      init: function(){
        this.tabContextMenu();
    
    
        //tabbrowser.xmlを置き換え
        gBrowser.removeTab_org = gBrowser.removeTab;
        gBrowser.removeTab = function(aTab, aParams) {
          if (aTab.localName != "tab")
            aTab = this.selectedTab;
          if (aTab.hasAttribute("tabProtect"))
            return;
          gBrowser.removeTab_org(aTab, aParams);
        }
    
    
        // CSSを適用
        var stack = document.getAnonymousElementByAttribute(
                                gBrowser.tabContainer.firstChild, "class", "tab-stack");
          var style = `
          .tab-close-button[hidden='true'] image {
            width: 0px;
          }
          .tab-icon-protect{
            margin-top: 0px; /*要調整*/
            margin-left: 0px; /*要調整*/
            list-style-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAQUlEQVQ4jWNgGAXDADASUvDvOsN/fPJMlLqAhRhFTJqo/H/XKXQBsoFEuQDDVnIMQPcGXJxYA3C5hiwvUOwCZAAAlRcK7m+YgB4AAAAASUVORK5CYII=');
          }
          .tab-icon-protect[hidden='true'] {
            display: none;
          }
          `;
        var sspi = document.createProcessingInstruction(
          'xml-stylesheet',
          'type="text/css" href="data:text/css,' + encodeURIComponent(style) + '"'
        );
        document.insertBefore(sspi, document.documentElement);
        sspi.getAttribute = function(name) {
        return document.documentElement.getAttribute(name);
        };
    
    
        this.restoreAll(0);
        gBrowser.tabContainer.addEventListener('TabMove', this, false);
        gBrowser.tabContainer.addEventListener('SSTabRestoring', this, false);
        window.addEventListener('unload', this, false)
    
    
        // detach tab
        let func =  gBrowser.swapBrowsersAndCloseOther.toString();
        if (gBrowser && !/copytabProtect/.test(func)) {
          func = func.replace(
            'let otherFindBar = aOtherTab._findBar;',
            `if (aOtherTab.hasAttribute("tabProtect")) {
               aOurTab.ownerGlobal.gBrowser.protectTab(aOurTab, true);
               /*copytabProtect*/
             }
             $&`
           );
          eval("gBrowser.swapBrowsersAndCloseOther = function " + func.replace(/^function/, ''));
        }
      },
    
    
      restoreAll: function(delay = 0) {
        var that = this;
        setTimeout(init, delay, 0);
        function init(i){
          if(i < gBrowser.tabs.length){
            var aTab = gBrowser.tabs[i];
            that.restoreForTab(aTab);
            i++;
            arguments.callee(i);
          }else{
          }
        }
      },
    
    
      uninit: function(){
        window.removeEventListener('unload', this, false)
        gBrowser.tabContainer.removeEventListener('SSTabRestoring', this, false);
        gBrowser.tabContainer.removeEventListener('TabMove', this, false);
        gBrowser.tabContainer.contextMenu.removeEventListener('popupshowing', this, false);
    
    
      },
    
    
      handleEvent: function(event) {
        switch(event.type) {
          case "unload":
            this.uninit(event);
            break;
          case "SSTabRestoring":
            this.restore(event);
            break;
          case "TabMove":
            this.TabMove(event);
            break;
          case "popupshowing":
            this.popupshowing(event);
            break;
        }
      },
    
    
      TabMove: function(aEvent){
        var aTab = aEvent.target;
        gBrowser.protectTabIcon(aTab);
      },
    
    
      tabContextMenu: function(){
        //tab context menu
        var tabContext = gBrowser.tabContainer.contextMenu;
        var menuitem = this.tabProtectMenu
                     = tabContext.appendChild(
                            document.createElement("menuitem"));
        menuitem.id = "tabProtect";
        menuitem.setAttribute("type", "checkbox");
        if (Services.appinfo.version.split(".")[0] >= 63)
          menuitem.setAttribute("label", "Protect This Tab(s)");
        else
          menuitem.setAttribute("label", "Protect This Tab");
        menuitem.setAttribute("accesskey", "P");
        menuitem.setAttribute("oncommand","tabProtect.toggle(TabContextMenu.contextTab);");
        tabContext.addEventListener('popupshowing', this, false);
      },
    
    
      popupshowing: function(event) {
        this.setCheckbox(event);
      },
    
    
      restore: function(event){
        tabProtect.restoreAll(0);
      },
    
    
      restoreForTab: function(aTab){
        var retrievedData = this.sessionStore.getTabValue(aTab, "tabProtect") == "true";
        if(retrievedData){
          aTab.setAttribute('tabProtect',true);
          var closeButton = document.getAnonymousElementByAttribute(
                                 aTab, "anonid", "close-button");
          closeButton.setAttribute('hidden',true);
        }
        gBrowser.protectTabIcon(aTab);
      },
    
    
      toggle: function(aTab){
        if (typeof gBrowser.selectedTabs != "undefined") {
          this.toggleProtectSelectedTabs(this.getSelectedTabs(aTab));
        } else {
          gBrowser.protectTab(aTab);
        }
      },
    
    
      toggleProtectSelectedTabs: function(tabs){
        if (tabs.length < 1)
          return;
        let isProtect = gBrowser.isProtectTab(tabs[0]);
        for (let tab of tabs) {
            gBrowser.protectTab(tab, !isProtect);
        }
      },
    
    
      getSelectedTabs: function(aTab){
        let contextTab = aTab;
        let selectedTabs = [contextTab];
        if (gBrowser.selectedTabs.indexOf(contextTab) < 0)
          return selectedTabs;
    
    
        for (let tab of gBrowser.selectedTabs) {
          if (contextTab != tab)
            selectedTabs.push(tab);
        }
        return selectedTabs;
      },
    
    
      setCheckbox: function(event){
        var menuitem = this.tabProtectMenu;
        var aTab = TabContextMenu.contextTab;
        if( !aTab || aTab.localName !='tab'){
          menuitem.setAttribute('hidden',true);
          return;
        }
        menuitem.setAttribute('hidden',false);
        if(aTab.hasAttribute('tabProtect') && aTab.getAttribute('tabProtect')){
          menuitem.setAttribute('checked', true);
        }else{
          menuitem.setAttribute('checked', false);
        }
      }
    }
    
    
    gBrowser.isProtectTab = function (aTab){
      return aTab.hasAttribute("tabProtect");
    }
    
    
    gBrowser.protectTab = function (aTab, state) {
      let isProtected;
      if (typeof state == "undefined") {
        if ( aTab.hasAttribute("tabProtect") ){
          state = false;
        } else {
          state = true;
        }
      }
      if (state) {
        aTab.setAttribute("tabProtect", "true");
        tabProtect.sessionStore.setTabValue(aTab, "tabProtect", "true");
        isProtected = true;
      } else {
        aTab.removeAttribute("tabProtect");
        try {
          tabProtect.sessionStore.deleteTabValue(aTab, "tabProtect");
        } catch(e) {}
        isProtected = false;
      }
      this.protectTabIcon(aTab);
      return isProtected;
    }
    
    
    gBrowser.protectTabIcon = function (aTab){
      const kXULNS =
               "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
      var closeButton = document.getAnonymousElementByAttribute(
                      aTab, "anonid", "close-button");
      var image = document.getAnonymousElementByAttribute(
                               aTab, "class", "tab-icon-protect");
      if ( aTab.hasAttribute("tabProtect") ){
        closeButton.setAttribute('hidden',true);
        if(!image){
          var stack = document.getAnonymousElementByAttribute(
                                 aTab, "class", "tab-stack");
          var image = document.createElementNS(kXULNS,'image');
          image.setAttribute('class','tab-icon-protect');
          image.setAttribute('left',0);
          image.setAttribute('top',0);
          if(stack) stack.appendChild(image);
        }
        aTab.setAttribute('class',aTab.getAttribute('class')+' tabProtect');
        image.removeAttribute('hidden');
      }else{
        closeButton.setAttribute('hidden',false);
        if(image){
          image.setAttribute('hidden', true);
        }
        aTab.setAttribute('class',aTab.getAttribute('class').replace(/\stabProtect/g,''));
      }
    }
    
    
    
    
    tabProtect.init();
    Alles anzeigen
  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 16:49
    Zitat von 2002Andreas


    Dann durchsuch mal deine Scripte, eins davon ist dafür zuständig.

    AAAAAAAAAAAAAALLLLLTER !!!!!!!!!!!!!!! :D:):shock::klasse::mrgreen::lol:

    Ich könnte dich kaputtknuddeln !
    Vielen Dank genau das hat mein Problem gelöst, denn ich hab "ffc-add-statusbar.uc.js" jetzt mal aus Spaß aus dem Ordner gehauen und siehe da, die Leiste mit allen Symbolen drinne war wieder da !!!!!

    Code
    (function() {	
    
    
    let tb = document.createElement('toolbar');
    tb.id = 'user-statusbar';
    tb.setAttribute('customizable', 'true');
    tb.setAttribute('mode', 'icons');
    tb.setAttribute('context', 'toolbar-context-menu');
    
    
    let vb  = document.createElement('vbox');
    vb.id = 'user-statusbar-vbox';
    let browserBottombox = document.getElementById('browser-bottombox');
    browserBottombox.parentNode.insertBefore(vb, browserBottombox);
    vb.appendChild(tb);
    
    
    CustomizableUI.registerArea('user-statusbar', {legacy: true});
    
    
    })();
    Alles anzeigen
  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 16:40
    Zitat von 2002Andreas


    Du hast viele Probleme :wink:

    Mach doch eins nach dem anderen.

    Ich danke dir 1.000x denn bisher war ich noch nie so weit gekommen und ohne deine Hilfe hätte ich das nicht geschafft.

    Checkliste:

    TAB-Leiste richtige Position :klasse:
    weißer Rand um TABs weg :klasse:
    Statusleiste unten vorhanden :klasse:

    Symbole in Statusleiste da :klasse:
    komische zweite Leiste unter Statusleiste gelöscht :klasse:

  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 16:28

    Ich hab erstmal ein gigantischen Problem mit den Symbolen in der Statusleiste, denn die sind nur teilweise da !
    Zum Beispiel fehlt das Symbol zu "Text Notes" => https://addons.mozilla.org/de/firefox/addon/textnotes

    Ich hab das Ding installiert ganz sicher und es ist auch aktiviert, aber das Symbol ist nicht da und ich kann das auch nicht hinzufügen, weil es in der Liste bei "anpassen" fehlt und das gleiche gilt für "No Script" und viele mehr ????


    [attachment=0]02.jpg[/attachment]

    Bilder

    • 02.jpg
      • 196,32 kB
      • 1.920 × 993
  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 16:11
    Zitat von 2002Andreas


    Dein oben gepostetes Script funktioniert einwandfrei.


    Beitrag Nr. 2, hast du das überprüft?

    Bitte nicht so schnell ich muß noch nachkommen mit probieren :D .

  • Firefox 66 anpassen Statusleiste, Tableiste etc.

    • GermanFreme82
    • 21. März 2019 um 15:54

    So ich habs nun mehrfach versucht, ABER es geht definitiv NICHT !

    Das Ergebnis ist nicht in Ordnung, denn die Statusleiste ist gesperrt, was verhindert das man dort was einfügen kann.
    Die TABs sind über der "Adressleiste" und nicht wie gewünscht unter der "Lezeichen Symbolleiste" und haben einen hässliches weißen Rand, den ich nicht möchte. Außerdem fehlt die Funktion "TABs schützen" im Kontextmenü auf einem TAB.

    benötige Hilfe für:
    Ich bräuchte somit dringend Hilfe um die TABs an die richtige Stelle zu bekommen,
    den abartigen weißen Rand um die TABs zu entfernen,
    die Statusleiste wieder benutzbar zu machen und
    die TAB schützen Funktion fehlt und muß wider verfügbar sein.


    [attachment=2]Zwischenablage01.jpg[/attachment]

    [attachment=1]Zwischenablage02.jpg[/attachment]

    [attachment=0]Zwischenablage03.jpg[/attachment]

    Bilder

    • Zwischenablage03.jpg
      • 45,79 kB
      • 550 × 463
    • Zwischenablage02.jpg
      • 45,85 kB
      • 633 × 383
    • Zwischenablage01.jpg
      • 158,13 kB
      • 1.920 × 993

Unterstütze uns!

Jährlich (2026)

1,5 %

1,5% (10,00 von 650 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon