aboutsummaryrefslogtreecommitdiff
path: root/src/background/actions
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2018-05-06 21:42:43 +0900
committerGitHub <noreply@github.com>2018-05-06 21:42:43 +0900
commit104a9666ff627b11ce7cf3a5bf096b1bc3437bc1 (patch)
tree4d995736429753d8c9d2892ef6195e6517777fc9 /src/background/actions
parent828ac8cd84ddae9565be67f56e452a416b305c7a (diff)
parentcf30ef0cd503b3b9dee882202d64ba9db9922ee3 (diff)
Merge pull request #386 from ueokande/addon-enabled-indicator
Addon enabled indicator
Diffstat (limited to 'src/background/actions')
-rw-r--r--src/background/actions/command.js2
-rw-r--r--src/background/actions/index.js3
-rw-r--r--src/background/actions/operation.js92
-rw-r--r--src/background/actions/tab.js11
4 files changed, 14 insertions, 94 deletions
diff --git a/src/background/actions/command.js b/src/background/actions/command.js
index 4c52bca..2f7305a 100644
--- a/src/background/actions/command.js
+++ b/src/background/actions/command.js
@@ -1,5 +1,5 @@
import actions from '../actions';
-import * as tabs from 'background/tabs';
+import * as tabs from '../shared/tabs';
import * as parsers from 'shared/commands/parsers';
import * as properties from 'shared/settings/properties';
diff --git a/src/background/actions/index.js b/src/background/actions/index.js
index 2bdaaf2..3833389 100644
--- a/src/background/actions/index.js
+++ b/src/background/actions/index.js
@@ -5,4 +5,7 @@ export default {
// Find
FIND_SET_KEYWORD: 'find.set.keyword',
+
+ // Tab
+ TAB_SELECTED: 'tab.selected',
};
diff --git a/src/background/actions/operation.js b/src/background/actions/operation.js
deleted file mode 100644
index 10c366f..0000000
--- a/src/background/actions/operation.js
+++ /dev/null
@@ -1,92 +0,0 @@
-import operations from 'shared/operations';
-import messages from 'shared/messages';
-import * as tabs from 'background/tabs';
-import * as zooms from 'background/zooms';
-
-const sendConsoleShowCommand = (tab, command) => {
- return browser.tabs.sendMessage(tab.id, {
- type: messages.CONSOLE_SHOW_COMMAND,
- command,
- });
-};
-
-// This switch statement is only gonna get longer as more
-// features are added, so disable complexity check
-/* eslint-disable complexity */
-const exec = (operation, tab) => {
- switch (operation.type) {
- case operations.TAB_CLOSE:
- return tabs.closeTab(tab.id);
- case operations.TAB_CLOSE_FORCE:
- return tabs.closeTabForce(tab.id);
- case operations.TAB_REOPEN:
- return tabs.reopenTab();
- case operations.TAB_PREV:
- return tabs.selectPrevTab(tab.index, operation.count);
- case operations.TAB_NEXT:
- return tabs.selectNextTab(tab.index, operation.count);
- case operations.TAB_FIRST:
- return tabs.selectFirstTab();
- case operations.TAB_LAST:
- return tabs.selectLastTab();
- case operations.TAB_PREV_SEL:
- return tabs.selectPrevSelTab();
- case operations.TAB_RELOAD:
- return tabs.reload(tab, operation.cache);
- case operations.TAB_PIN:
- return tabs.updateTabPinned(tab, true);
- case operations.TAB_UNPIN:
- return tabs.updateTabPinned(tab, false);
- case operations.TAB_TOGGLE_PINNED:
- return tabs.toggleTabPinned(tab);
- case operations.TAB_DUPLICATE:
- return tabs.duplicate(tab.id);
- case operations.ZOOM_IN:
- return zooms.zoomIn();
- case operations.ZOOM_OUT:
- return zooms.zoomOut();
- case operations.ZOOM_NEUTRAL:
- return zooms.neutral();
- case operations.COMMAND_SHOW:
- return sendConsoleShowCommand(tab, '');
- case operations.COMMAND_SHOW_OPEN:
- if (operation.alter) {
- // alter url
- return sendConsoleShowCommand(tab, 'open ' + tab.url);
- }
- return sendConsoleShowCommand(tab, 'open ');
- case operations.COMMAND_SHOW_TABOPEN:
- if (operation.alter) {
- // alter url
- return sendConsoleShowCommand(tab, 'tabopen ' + tab.url);
- }
- return sendConsoleShowCommand(tab, 'tabopen ');
- case operations.COMMAND_SHOW_WINOPEN:
- if (operation.alter) {
- // alter url
- return sendConsoleShowCommand(tab, 'winopen ' + tab.url);
- }
- return sendConsoleShowCommand(tab, 'winopen ');
- case operations.COMMAND_SHOW_BUFFER:
- return sendConsoleShowCommand(tab, 'buffer ');
- case operations.FIND_START:
- return browser.tabs.sendMessage(tab.id, {
- type: messages.CONSOLE_SHOW_FIND
- });
- case operations.CANCEL:
- return browser.tabs.sendMessage(tab.id, {
- type: messages.CONSOLE_HIDE,
- });
- case operations.PAGE_SOURCE:
- return browser.tabs.create({
- url: 'view-source:' + tab.url,
- index: tab.index + 1,
- openerTabId: tab.id,
- });
- default:
- return Promise.resolve();
- }
-};
-/* eslint-enable complexity */
-
-export { exec };
diff --git a/src/background/actions/tab.js b/src/background/actions/tab.js
index 3c642fd..0d439fd 100644
--- a/src/background/actions/tab.js
+++ b/src/background/actions/tab.js
@@ -1,3 +1,5 @@
+import actions from './index';
+
const openNewTab = (url, openerTabId, background = false, adjacent = false) => {
if (adjacent) {
return browser.tabs.query({
@@ -18,4 +20,11 @@ const openToTab = (url, tab) => {
return browser.tabs.update(tab.id, { url: url });
};
-export { openNewTab, openToTab };
+const selected = (tabId) => {
+ return {
+ type: actions.TAB_SELECTED,
+ tabId,
+ };
+};
+
+export { openNewTab, openToTab, selected };