diff options
Diffstat (limited to 'src/background')
| -rw-r--r-- | src/background/actions/command.js | 2 | ||||
| -rw-r--r-- | src/background/shared/completions/index.js | 1 | ||||
| -rw-r--r-- | src/background/shared/tabs.js | 10 | 
3 files changed, 12 insertions, 1 deletions
| diff --git a/src/background/actions/command.js b/src/background/actions/command.js index 020a57f..fa040ff 100644 --- a/src/background/actions/command.js +++ b/src/background/actions/command.js @@ -86,6 +86,8 @@ const exec = (tab, line, settings) => {      return bufferCommand(args);    case 'bdeletes':      return tabs.closeTabsByKeywords(args.join(' ')); +  case 'bdeletes!': +    return tabs.closeTabsByKeywordsForce(args.join(' '));    case 'addbookmark':      return addBookmarkCommand(tab, args).then((item) => {        if (!item) { diff --git a/src/background/shared/completions/index.js b/src/background/shared/completions/index.js index 43af23d..77394bc 100644 --- a/src/background/shared/completions/index.js +++ b/src/background/shared/completions/index.js @@ -89,6 +89,7 @@ const getCompletions = (line, settings) => {    case 'b':    case 'buffer':    case 'bdeletes': +  case 'bdeletes!':      return tabs.getCompletions(keywords).then((gotTabs) => {        let items = gotTabs.map((tab) => {          return { diff --git a/src/background/shared/tabs.js b/src/background/shared/tabs.js index 1e5e3e4..c90ac4b 100644 --- a/src/background/shared/tabs.js +++ b/src/background/shared/tabs.js @@ -14,6 +14,13 @@ const closeTabForce = (id) => {  const closeTabsByKeywords = (keyword) => {    tabCompletions.getCompletions(keyword).then((tabs) => { +    let tabs2 = tabs.filter(tab => !tab.pinned); +    browser.tabs.remove(tabs2.map(tab => tab.id)); +  }); +}; + +const closeTabsByKeywordsForce = (keyword) => { +  tabCompletions.getCompletions(keyword).then((tabs) => {      browser.tabs.remove(tabs.map(tab => tab.id));    });  }; @@ -127,7 +134,8 @@ const duplicate = (id) => {  };  export { -  closeTab, closeTabForce, closeTabsByKeywords, reopenTab, selectAt, selectByKeyword, +  closeTab, closeTabForce, closeTabsByKeywords, closeTabsByKeywordsForce, +  reopenTab, selectAt, selectByKeyword,    selectPrevTab, selectNextTab, selectFirstTab,    selectLastTab, selectTab, reload, updateTabPinned,    toggleTabPinned, duplicate | 
