Skip to content

Commit

Permalink
Restructure options about new tab position control #3431
Browse files Browse the repository at this point in the history
Options with overlapped effects are now restructured.
Basically new tab positions are now controlled with options "autoAttach*".
The option "insertNewChildAt" now affects only edge cases un-controlled by "autoAttach*" options.
  • Loading branch information
piroor committed Jan 16, 2024
1 parent 461c29e commit e08d8df
Show file tree
Hide file tree
Showing 9 changed files with 353 additions and 95 deletions.
92 changes: 55 additions & 37 deletions webextensions/_locales/en/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -400,19 +400,30 @@
"config_removeDeviceButton_label": { "message": "Delete" },
"config_removeDeviceButton_tooltip": { "message": "Delete this device from the list" },

"config_autoAttachOnContextNewTabCommand_before": { "message": "For the \"New Tab\" context menu command, open new blank tab as" },
"config_autoAttachOnContextNewTabCommand_noControl": { "message": "(no control)" },
"config_autoAttachOnContextNewTabCommand_independent": { "message": "Independent tab" },
"config_autoAttachOnContextNewTabCommand_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnContextNewTabCommand_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnContextNewTabCommand_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnContextNewTabCommand_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnContextNewTabCommand_nextSiblingWithInheritedContainer": { "message": "Next Sibling, same container" },
"config_autoAttachOnContextNewTabCommand_after": { "message": "\u200b" },


"config_newTabWithOwner_caption": { "message": "Tabs opened from Existing Tabs" },

"config_autoAttachOnOpenedWithOwner_before": { "message": "When a tab is opened from existing tab, open it as" },
"config_autoAttachOnOpenedWithOwner_noControl": { "message": "(no control)" },
"config_autoAttachOnOpenedWithOwner_independent": { "message": "an independent tab" },
"config_autoAttachOnOpenedWithOwner_child": { "message": "a child of the parent tab" },
"config_autoAttachOnOpenedWithOwner_childNextToLastRelatedTab": { "message": "a child of the parent tab, next to the recently opened child" },
"config_autoAttachOnOpenedWithOwner_sibling": { "message": "a sibling of the parent tab" },
"config_autoAttachOnOpenedWithOwner_nextSibling": { "message": "the next sibling of the parent tab" },
"config_autoAttachOnOpenedWithOwner_independent": { "message": "Independent tab" },
"config_autoAttachOnOpenedWithOwner_childNextToLastRelatedTab": { "message": "Child of the parent tab, next to the recently opened child" },
"config_autoAttachOnOpenedWithOwner_childTop": { "message": "First Child of the parent tab" },
"config_autoAttachOnOpenedWithOwner_childEnd": { "message": "Last Child of the parent tab" },
"config_autoAttachOnOpenedWithOwner_sibling": { "message": "Sibling of the parent tab" },
"config_autoAttachOnOpenedWithOwner_nextSibling": { "message": "Next Sibling of the parent tab" },
"config_autoAttachOnOpenedWithOwner_after": { "message": "\u200b" },

"config_insertNewTabFromPinnedTabAt_caption": { "message": "Insertion position of new child tabs (will appear as root tabs) from pinned tabs" },
"config_insertNewTabFromPinnedTabAt_caption": { "message": "Insertion position of new child tabs from pinned tabs (will appear as root tabs)" },
"config_insertNewTabFromPinnedTabAt_noControl": { "message": "No control (respect the decision by Firefox or other tab addons)" },
"config_insertNewTabFromPinnedTabAt_nextToLastRelatedTab": { "message": "Next to the recently opened child, or near the opener" },
"config_insertNewTabFromPinnedTabAt_top": { "message": "The top of the tree (near the opener)" },
Expand All @@ -436,30 +447,33 @@
"config_newTabAction_caption": { "message": "Basic control for New Blank Tabs" },
"config_autoAttachOnNewTabCommand_before": { "message": "Open new blank tab as" },
"config_autoAttachOnNewTabCommand_noControl": { "message": "(no control)" },
"config_autoAttachOnNewTabCommand_independent": { "message": "an independent tab" },
"config_autoAttachOnNewTabCommand_child": { "message": "a child of the current tab" },
"config_autoAttachOnNewTabCommand_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachOnNewTabCommand_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachOnNewTabCommand_independent": { "message": "Independent tab" },
"config_autoAttachOnNewTabCommand_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnNewTabCommand_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnNewTabCommand_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnNewTabCommand_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnNewTabCommand_after": { "message": "\u200b" },
"config_guessNewOrphanTabAsOpenedByNewTabCommandUrl_before": { "message": "Guess a newly opened tab as opened by \"New Blank Tab\" action, when it is opened with URL(s) " },
"config_guessNewOrphanTabAsOpenedByNewTabCommandUrl_after": { "message": "(*You can list multiple URLs with a separator \"|\")" },

