aboutsummaryrefslogtreecommitdiff
path: root/src/content/components/top-content
diff options
context:
space:
mode:
Diffstat (limited to 'src/content/components/top-content')
-rw-r--r--src/content/components/top-content/find.js23
-rw-r--r--src/content/components/top-content/index.js4
2 files changed, 26 insertions, 1 deletions
diff --git a/src/content/components/top-content/find.js b/src/content/components/top-content/find.js
new file mode 100644
index 0000000..6696f00
--- /dev/null
+++ b/src/content/components/top-content/find.js
@@ -0,0 +1,23 @@
+import * as findActions from 'content/actions/find';
+import messages from 'shared/messages';
+
+export default class FindComponent {
+ constructor(win, store) {
+ this.win = win;
+ this.store = store;
+
+ messages.onMessage(this.onMessage.bind(this));
+ }
+
+ onMessage(message) {
+ let state = this.store.getState().find;
+ switch (message.type) {
+ case messages.CONSOLE_ENTER_FIND:
+ return this.store.dispatch(findActions.next(message.text));
+ case messages.FIND_NEXT:
+ return this.store.dispatch(findActions.next(state.keyword));
+ case messages.FIND_PREV:
+ return this.store.dispatch(findActions.prev(state.keyword));
+ }
+ }
+}
diff --git a/src/content/components/top-content/index.js b/src/content/components/top-content/index.js
index 5124f83..cf21ec4 100644
--- a/src/content/components/top-content/index.js
+++ b/src/content/components/top-content/index.js
@@ -1,5 +1,6 @@
import CommonComponent from '../common';
import FollowController from './follow-controller';
+import FindComponent from './find';
import * as consoleFrames from '../../console-frames';
import * as addonActions from '../../actions/addon';
import messages from 'shared/messages';
@@ -14,6 +15,7 @@ export default class TopContent {
new CommonComponent(win, store); // eslint-disable-line no-new
new FollowController(win, store); // eslint-disable-line no-new
+ new FindComponent(win, store); // eslint-disable-line no-new
// TODO make component
consoleFrames.initialize(this.win.document);
@@ -47,7 +49,7 @@ export default class TopContent {
onMessage(message) {
switch (message.type) {
- case messages.CONSOLE_HIDE_COMMAND:
+ case messages.CONSOLE_UNFOCUS:
this.win.focus();
consoleFrames.blur(window.document);
return Promise.resolve();