Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Firefox Addon Code verstehen und abändern?
#1
Hallo,
ich bräuchte etwas Hilfe:
Ich habe in Firefox oft viele Tabs offen (>1000 Tabs!) und muss daher viele Tabs auch wieder löschen von Zeit zu Zeit.
Absolut dämlicherweise kann man in Firefox nur einen Tab auf einmal shcließen und dazu muss der Tab auch erst noch geladen sein.
Also Tab laden, tab shcließen, nächster tab laden, tab schließen, etc.

Viel Arbeit auch wenn man nur 50 Tabs schließen will.

Und ich weiß ja, wenn ich in Firefoxs Tabliste gucke, dass bspw. Tab 14-50 alle geschlossen werden können.
Darum suchte ich nahc einem passenden Addon um viele Tabs auf einmal zu schließen und wurde auch fündig, mehr oder minder.

Jenes Adddon sollte normalerweise folgendes machen:
Tab 1 öffnen, addon klicken, Tab 2 öffnen, wieder addon klicken.
Dann sollten Alle Tabs, die zwischen Tab 1 und Tab 2 liegen , geshclossen werden (inklusive der "Grenztabs").

Nur in Real, wenn ich so bspw. die Tabs 47-93 schließen will, macht er nicht nur die Zwischentabs zu, sondern irgendwie alle Tabs links von Tab 93.
oder so.
jedenfalls ist hinterher viel mehr geschlossen als geplant.


Langer Rede kurzer Sinn:
Ich will dieses Addon nehmen, es inspizieren und den Fehler darin finden und ausbessern damit es auch wirklich das tut was es sollte.
Weil ich brauche unbedingt ein solches Addon und ausser diesem (fehlerhaften) gibt es sosnt keins in die Richtung.

Meine Javascriptfähigkeiten sind begrenzt, gerade meine Kenntnisse hinsichtlich Promises eingeschränkt, daher wäre ich für Hilfe sehr dankbar :-)


Hier nun der Code des AddOns:
Code:
'use strict';
var noOfTabs    =   new Array();
chrome.browserAction.onClicked.addListener(function(aTab, event) {
    let tabs = browser.tabs.getCurrent();
    async function test(){
            let tabsa = await browser.tabs.query({});
            for (let tabsas of tabsa) {
                    if(tabsas.active == true){ 
                            chrome.browserAction.setBadgeText({text: 'No-'+tabsas.index});
                            noOfTabs.push(tabsas.id);
                            callToDelete(noOfTabs);
                            return;
                    }
                }
    }
    test();
    function callToDelete(count, start, end)
    {
            if(count.length == 2)
            {
                    if(count[0] < count[1])
                    {
                            start   =   count[0];
                            end     =   count[1];
                    }
                    else
                    {
                            end   =   count[0];
                            start =   count[1];
                    }
                    for (start; start <= end ; start++)
                    {
                            var removing = browser.tabs.remove(start);
                            removing.then(onRemoved, onError);
                            if(start == end)
                            {
                                    noOfTabs    =   new Array();
                                    chrome.browserAction.setBadgeText({text: ''});
                            }
                            
                    } 
                    function onRemoved(){console.log('success')}
                    function onError(){console.log('failure')}
            }
    }
});

Wie erwähnt, ich habe den Code nicht geschrieben und blicke auch nicht ganz durch was die Firefox Api mit ihren Promises angeht.

Wenn mir Jemand helfen könnte, wäre das echt nice! :-)
Zitieren


Nachrichten in diesem Thema
Firefox Addon Code verstehen und abändern? - von bernd - 12.08.2022, 20:27

Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste