From a0814a356fce9c5bf731633e7c43be106bce1792 Mon Sep 17 00:00:00 2001 From: Alexander Onnikov <Alexander.Onnikov@gmail.com> Date: Thu, 6 Oct 2022 13:21:38 +0700 Subject: [PATCH] Fix clipboard write for Safari (#2283) Signed-off-by: Alexander Onnikov <alexander.onnikov@xored.com> --- plugins/tracker-resources/src/issues.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/plugins/tracker-resources/src/issues.ts b/plugins/tracker-resources/src/issues.ts index bb03d592de..ae4ec9ee87 100644 --- a/plugins/tracker-resources/src/issues.ts +++ b/plugins/tracker-resources/src/issues.ts @@ -47,7 +47,18 @@ export async function copyToClipboard (object: Issue, ev: Event, { type }: { typ default: return } - await navigator.clipboard.writeText(text) + + try { + // Chromium + await navigator.clipboard.writeText(text) + } catch { + // Safari specific behavior + // see https://bugs.webkit.org/show_bug.cgi?id=222262 + const clipboardItem = new ClipboardItem({ + 'text/plain': Promise.resolve(text) + }) + await navigator.clipboard.write([clipboardItem]) + } } export function generateIssueShortLink (issueId: string): string {