aboutsummaryrefslogtreecommitdiff
path: root/src/content/presenters
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2019-05-19 10:50:49 +0900
committerShin'ya Ueoka <ueokande@i-beam.org>2019-05-19 10:50:49 +0900
commitc81b82ee39cc05d06597e7cd024de448894efe43 (patch)
tree269611c57413e1795250bc743e4571e469682426 /src/content/presenters
parent4be04628e19392d8da9688d538cc3374e91005d8 (diff)
Make routes
Diffstat (limited to 'src/content/presenters')
-rw-r--r--src/content/presenters/ConsoleFramePresenter.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/content/presenters/ConsoleFramePresenter.ts b/src/content/presenters/ConsoleFramePresenter.ts
new file mode 100644
index 0000000..3c7477b
--- /dev/null
+++ b/src/content/presenters/ConsoleFramePresenter.ts
@@ -0,0 +1,25 @@
+export default interface ConsoleFramePresenter {
+ initialize(): void;
+
+ blur(): void;
+
+ // eslint-disable-next-line semi
+}
+
+export class ConsoleFramePresenterImpl implements ConsoleFramePresenter {
+ initialize(): void {
+ let iframe = document.createElement('iframe');
+ iframe.src = browser.runtime.getURL('build/console.html');
+ iframe.id = 'vimvixen-console-frame';
+ iframe.className = 'vimvixen-console-frame';
+ document.body.append(iframe);
+ }
+
+ blur(): void {
+ let ele = document.getElementById('vimvixen-console-frame');
+ if (!ele) {
+ throw new Error('console frame not created');
+ }
+ ele.blur();
+ }
+}