From 3a05b9300e104b8729644b1519e4a80d139fe96c Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Sun, 19 Nov 2017 12:27:07 +0900 Subject: Bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index 5fd1c1a..532eaac 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.5", + "version": "0.6", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3 From 627a58565ded70fc8a6e13087283701355cddb82 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Tue, 28 Nov 2017 21:41:38 +0900 Subject: Bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index 532eaac..665c10f 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.6", + "version": "0.7", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3 From 2661e88e86ac269b17a5f37236d2241311ad5bef Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Sat, 30 Dec 2017 10:55:26 +0900 Subject: Bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index 665c10f..78479c2 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.7", + "version": "0.8", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3 From 54a7662cd1e7372910e9ce81aae1a904f3b26c82 Mon Sep 17 00:00:00 2001 From: usk Date: Wed, 3 Jan 2018 07:19:25 +0900 Subject: open clipboard's URL in current/new tab --- QA.md | 2 ++ README.md | 2 ++ manifest.json | 3 ++- src/content/actions/operation.js | 2 ++ src/content/urls.js | 26 +++++++++++++++++++++++++- src/settings/components/form/keymaps-form.jsx | 2 ++ src/shared/operations.js | 3 ++- src/shared/settings/default.js | 2 ++ 8 files changed, 39 insertions(+), 3 deletions(-) (limited to 'manifest.json') diff --git a/QA.md b/QA.md index 1a0839e..1c06861 100644 --- a/QA.md +++ b/QA.md @@ -46,6 +46,8 @@ The behaviors of the console are tested in [Console section](#consoles). - [ ] zi, zo: zoom-in and zoom-out - [ ] zz: set zoom level as default - [ ] y: yank current URL and show a message +- [ ] p: open clipbord's URL in current tab +- [ ] P: open clipbord's URL in new tab - [ ] Toggle enabled/disabled of plugin bu Shift+Esc ### Following links diff --git a/README.md b/README.md index fdc48d4..a249ada 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,8 @@ The default mappings are as follows: - zi, zo: zoom-in/zoom-out - zz: Set default zoom level - y: copy URL in current tab +- p: open clipbord's URL in current tab +- P: open clipbord's URL in new tab - Shift+Esc: enable or disable the add-on in current tab. ### Console commands diff --git a/manifest.json b/manifest.json index 78479c2..02d8589 100644 --- a/manifest.json +++ b/manifest.json @@ -30,7 +30,8 @@ "history", "sessions", "storage", - "tabs" + "tabs", + "clipboardRead" ], "web_accessible_resources": [ "build/console.html", diff --git a/src/content/actions/operation.js b/src/content/actions/operation.js index 767f14b..0a5cd97 100644 --- a/src/content/actions/operation.js +++ b/src/content/actions/operation.js @@ -60,6 +60,8 @@ const exec = (operation) => { type: messages.CONSOLE_SHOW_INFO, text: 'Current url yanked', }); + case operations.URLS_PASTE: + return urls.paste(window, operation.newTab ? operation.newTab : false); default: browser.runtime.sendMessage({ type: messages.BACKGROUND_OPERATION, diff --git a/src/content/urls.js b/src/content/urls.js index 8f8a1ac..9b7b284 100644 --- a/src/content/urls.js +++ b/src/content/urls.js @@ -1,3 +1,5 @@ +import messages from 'shared/messages'; + const yank = (win) => { let input = win.document.createElement('input'); win.document.body.append(input); @@ -12,4 +14,26 @@ const yank = (win) => { input.remove(); }; -export { yank }; +const paste = (win, newTab) => { + let textarea = win.document.createElement('textarea'); + win.document.body.append(textarea); + + textarea.style.position = 'fixed'; + textarea.style.top = '-100px'; + textarea.contentEditable = 'true'; + textarea.focus(); + + if (win.document.execCommand('paste')) { + if (/^(https?|ftp):\/\//.test(textarea.textContent)) { + browser.runtime.sendMessage({ + type: messages.OPEN_URL, + url: textarea.textContent, + newTab: newTab ? newTab : false, + }); + } + } + + textarea.remove(); +}; + +export { yank, paste }; diff --git a/src/settings/components/form/keymaps-form.jsx b/src/settings/components/form/keymaps-form.jsx index c399570..eb77e52 100644 --- a/src/settings/components/form/keymaps-form.jsx +++ b/src/settings/components/form/keymaps-form.jsx @@ -52,6 +52,8 @@ const KeyMapFields = [ ], [ ['addon.toggle.enabled', 'Enable or disable'], ['urls.yank', 'Copy current URL'], + ['urls.paste?{"newTab":false}', 'Open clipboard\'s URL in current tab'], + ['urls.paste?{"newTab":true}', 'Open clipboard\'s URL in new tab'], ['zoom.in', 'Zoom-in'], ['zoom.out', 'Zoom-out'], ['zoom.neutral', 'Reset zoom level'], diff --git a/src/shared/operations.js b/src/shared/operations.js index 4c221ba..7334369 100644 --- a/src/shared/operations.js +++ b/src/shared/operations.js @@ -49,8 +49,9 @@ export default { ZOOM_OUT: 'zoom.out', ZOOM_NEUTRAL: 'zoom.neutral', - // Url yank + // Url yank/paste URLS_YANK: 'urls.yank', + URLS_PASTE: 'urls.paste', // Find FIND_START: 'find.start', diff --git a/src/shared/settings/default.js b/src/shared/settings/default.js index d187565..6b71717 100644 --- a/src/shared/settings/default.js +++ b/src/shared/settings/default.js @@ -44,6 +44,8 @@ export default { "gu": { "type": "navigate.parent" }, "gU": { "type": "navigate.root" }, "y": { "type": "urls.yank" }, + "p": { "type": "urls.paste", "newTab": false }, + "P": { "type": "urls.paste", "newTab": true }, "/": { "type": "find.start" }, "n": { "type": "find.next" }, "N": { "type": "find.prev" }, -- cgit v1.2.3 From c1a7598ef37a25e2788d72f0f0163ef4bdfb6490 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Sat, 20 Jan 2018 21:42:11 +0900 Subject: bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index 02d8589..59c44fe 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.8", + "version": "0.9", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3 From 3c4deaf76aa4e311cb94dc8e793799007af06e0f Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Sat, 20 Jan 2018 23:41:36 +0900 Subject: bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index 59c44fe..c5989ac 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.9", + "version": "0.10", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3 From 059ecb3cd4c68478e53258f94b3c3cd9c6170d57 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Tue, 23 Jan 2018 21:13:37 +0900 Subject: bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index c5989ac..305eb67 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.10", + "version": "0.11", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3 From 0564eb0e8ba7fca3fb2f105d0734dd4203bf1c50 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Thu, 8 Mar 2018 21:33:50 +0900 Subject: bump a version --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifest.json') diff --git a/manifest.json b/manifest.json index 305eb67..1a2f78d 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "Vim Vixen", "description": "Vim Vixen", - "version": "0.11", + "version": "0.12", "icons": { "48": "resources/icon_48x48.png", "96": "resources/icon_96x96.png" -- cgit v1.2.3