diff --git a/webextensions/_locales/de/messages.json b/webextensions/_locales/de/messages.json index 952635584..4a21c6de2 100644 --- a/webextensions/_locales/de/messages.json +++ b/webextensions/_locales/de/messages.json @@ -719,6 +719,7 @@ "config_dropLinksOnTabBehavior_load": { "message": "In diesem Tab öffnen" }, "config_dropLinksOnTabBehavior_newtab": { "message": "In einem neuen untergeordneten Tab öffnen" }, "config_simulateTabsLoadInBackgroundInverted_label": { "message": "When you open a dropped link in a new tab, switch to it immediately (*simulation of the browser's built-in option \"When you open a link, image or media in a new tab, switch to it immediately\" (\"browser.tabs.loadInBackground\"))" }, + "config_tabsLoadInBackgroundDiscarded_label": { "message": "Tabs ausstehend lassen bis sie aktiv werden" }, "config_insertDroppedTabsAt_caption": { "message": "Einfügeposition von Tabs, die auf übergeordnete Tabs abgelegt werden" }, "config_insertDroppedTabsAt_inherit": { "message": "Wie neue untergeordnete Tab behandeln" }, diff --git a/webextensions/_locales/en/messages.json b/webextensions/_locales/en/messages.json index d6207bc59..26278657d 100644 --- a/webextensions/_locales/en/messages.json +++ b/webextensions/_locales/en/messages.json @@ -733,6 +733,7 @@ "config_dropLinksOnTabBehavior_load": { "message": "Load to the tab" }, "config_dropLinksOnTabBehavior_newtab": { "message": "Open new child tab" }, "config_simulateTabsLoadInBackgroundInverted_label": { "message": "When you open a dropped link in a new tab, switch to it immediately (*simulation of the browser's built-in option \"When you open a link, image or media in a new tab, switch to it immediately\" (\"browser.tabs.loadInBackground\"))" }, + "config_tabsLoadInBackgroundDiscarded_label": { "message": "Keep tabs pended until they become active" }, "config_insertDroppedTabsAt_caption": { "message": "Insertion position of children dropped onto a parent" }, "config_insertDroppedTabsAt_inherit": { "message": "Treat same as new children opened from the parent" }, diff --git a/webextensions/_locales/ja/messages.json b/webextensions/_locales/ja/messages.json index 8235d19ce..51bff9b93 100644 --- a/webextensions/_locales/ja/messages.json +++ b/webextensions/_locales/ja/messages.json @@ -730,6 +730,7 @@ "config_dropLinksOnTabBehavior_load": { "message": "そのタブに読み込む" }, "config_dropLinksOnTabBehavior_newtab": { "message": "新しい子タブで開く" }, "config_simulateTabsLoadInBackgroundInverted_label": { "message": "ドロップされたリンクを新しいタブで開いたとき、すぐにそのタブに切り替える(※ブラウザー組み込みの設定項目「リンク、画像、メディアを新しいタブで開いたとき、すぐにそのタブに切り替える」(\"browser.tabs.loadInBackground\")の再現)" }, + "config_tabsLoadInBackgroundDiscarded_label": { "message": "読み込みを保留した状態でタブを開く" }, "config_insertDroppedTabsAt_caption": { "message": "親タブにドロップされた子タブの挿入位置" }, "config_insertDroppedTabsAt_inherit": { "message": "親タブから新しい子タブを開いたときと同様に扱う" }, diff --git a/webextensions/_locales/ko/messages.json b/webextensions/_locales/ko/messages.json index 541ec8ac3..5b3290893 100644 --- a/webextensions/_locales/ko/messages.json +++ b/webextensions/_locales/ko/messages.json @@ -1433,6 +1433,10 @@ "message": "트리의 마지막", "hash": "fb8149b1acff1a3722270b8ba8d4f816" }, + "config_tabsLoadInBackgroundDiscarded_label": { + "message": "읽기를 보류하고 탭을 열기.", + "hash": "509c995c21ab51263ec0f69c24e360b5" + }, "config_groupTab_caption": { "message": "탭을 자동으로 묶기", "hash": "998c6484eb3eccfe367c727c71d482ae" diff --git a/webextensions/_locales/nl/messages.json b/webextensions/_locales/nl/messages.json index 722eadba1..f46a32175 100644 --- a/webextensions/_locales/nl/messages.json +++ b/webextensions/_locales/nl/messages.json @@ -2289,6 +2289,10 @@ "message": "Link naar een nieuw tabblad automatisch laden (*bootst het gedrag van “Als u een koppeling, afbeelding of media opent in een nieuw tabblad, er meteen naartoe gaan” / \"browser.tabs.loadInBackground\" na)", "hash": "0b7a2bc33fc4d7d6ce76d76ecd24662e" }, + "config_tabsLoadInBackgroundDiscarded_label": { + "message": "Tabbladen pas activeren als ze worden aangeklikt", + "hash": "509c995c21ab51263ec0f69c24e360b5" + }, "config_insertDroppedTabsAt_caption": { "message": "Invoeglocatie van onderliggende tabbladen die naar een bovenliggend tabblad worden gesleept", "hash": "72bc7288abbf1e34dab8a4747b533f54" diff --git a/webextensions/_locales/ru/messages.json b/webextensions/_locales/ru/messages.json index 011a12859..6eb5da915 100644 --- a/webextensions/_locales/ru/messages.json +++ b/webextensions/_locales/ru/messages.json @@ -719,6 +719,7 @@ "config_dropLinksOnTabBehavior_load": { "message": "Загрузить во вкладке" }, "config_dropLinksOnTabBehavior_newtab": { "message": "Открыть новую дочернюю вкладку" }, "config_simulateTabsLoadInBackgroundInverted_label": { "message": "При открытии ссылки в новой вкладке, переключатся на эту вкладку (* имитация параметра Firefox \"Переключаться на открываемую ссылку, изображение или медиа\" (\"browser.tabs.loadInBackground\"))" }, + "config_tabsLoadInBackgroundDiscarded_label": { "message": "Открывать незагруженными" }, "config_insertDroppedTabsAt_caption": { "message": "Позиция вставки дочерних элементов, перетянутых на родителя" }, "config_insertDroppedTabsAt_inherit": { "message": "Рассматривать как новые дочерние, открытые из родителя" }, diff --git a/webextensions/_locales/zh_CN/messages.json b/webextensions/_locales/zh_CN/messages.json index d238356d8..c07435e1e 100644 --- a/webextensions/_locales/zh_CN/messages.json +++ b/webextensions/_locales/zh_CN/messages.json @@ -1805,6 +1805,9 @@ "config_simulateTabsLoadInBackgroundInverted_label": { "message": "当您用新标签页打开拖放的链接时,立即切换过去 (* 模拟 Firefox 的内置选项 \"新建标签页打开链接、图像、媒体时,立即切换过去\" (\"browser.tabs.loadInBackground\"))" }, + "config_tabsLoadInBackgroundDiscarded_label": { + "message": "让这些标签页在变为活动状态前始终保持休眠" + }, "config_insertDroppedTabsAt_caption": { "message": "被拖放至父项上的子项的插入位置" }, diff --git a/webextensions/background/browser-action-menu.js b/webextensions/background/browser-action-menu.js index 41fe0de90..492adfbe5 100644 --- a/webextensions/background/browser-action-menu.js +++ b/webextensions/background/browser-action-menu.js @@ -2099,6 +2099,12 @@ const mItems = [ key: 'simulateTabsLoadInBackgroundInverted', expert: true, }, + { + title: indent(2) + browser.i18n.getMessage('config_tabsLoadInBackgroundDiscarded_label'), + type: 'checkbox', + key: 'tabsLoadInBackgroundDiscarded', + expert: true, + }, //{ type: 'separator', expert: true }, { title: indent() + browser.i18n.getMessage('config_insertDroppedTabsAt_caption'), diff --git a/webextensions/background/tabs-open.js b/webextensions/background/tabs-open.js index 4427ba175..48f1720d9 100644 --- a/webextensions/background/tabs-open.js +++ b/webextensions/background/tabs-open.js @@ -301,6 +301,7 @@ function onMessage(message, openerTab) { insertBefore: Tab.get(message.insertBeforeId), insertAfter: Tab.get(message.insertAfterId), active: !!message.active, + discarded: message.discarded, }); }); break; @@ -320,6 +321,7 @@ function onMessage(message, openerTab) { insertBefore: Tab.get(message.insertBeforeId), insertAfter: Tab.get(message.insertAfterId), active: message.active, + discarded: message.discarded, }); }); break; diff --git a/webextensions/common/common.js b/webextensions/common/common.js index b842dd731..343b39a34 100644 --- a/webextensions/common/common.js +++ b/webextensions/common/common.js @@ -364,6 +364,7 @@ export const configs = new Configs({ simulateLockTabSizing: true, deferScrollingToOutOfViewportSuccessor: true, simulateTabsLoadInBackgroundInverted: false, + tabsLoadInBackgroundDiscarded: false, supportTabsMultiselect: typeof browser.menus.overrideContext == 'function', warnOnCloseTabs: true, warnOnCloseTabsNotificationTimeout: 20 * 1000, diff --git a/webextensions/options/options.html b/webextensions/options/options.html index 27a1a411c..ad920f67a 100644 --- a/webextensions/options/options.html +++ b/webextensions/options/options.html @@ -1310,6 +1310,11 @@