diff options
author | silverwind <me@silverwind.io> | 2022-11-21 10:59:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-21 17:59:42 +0800 |
commit | c2fb27beb4a0f9a9ad1478937439bcf4c43aff4a (patch) | |
tree | 0f690c4aeecb6caa0a8cb24623141f3e569b8e72 /routers | |
parent | e4eaa68a2b2355c7333406fdcbb8b118677b95df (diff) | |
download | gitea-c2fb27beb4a0f9a9ad1478937439bcf4c43aff4a.tar.gz gitea-c2fb27beb4a0f9a9ad1478937439bcf4c43aff4a.zip |
Improvements for Content Copy (#21842)
It now supports copying Markdown, SVG and Images (not in Firefox
currently because of lacking
[`ClipboardItem`](https://developer.mozilla.org/en-US/docs/Web/API/ClipboardItem)
support, but can be enabled in `about:config` and works). It will fetch
the data if in a rendered view or when it's an image.
Followup to https://github.com/go-gitea/gitea/pull/21629.
Diffstat (limited to 'routers')
-rw-r--r-- | routers/web/repo/view.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/routers/web/repo/view.go b/routers/web/repo/view.go index 7a9e44ff5e..1d1ba25064 100644 --- a/routers/web/repo/view.go +++ b/routers/web/repo/view.go @@ -443,7 +443,12 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st ctx.Data["IsRepresentableAsText"] = isRepresentableAsText ctx.Data["IsDisplayingSource"] = isDisplayingSource ctx.Data["IsDisplayingRendered"] = isDisplayingRendered - ctx.Data["IsTextSource"] = isTextFile || isDisplayingSource + + isTextSource := isTextFile || isDisplayingSource + ctx.Data["IsTextSource"] = isTextSource + if isTextSource { + ctx.Data["CanCopyContent"] = true + } // Check LFS Lock lfsLock, err := git_model.GetTreePathLock(ctx.Repo.Repository.ID, ctx.Repo.TreePath) @@ -474,6 +479,7 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st case isRepresentableAsText: if st.IsSvgImage() { ctx.Data["IsImageFile"] = true + ctx.Data["CanCopyContent"] = true ctx.Data["HasSourceRenderedToggle"] = true } @@ -608,6 +614,7 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st ctx.Data["IsAudioFile"] = true case st.IsImage() && (setting.UI.SVG.Enabled || !st.IsSvgImage()): ctx.Data["IsImageFile"] = true + ctx.Data["CanCopyContent"] = true default: if fileSize >= setting.UI.MaxDisplayFileSize { ctx.Data["IsFileTooLarge"] = true |