From 458dc8bf45069a68f5807ae68a7e5d6499d4b67a Mon Sep 17 00:00:00 2001 From: Chris Jordan Date: Thu, 2 Nov 2023 18:30:08 -0400 Subject: [PATCH] ugly fix because chrome introduced restrictions on settingg protocols for the URL API --- src/neuroglancer/datasource/state_share.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/neuroglancer/datasource/state_share.ts b/src/neuroglancer/datasource/state_share.ts index fb8fa99cca..3d3d3af3d1 100644 --- a/src/neuroglancer/datasource/state_share.ts +++ b/src/neuroglancer/datasource/state_share.ts @@ -73,8 +73,10 @@ export class StateShare extends RefCounted { // call it a widget? no because it }, responseJson) .then((res) => { const stateUrl = new URL(res); - stateUrl.protocol = protocol; // copy protocol in case it contains authentication type - const link = `${window.location.origin}/#!${stateUrl}`; + // ugly fix because chrome introduced restrictions on settingg protocols for the URL API + const [_, noProtocol] = stateUrl.toString().split(stateUrl.protocol); + const stateUrlWithFixedProtocol = `${protocol}$${noProtocol}`; + const link = `${window.location.origin}/#!${stateUrlWithFixedProtocol}`; navigator.clipboard.writeText(link).then(() => { StatusMessage.showTemporaryMessage('Share link copied to clipboard'); });