Show first and last tab

pull/5583/head
GogoVega 2026-03-23 15:49:48 +01:00
parent 254bbe3c02
commit 749ddfdfb5
No known key found for this signature in database
GPG Key ID: E1E048B63AC5AC2B
3 changed files with 32 additions and 0 deletions

View File

@ -1288,6 +1288,8 @@
"toggle-show-tips": "Basculer l'affichage des astuces",
"show-about": "Afficher la description de Node-RED",
"show-welcome-tour": "Afficher la visite de bienvenue",
"show-first-tab": "Afficher le premier onglet",
"show-last-tab": "Afficher le dernier onglet",
"show-next-tab": "Afficher l'onglet suivant",
"show-previous-tab": "Afficher l'onglet précédent",
"add-flow": "Ajouter un flux",

View File

@ -605,6 +605,20 @@ RED.tabs = (function() {
}
}
function activateFirstTab() {
const first = ul.find("li.red-ui-tab:not(.hide-tab)").first();
if (first.length > 0) {
activateTab(first.find("a"));
}
}
function activateLastTab() {
const last = ul.find("li.red-ui-tab:not(.hide-tab)").last();
if (last.length > 0) {
activateTab(last.find("a"));
}
}
function findPreviousVisibleTab(li) {
if (!li) {
li = ul.find("li.active");
@ -963,6 +977,8 @@ RED.tabs = (function() {
},
removeTab: removeTab,
activateTab: activateTab,
firstTab: activateFirstTab,
lastTab: activateLastTab,
nextTab: activateNextTab,
previousTab: activatePreviousTab,
resize: updateTabWidths,

View File

@ -514,6 +514,20 @@ RED.workspaces = (function() {
workspaceIndex = 0
})
RED.actions.add("core:show-first-tab", function () {
const oldActive = activeWorkspace;
workspace_tabs.firstTab();
if (oldActive !== activeWorkspace) {
addToViewStack(oldActive);
}
});
RED.actions.add("core:show-last-tab", function () {
const oldActive = activeWorkspace;
workspace_tabs.lastTab();
if (oldActive !== activeWorkspace) {
addToViewStack(oldActive);
}
});
RED.actions.add("core:show-next-tab",function() {
var oldActive = activeWorkspace;
workspace_tabs.nextTab();