1
0
mirror of https://github.com/XFox111/TabsAsideExtension.git synced 2026-04-22 07:58:01 +03:00

Added "Restore without removing" feature

This commit is contained in:
Michael Gordeev
2020-04-02 03:43:44 +03:00
parent 5f9237bddc
commit c7a7d4e40d
4 changed files with 22 additions and 14 deletions
+2 -7
View File
@@ -162,15 +162,10 @@
line-height: initial !important;
}
.tabsAside.pane > section > div > div:first-child > div
{
display: none !important; /* TODO: Implement this menu */
}
.tabsAside.pane > section > div > div:first-child > div > nav
{
width: 200px !important;
margin-top: 10px !important;
width: 250px !important;
margin-top: 40px !important;
right: 50px !important;
}
+1
View File
@@ -108,6 +108,7 @@
cursor: pointer !important;
background-color: transparent !important;
border: none !important;
box-sizing: border-box !important;
font-size: medium !important;
text-align: start !important;
+14 -5
View File
@@ -141,8 +141,9 @@ function AddCollection(collection)
"<div>" +
"<button title='More...'>&#xE10C;</button>" +
"<nav>" +
"<button>Add tabs to favorites</button>" +
"<button>Share tabs</button>" +
"<button>Restore without removing</button>" +
"<button hidden>Add tabs to favorites</button>" +
"<button hidden>Share tabs</button>" +
"</nav>" +
"</div>" +
"<button title='Remove collection'>&#xE106;</button>" +
@@ -156,6 +157,11 @@ function AddCollection(collection)
i.onclick = function () { RestoreTabs(i.parentElement.parentElement) };
});
list.querySelectorAll("nav button:first-child").forEach(i =>
{
i.onclick = function () { RestoreTabs(i.parentElement.parentElement.parentElement.parentElement, false) };
});
list.querySelectorAll("div > div:last-child > div > span").forEach(i =>
{
i.onclick = function () {
@@ -173,14 +179,14 @@ function AddCollection(collection)
i.onclick = function () { RemoveTabs(i.parentElement.parentElement) };
});
document.querySelectorAll(".tabsAside.pane > section > div > div:first-child > div > nav > button:first-child").forEach(i =>
/*document.querySelectorAll(".tabsAside.pane > section > div > div:first-child > div > nav > button:first-child").forEach(i =>
{
i.onclick = function () { AddToFavorites(i.parentElement.parentElement.parentElement.parentElement) };
});
document.querySelectorAll(".tabsAside.pane > section > div > div:first-child > div > nav > button:last-child").forEach(i =>
{
i.onclick = function () { ShareTabs(i.parentElement.parentElement.parentElement.parentElement) };
});
});*/
document.querySelectorAll(".tabsAside.pane > section > div > div:last-child > div > div > button").forEach(i =>
{
@@ -193,7 +199,7 @@ function SetTabsAside()
chrome.runtime.sendMessage({ command: "saveTabs" });
}
function RestoreTabs(collectionData)
function RestoreTabs(collectionData, removeCollection = true)
{
chrome.runtime.sendMessage(
{
@@ -202,6 +208,9 @@ function RestoreTabs(collectionData)
},
function ()
{
if (!removeCollection)
return;
if (collectionData.parentElement.children.length < 3)
{
RemoveElement(collectionData);
+5 -2
View File
@@ -129,7 +129,7 @@ chrome.runtime.onMessage.addListener(function (message, sender, sendResponse)
SaveCollection();
break;
case "restoreTabs":
RestoreCollection(message.collectionIndex);
RestoreCollection(message.collectionIndex, message.removeCollection);
sendResponse();
break;
case "deleteTabs":
@@ -211,7 +211,7 @@ function DeleteCollection(collectionIndex)
UpdateTheme();
}
function RestoreCollection(collectionIndex)
function RestoreCollection(collectionIndex, removeCollection)
{
collections[collectionIndex].links.forEach(i =>
{
@@ -222,6 +222,9 @@ function RestoreCollection(collectionIndex)
});
});
if (!removeCollection)
return;
collections = collections.filter(i => i != collections[collectionIndex]);
localStorage.setItem("sets", JSON.stringify(collections));