background command from reducer
This commit is contained in:
parent
359fdb5288
commit
2c40d239f0
5 changed files with 46 additions and 68 deletions
|
@ -1,8 +1,9 @@
|
|||
import * as tabs from '../background/tabs';
|
||||
import * as zooms from '../background/zooms';
|
||||
import * as consoleActions from '../actions/console';
|
||||
import actions from '../actions';
|
||||
|
||||
const doCompletion = (command, keywords, sendto) => {
|
||||
const doCompletion = (command, keywords, sender) => {
|
||||
if (command === 'buffer') {
|
||||
return tabs.getCompletions(keywords).then((tabs) => {
|
||||
let items = tabs.map((tab) => {
|
||||
|
@ -18,20 +19,34 @@ const doCompletion = (command, keywords, sendto) => {
|
|||
items: items
|
||||
};
|
||||
return browser.tabs.sendMessage(
|
||||
sendto,
|
||||
sender,
|
||||
consoleActions.setCompletions([completions]));
|
||||
});
|
||||
}
|
||||
return Promise.resolve();
|
||||
};
|
||||
|
||||
|
||||
|
||||
export default function reducer(state, action = {}, sendto) {
|
||||
// TODO hide sendto object
|
||||
export default function reducer(state, action = {}, sender) {
|
||||
// TODO hide sender object
|
||||
switch (action.type) {
|
||||
case actions.BACKGROUND_REQUEST_COMPLETIONS:
|
||||
return doCompletion(action.command, action.keywords, sendto);
|
||||
return doCompletion(action.command, action.keywords, sender.tab.id);
|
||||
case actions.TABS_CLOSE:
|
||||
return tabs.closeTab(sender.tab.id);
|
||||
case actions.TABS_REOPEN:
|
||||
return tabs.reopenTab();
|
||||
case actions.TABS_PREV:
|
||||
return tabs.selectPrevTab(sender.tab.index, action.count);
|
||||
case actions.TABS_NEXT:
|
||||
return tabs.selectNextTab(sender.tab.index, action.count);
|
||||
case actions.TABS_RELOAD:
|
||||
return tabs.reload(sender.tab, action.cache);
|
||||
case actions.ZOOM_IN:
|
||||
return zooms.zoomIn();
|
||||
case actions.ZOOM_OUT:
|
||||
return zooms.zoomOut();
|
||||
case actions.ZOOM_NEUTRAL:
|
||||
return zooms.neutral();
|
||||
default:
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
|
Reference in a new issue