summaryrefslogtreecommitdiffstats
path: root/web_src/js/features/clipboard.js
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2021-11-12 20:37:45 +0800
committerGitHub <noreply@github.com>2021-11-12 20:37:45 +0800
commit7f802631c54d2e91301158380b273b872d62bd80 (patch)
treed2c138ae0c01fa557a0601829436bae06ac7861c /web_src/js/features/clipboard.js
parent0db7a32b9233d2c0039df4e89356ef0cbcef6dae (diff)
downloadgitea-7f802631c54d2e91301158380b273b872d62bd80.tar.gz
gitea-7f802631c54d2e91301158380b273b872d62bd80.zip
Fix some incorrect async functions, improve frontend document. (#17597)
Diffstat (limited to 'web_src/js/features/clipboard.js')
-rw-r--r--web_src/js/features/clipboard.js22
1 files changed, 13 insertions, 9 deletions
diff --git a/web_src/js/features/clipboard.js b/web_src/js/features/clipboard.js
index 8d28b4e281..89aface93a 100644
--- a/web_src/js/features/clipboard.js
+++ b/web_src/js/features/clipboard.js
@@ -46,7 +46,7 @@ function fallbackCopyToClipboard(text) {
}
export default function initGlobalCopyToClipboardListener() {
- document.addEventListener('click', async (e) => {
+ document.addEventListener('click', (e) => {
let target = e.target;
// in case <button data-clipboard-text><svg></button>, so we just search up to 3 levels for performance.
for (let i = 0; i < 3 && target; i++) {
@@ -58,16 +58,20 @@ export default function initGlobalCopyToClipboardListener() {
}
if (text) {
e.preventDefault();
- try {
- await navigator.clipboard.writeText(text);
- onSuccess(target);
- } catch {
- if (fallbackCopyToClipboard(text)) {
+
+ (async() => {
+ try {
+ await navigator.clipboard.writeText(text);
onSuccess(target);
- } else {
- onError(target);
+ } catch {
+ if (fallbackCopyToClipboard(text)) {
+ onSuccess(target);
+ } else {
+ onError(target);
+ }
}
- }
+ })();
+
break;
}
target = target.parentElement;