This code adds a pair of context menu items that you can use to switch between two popups. Note that you'll need the "contextMenus" permission set in the extension's manifest to create context menu items.
function onCreated() {
if (browser.runtime.lastError) {
console.log("error creating item:", browser.runtime.lastError);
} else {
console.log("item created successfully");
}
}
browser.contextMenus.create(
{
id: "popup-1",
type: "radio",
title: "Popup 1",
contexts: ["all"],
checked: true,
},
onCreated
);
browser.contextMenus.create(
{
id: "popup-2",
type: "radio",
title: "Popup 2",
contexts: ["all"],
checked: false,
},
onCreated
);
browser.contextMenus.onClicked.addListener((info, tab) => {
if (info.menuItemId === "popup-1") {
browser.action.setPopup({ popup: "/popup/popup1.html" });
} else if (info.menuItemId === "popup-2") {
browser.action.setPopup({ popup: "/popup/popup2.html" });
}
});