aboutsummaryrefslogtreecommitdiff
path: root/src/background/actions
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2018-01-11 20:22:49 +0900
committerShin'ya Ueoka <ueokande@i-beam.org>2018-01-11 21:27:41 +0900
commitfad8f96a663d83792138cc986474ec4228b6c6c9 (patch)
tree083a7c9dcd4e85daef7f8323067454b48730c6e6 /src/background/actions
parentbefcff973aa0fd9b0f3a73932a39d36e9eb85bf2 (diff)
implement set option
Diffstat (limited to 'src/background/actions')
-rw-r--r--src/background/actions/command.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/background/actions/command.js b/src/background/actions/command.js
index f11c61b..4c52bca 100644
--- a/src/background/actions/command.js
+++ b/src/background/actions/command.js
@@ -1,5 +1,7 @@
+import actions from '../actions';
import * as tabs from 'background/tabs';
import * as parsers from 'shared/commands/parsers';
+import * as properties from 'shared/settings/properties';
const openCommand = (url) => {
return browser.tabs.query({
@@ -37,6 +39,19 @@ const bufferCommand = (keywords) => {
});
};
+const setCommand = (args) => {
+ if (!args[0]) {
+ return Promise.resolve();
+ }
+
+ let [name, value] = parsers.parseSetOption(args[0], properties.types);
+ return {
+ type: actions.SETTING_SET_PROPERTY,
+ name,
+ value
+ };
+};
+
const exec = (line, settings) => {
let [name, args] = parsers.parseCommandLine(line);
@@ -53,6 +68,8 @@ const exec = (line, settings) => {
case 'b':
case 'buffer':
return bufferCommand(args);
+ case 'set':
+ return setCommand(args);
case '':
return Promise.resolve();
}