diff --git a/background.js b/background.js index a236564..8dae225 100644 --- a/background.js +++ b/background.js @@ -2,7 +2,7 @@ import { createBookmarks, removeBookmarks } from "./bookmark.js"; import { saveRevision, getRevision } from "./revision.js"; const syncBookmarks = async (id, bookmark) => { - console.log('Syncing bookmarks!'); + console.log('Syncing bookmarks! id: ' + id + ' bookmark: ' + JSON.stringify(bookmark)); await saveRevision(); } @@ -17,9 +17,12 @@ const loadBookmarks = async () => { return; } + console.log('Different revision IDs found! Old: ' + data.revId + ' New:' + savedRev.revId); + + removeListeners(); - chrome.storage.sync.set({ revId: data.revId }); + await chrome.storage.sync.set({ revId: data.revId }); // TODO GD: "Raw" replacement, make this more efficient to avoid flickering for (var child of data.bookmarks[0].children) { @@ -35,8 +38,8 @@ function removeListeners() { chrome.bookmarks.onRemoved.removeListener(syncBookmarks); chrome.bookmarks.onChanged.removeListener(syncBookmarks); chrome.bookmarks.onMoved.removeListener(syncBookmarks); - chrome.bookmarks.onChildrenReordered.removeListener(syncBookmarks); - chrome.bookmarks.onImportEnded.removeListener(syncBookmarks); + chrome.bookmarks.onChildrenReordered.removeLisstener(syncBookmarks); + //chrome.bookmarks.onImportEnded.removeListener(syncBookmarks); } function addListeners() { @@ -45,9 +48,11 @@ function addListeners() { chrome.bookmarks.onChanged.addListener(syncBookmarks); chrome.bookmarks.onMoved.addListener(syncBookmarks); chrome.bookmarks.onChildrenReordered.addListener(syncBookmarks); - chrome.bookmarks.onImportEnded.addListener(syncBookmarks); + //chrome.bookmarks.onImportEnded.addListener(syncBookmarks); } +addListeners(); + loadBookmarks(); // TODO GD: Make this websocket based diff --git a/revision.js b/revision.js index 623de46..52f0586 100644 --- a/revision.js +++ b/revision.js @@ -1,5 +1,4 @@ export async function saveRevision() { - console.log('ASDF'); const tree = await chrome.bookmarks.getTree(); const apiUrl = await chrome.storage.sync.get('apiUrl'); const syncToken = await chrome.storage.sync.get("syncToken"); @@ -28,7 +27,7 @@ export async function saveRevision() { throw new Error(`HTTP error! Status: ${response.status}`); } const data = await response.json(); // Convert to JSON - chrome.storage.sync.set({ revId: data.revId }); + await chrome.storage.sync.set({ revId: data.revId }); } catch (e) { // TODO GD: Indicate error