Change event listener to copy event, refactor clipboard read delay
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
(function() {
|
||||
// 'use strict';
|
||||
function isShareLink(url) {
|
||||
// test if input is a share link, return True or False
|
||||
const regex = /https:\/\/youtu\.be\/[A-Za-z0-9\_-]+\?si=.+/i;
|
||||
@@ -18,14 +17,9 @@
|
||||
return(url)
|
||||
}
|
||||
|
||||
function sleep(ms) {
|
||||
// sleep for half a second
|
||||
return new Promise(resolve => setTimeout(resolve, ms));
|
||||
}
|
||||
|
||||
async function onMouseUp() {
|
||||
async function shareCleaner() {
|
||||
// delay clipboard read slightly because of page script nonsense
|
||||
await sleep(500);
|
||||
await new Promise((resolve, reject) => setTimeout(resolve, 50));
|
||||
|
||||
let clipText = await navigator.clipboard.readText();
|
||||
let newText = cleanUrl(clipText);
|
||||
@@ -40,6 +34,6 @@
|
||||
clipText = undefined;
|
||||
newText = undefined;
|
||||
}
|
||||
// run whenever MOUSE1 is released
|
||||
document.addEventListener('mouseup', onMouseUp, false);
|
||||
// run whenever copy event is detected
|
||||
document.addEventListener('copy', shareCleaner, false);
|
||||
})();
|
||||
|
Reference in New Issue
Block a user