summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNorwin <noerw@users.noreply.github.com>2022-09-09 08:38:51 +0200
committerGitHub <noreply@github.com>2022-09-09 02:38:51 -0400
commit86ed47e622dabf5c27d60f00883fff46bd349d95 (patch)
treec33783514f2f2a4db77a58f1d5e1a54fcc5f67f8
parent5f127a729e570fafe9364ef1768c2b79afde7261 (diff)
downloadgitea-86ed47e622dabf5c27d60f00883fff46bd349d95.tar.gz
gitea-86ed47e622dabf5c27d60f00883fff46bd349d95.zip
Make the vscode clone link respect transport protocol (#20557)
-rw-r--r--templates/repo/clone_script.tmpl5
-rw-r--r--templates/repo/home.tmpl2
2 files changed, 6 insertions, 1 deletions
diff --git a/templates/repo/clone_script.tmpl b/templates/repo/clone_script.tmpl
index 48b7ad3299..afd90040fb 100644
--- a/templates/repo/clone_script.tmpl
+++ b/templates/repo/clone_script.tmpl
@@ -1,6 +1,8 @@
<script>
// synchronously set clone button states and urls here to avoid flickering
// on page load. initRepoCloneLink calls this when proto changes.
+ // this applies the protocol-dependant clone url to all elements with the
+ // `js-clone-url` and `js-clone-url-vsc` classes.
// TODO: This localStorage setting should be moved to backend user config
// so it's available during rendering, then this inline script can be removed.
(window.updateCloneStates = function() {
@@ -19,5 +21,8 @@
for (const el of document.getElementsByClassName('js-clone-url')) {
el[el.nodeName === 'INPUT' ? 'value' : 'textContent'] = link;
}
+ for (const el of document.getElementsByClassName('js-clone-url-vsc')) {
+ el['href'] = 'vscode://vscode.git/clone?url=' + encodeURIComponent(link);
+ }
})();
</script>
diff --git a/templates/repo/home.tmpl b/templates/repo/home.tmpl
index 69af36ac68..fe5af82d1a 100644
--- a/templates/repo/home.tmpl
+++ b/templates/repo/home.tmpl
@@ -126,7 +126,7 @@
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip" 16 "mr-3"}}{{.locale.Tr "repo.download_tar"}}</a>
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.bundle" rel="nofollow">{{svg "octicon-package" 16 "mr-3"}}{{.locale.Tr "repo.download_bundle"}}</a>
{{end}}
- <a class="item" href="vscode://vscode.git/clone?url={{$.RepoCloneLink.HTTPS}}">{{svg "gitea-vscode" 16 "mr-3"}}{{.locale.Tr "repo.clone_in_vsc"}}</a>
+ <a class="item js-clone-url-vsc" href="vscode://vscode.git/clone?url={{.CloneButtonOriginLink.HTTPS}}">{{svg "gitea-vscode" 16 "mr-3"}}{{.locale.Tr "repo.clone_in_vsc"}}</a>
</div>
</button>
</div>