A fork of https://github.com/ueokande/vim-vixen
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
903 B
39 lines
903 B
import messages from 'shared/messages'; |
|
|
|
const yank = (win) => { |
|
let input = win.document.createElement('input'); |
|
win.document.body.append(input); |
|
|
|
input.style.position = 'fixed'; |
|
input.style.top = '-100px'; |
|
input.value = win.location.href; |
|
input.select(); |
|
|
|
win.document.execCommand('copy'); |
|
|
|
input.remove(); |
|
}; |
|
|
|
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 };
|
|
|