]> git.wh0rd.org - chrome-ext/tabs-backup.git/blobdiff - advanced.js
use padStart API
[chrome-ext/tabs-backup.git] / advanced.js
index 63109b6dd60ca46d4d75b09edfd0e9e615cf6d95..969ed0ed24c54c5bb6bc8675285c19556ad536ff 100644 (file)
@@ -43,11 +43,11 @@ document.addEventListener('DOMContentLoaded', function () {
 });
 
 function menu_ShowOptions () {
-       chrome.tabs.create({url:chrome.extension.getURL("options.html")});
+       chrome.runtime.openOptionsPage();
 }
 
 function menu_ShowAdvancedView() {
-       chrome.tabs.create({url:chrome.extension.getURL("advanced.html")});
+       chrome.tabs.create({url: "/advanced.html"});
 }
 
 function menu_ClearSelection () {
@@ -297,29 +297,6 @@ function insertBackupItem (backupName, backupObj, insertAtBeginning, doAnimation
        //      };
        //})(backupName);
 
-       //var deleteFuncHandler = (function(backupName, elem) {
-       //      return function(event) {
-                       /*if (!confirm("Delete backup '" + backupName + "'?")) {
-                               return;
-                       }*/
-
-       //              bootbox.confirm("Delete backup '" + backupName + "'?", function(confirmed) {
-       //                      if (confirmed) {
-       //                              chrome.extension.getBackgroundPage().deleteBackup(backupName, function() {
-
-       //                              });
-
-                                       //if (elem.parentNode) {
-                                       //  elem.parentNode.removeChild(elem);
-                                       //
-       //                              removeBackupItemDiv (backupName);
-       //                      }
-       //              });
-
-
-       //      };
-       //})(backupName, elem);
-
        if (insertAtBeginning && backupsDiv.childNodes.length > 0) {
                // some items already exist
                var firstNode = backupsDiv.childNodes[0];
@@ -675,7 +652,9 @@ function menu_backupNow() {
 
        lastTimeBackupNowClicked = new Date().getTime();
 
-       chrome.runtime.getBackgroundPage((bg) => bg.backupNowManual(function(success, backupName, backupObj) {
+       chrome.runtime.sendMessage({
+               action: 'backupNowManual',
+       }, function({success, backupName, backupObj}) {
                if (success) {
                        //updateBackupsList();
                        insertBackupItem (backupName, backupObj, true /*insertAtBeginning*/, true /*doAnimation*/);
@@ -685,23 +664,32 @@ function menu_backupNow() {
                } else {
                        alert('An error occured while creating the backup..');
                }
-       }));
+       });
 
 }
 
 function menu_restoreNow() {
-       chrome.runtime.getBackgroundPage((bg) => bg.restoreNow('full_backup'));
+       chrome.runtime.sendMessage({
+               action: 'restoreNow',
+               args: ['full_backup'],
+       });
 }
 
-//document.onload(function () {
-//var a = document.getElementById("myid");
-//a.innerHTML = "ciaociao";
-//});
-
-/*
-var storageLocal = chrome.storage.local;
-storageLocal.getBytesInUse(null, function(bytesInUse) {
-       var elem = document.createElement("div");
-       elem.innerHTML = "<b>BYTES IN USE: " + bytesInUse + "</b><br />";
-       document.body.appendChild(elem);
-});*/
+/**
+ * Callback from other pages (like the background).
+ */
+chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
+       console.log(`Got message from ${sender.id}: action=${request.action}`, request);
+
+       let asyncResponse = false;
+       switch (request?.action) {
+               case 'insertBackupItem':
+                       insertBackupItem(...request.args);
+                       break;
+
+               case 'removeBackupItemDiv':
+                       removeBackupItemDiv(...request.args);
+                       break;
+       }
+       return asyncResponse;
+});