"config_autoAttachOnNewTabButtonMiddleClick_before": { "message": "For middle click, open new blank tab as" },
"config_autoAttachOnNewTabButtonMiddleClick_noControl": { "message": "(no control)" },
"config_autoAttachOnNewTabButtonMiddleClick_independent": { "message": "an independent tab" },
"config_autoAttachOnNewTabButtonMiddleClick_child": { "message": "a child of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_nextSiblingWithInheritedContainer": { "message": "same to Ctrl-click (next sibling, same container)" },
"config_autoAttachOnNewTabButtonMiddleClick_independent": { "message": "Independent tab" },
"config_autoAttachOnNewTabButtonMiddleClick_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnNewTabButtonMiddleClick_nextSiblingWithInheritedContainer": { "message": "Same to Ctrl-click (next sibling, same container)" },
"config_autoAttachOnNewTabButtonMiddleClick_after": { "message": "\u200b" },

"config_autoAttachOnNewTabButtonAccelClick_before": { "message": "For Ctrl/⌘-click, open new blank tab as" },
"config_autoAttachOnNewTabButtonAccelClick_noControl": { "message": "(no control)" },
"config_autoAttachOnNewTabButtonAccelClick_independent": { "message": "an independent tab" },
"config_autoAttachOnNewTabButtonAccelClick_child": { "message": "a child of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_nextSiblingWithInheritedContainer": { "message": "next sibling, same container" },
"config_autoAttachOnNewTabButtonAccelClick_independent": { "message": "Independent tab" },
"config_autoAttachOnNewTabButtonAccelClick_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnNewTabButtonAccelClick_nextSiblingWithInheritedContainer": { "message": "Next Sibling, same container" },
"config_autoAttachOnNewTabButtonAccelClick_after": { "message": "\u200b" },

"config_autoAttachWithURL_caption": { "message": "Non-blank new tabs" },
Expand All @@ -468,19 +482,21 @@

"config_autoAttachOnDuplicated_before": { "message": "Duplicate the tab as" },
"config_autoAttachOnDuplicated_noControl": { "message": "(no control)" },
"config_autoAttachOnDuplicated_independent": { "message": "an independent tab" },
"config_autoAttachOnDuplicated_child": { "message": "a child of the current tab" },
"config_autoAttachOnDuplicated_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachOnDuplicated_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachOnDuplicated_independent": { "message": "Independent tab" },
"config_autoAttachOnDuplicated_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnDuplicated_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnDuplicated_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnDuplicated_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnDuplicated_after": { "message": "\u200b" },

"config_fromExternal_caption": { "message": "New tab from outside Firefox" },
"config_autoAttachOnOpenedFromExternal_before": { "message": "Open as" },
"config_autoAttachOnOpenedFromExternal_noControl": { "message": "(no control)" },
"config_autoAttachOnOpenedFromExternal_independent": { "message": "an independent tab" },
"config_autoAttachOnOpenedFromExternal_child": { "message": "a child of the current tab" },
"config_autoAttachOnOpenedFromExternal_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachOnOpenedFromExternal_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachOnOpenedFromExternal_independent": { "message": "Independent tab" },
"config_autoAttachOnOpenedFromExternal_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnOpenedFromExternal_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnOpenedFromExternal_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnOpenedFromExternal_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnOpenedFromExternal_after": { "message": "\u200b" },
"config_inheritContextualIdentityToTabsFromExternalMode_label": { "message": "Container:" },
"config_inheritContextualIdentityToTabsFromExternalMode_default": { "message": "(no control)" },
Expand All @@ -490,10 +506,11 @@
"config_sameSiteOrphan_caption": { "message": "New tab with the same website as the current tab from the location bar, bookmarks, histories, or other cases" },
"config_autoAttachSameSiteOrphan_before": { "message": "Open as" },
"config_autoAttachSameSiteOrphan_noControl": { "message": "(no control)" },
"config_autoAttachSameSiteOrphan_independent": { "message": "an independent tab" },
"config_autoAttachSameSiteOrphan_child": { "message": "a child of the current tab" },
"config_autoAttachSameSiteOrphan_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachSameSiteOrphan_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachSameSiteOrphan_independent": { "message": "Independent tab" },
"config_autoAttachSameSiteOrphan_childTop": { "message": "First Child of the current tab" },
"config_autoAttachSameSiteOrphan_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachSameSiteOrphan_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachSameSiteOrphan_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachSameSiteOrphan_after": { "message": "\u200b" },
"config_inheritContextualIdentityToSameSiteOrphanMode_label": { "message": "Container:" },
"config_inheritContextualIdentityToSameSiteOrphanMode_default": { "message": "(no control)" },
Expand All @@ -503,10 +520,11 @@
"config_anyOtherTrigger_caption": { "message": "Tabs from any other trigger" },
"config_autoAttachOnAnyOtherTrigger_before": { "message": "Open as" },
"config_autoAttachOnAnyOtherTrigger_noControl": { "message": "(no control)" },
"config_autoAttachOnAnyOtherTrigger_independent": { "message": "an independent tab" },
"config_autoAttachOnAnyOtherTrigger_child": { "message": "a child of the current tab" },
"config_autoAttachOnAnyOtherTrigger_sibling": { "message": "a sibling of the current tab" },
"config_autoAttachOnAnyOtherTrigger_nextSibling": { "message": "the next sibling of the current tab" },
"config_autoAttachOnAnyOtherTrigger_independent": { "message": "Independent tab" },
"config_autoAttachOnAnyOtherTrigger_childTop": { "message": "First Child of the current tab" },
"config_autoAttachOnAnyOtherTrigger_childEnd": { "message": "Last Child of the current tab" },
"config_autoAttachOnAnyOtherTrigger_sibling": { "message": "Sibling of the current tab" },
"config_autoAttachOnAnyOtherTrigger_nextSibling": { "message": "Next Sibling of the current tab" },
"config_autoAttachOnAnyOtherTrigger_after": { "message": "\u200b" },
"config_autoAttachOnAnyOtherTrigger_caution": { "message": "*CAUTION: This option has a risk breaking behavior of other addons." },
"config_inheritContextualIdentityToTabsFromAnyOtherTriggerMode_label": { "message": "Container:" },
Expand Down Expand Up @@ -620,7 +638,7 @@
"config_warnOnCloseTabsByClosebox_label": { "message": "Warn me when I attempt to close multiple tabs by a normal click on a closebox" },
"config_warnOnCloseTabsWithListing_label": { "message": "List closing tabs in the confirmation dialog" },

"config_insertNewChildAt_caption": { "message": "Insertion position of new child tabs" },
"config_insertNewChildAt_caption": { "message": "Default insertion position of new child tabs on un-controlled cases" },
"config_insertNewChildAt_noControl": { "message": "No control (respect the decision by Firefox or other tab addons)" },
"config_insertNewChildAt_nextToLastRelatedTab": { "message": "Next to the recently opened child, or next to the parent" },
"config_insertNewChildAt_top": { "message": "The top of the tree (next to the parent)" },
Expand Down
Loading

0 comments on commit e08d8df

Please sign in to comment.