diff options
author | Omar Rizwan <omar@omar.website> | 2021-02-19 10:02:39 -0800 |
---|---|---|
committer | Omar Rizwan <omar@omar.website> | 2021-02-19 10:02:39 -0800 |
commit | e24f0f8afaf21ec370339392fc0f94623222d8fe (patch) | |
tree | 2794656ad8478c6ac66f586d698b0f72b2c6676b /extension | |
parent | 2215ba8e41d29e9517f304334e14f03ce00a1402 (diff) | |
download | TabFS-e24f0f8afaf21ec370339392fc0f94623222d8fe.tar.gz TabFS-e24f0f8afaf21ec370339392fc0f94623222d8fe.zip |
active: refactor / simplify to use withTab
Diffstat (limited to 'extension')
-rw-r--r-- | extension/background.js | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/extension/background.js b/extension/background.js index 2c5b13f..6898fe6 100644 --- a/extension/background.js +++ b/extension/background.js @@ -238,6 +238,11 @@ router["/tabs/by-id"] = { router["/tabs/by-id/*/title.txt"] = withTab(tab => tab.title + "\n"); router["/tabs/by-id/*/text.txt"] = fromScript(`document.body.innerText`); router["/tabs/by-id/*/source.html"] = fromScript(`document.body.innerHTML`); + + // echo true > mnt/tabs/by-id/1644/active + // cat mnt/tabs/by-id/1644/active + router["/tabs/by-id/*/active"] = withTab(tab => JSON.stringify(tab.active) + '\n', + buf => ({ active: buf.trim() === "true" })); })(); (function() { let nextConsoleFh = 0; let consoleForFh = {}; @@ -355,25 +360,6 @@ router["/tabs/by-id/*/control"] = { }, async truncate({path, size}) { return {}; } }; -router["/tabs/by-id/*/active"] = { - // echo true > mnt/tabs/by-id/1644/active - // cat mnt/tabs/by-id/1644/active - async read({path, fh, offset, size}) { - const tabId = parseInt(pathComponent(path, -2)); - const tab = await browser.tabs.get(tabId); - const buf = (JSON.stringify(tab.active) + '\n').slice(offset, offset + size); - return { buf }; - }, - async write({path, buf}) { - if (buf.trim() === "true") { - const tabId = parseInt(pathComponent(path, -2)); - await browser.tabs.update(tabId, { active: true }); - } - return {size: stringToUtf8Array(buf).length}; - }, - async truncate({path, size}) { return {}; } -}; - // debugger/ : debugger-API-dependent (Chrome-only) (function() { if (!chrome.debugger) return; |