mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-11-30 05:46:09 +01:00
233a399706
Backport #23307 Close #23265, the code editor diff preview has been broken for long time. * Fix the regression for `data-line-num` * `.code-diff` is necessary to show the line number * Fix the regression for #12434 * The diff: [12434](https://github.com/go-gitea/gitea/pull/12434/files?diff=unified&w=1) * It hides the Type(4) (aka HunkHeader) for unexpected cases. Diff with ignoring whitespaces: https://github.com/go-gitea/gitea/pull/23307/files?diff=unified&w=1 Before: see the issue #23265 After: ![image](https://user-images.githubusercontent.com/2114189/222942810-286dc9af-0b39-4e9d-8585-8c299b881241.png) Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
60 lines
3.7 KiB
Handlebars
60 lines
3.7 KiB
Handlebars
{{$file := .file}}
|
|
{{range $j, $section := $file.Sections}}
|
|
{{range $k, $line := $section.Lines}}
|
|
<tr class="{{DiffLineTypeToStr .GetType}}-code nl-{{$k}} ol-{{$k}}" data-line-type="{{DiffLineTypeToStr .GetType}}">
|
|
{{if eq .GetType 4}}
|
|
{{if $.root.AfterCommitID}}
|
|
<td colspan="2" class="lines-num">
|
|
{{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}}
|
|
<a role="button" class="blob-excerpt" data-url="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}" data-query="{{$line.GetBlobExcerptQuery}}&style=unified&direction=down&wiki={{$.root.PageIsWiki}}" data-anchor="diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}">
|
|
{{svg "octicon-fold-down"}}
|
|
</a>
|
|
{{end}}
|
|
{{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 4)}}
|
|
<a role="button" class="blob-excerpt" data-url="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}" data-query="{{$line.GetBlobExcerptQuery}}&style=unified&direction=up&wiki={{$.root.PageIsWiki}}" data-anchor="diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}">
|
|
{{svg "octicon-fold-up"}}
|
|
</a>
|
|
{{end}}
|
|
{{if eq $line.GetExpandDirection 2}}
|
|
<a role="button" class="blob-excerpt" data-url="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}" data-query="{{$line.GetBlobExcerptQuery}}&style=unified&direction=&wiki={{$.root.PageIsWiki}}" data-anchor="diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}">
|
|
{{svg "octicon-fold"}}
|
|
</a>
|
|
{{end}}
|
|
</td>
|
|
{{else}}
|
|
{{/* for code file preview page or comment diffs on pull comment pages, do not show the expansion arrows */}}
|
|
<td colspan="2" class="lines-num"></td>
|
|
{{end}}
|
|
{{else}}
|
|
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$file.NameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
|
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$file.NameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
|
{{end}}
|
|
{{$inlineDiff := $section.GetComputedInlineDiffFor $line $.root.locale -}}
|
|
<td class="lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}</td>
|
|
<td class="lines-type-marker"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
|
{{if eq .GetType 4}}
|
|
<td class="chroma lines-code blob-hunk">{{/*
|
|
*/}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.root.locale}}{{/*
|
|
*/}}</td>
|
|
{{else}}
|
|
<td class="chroma lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}">{{/*
|
|
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/*
|
|
*/}}<a class="ui primary button add-code-comment add-code-comment-{{if $line.RightIdx}}right{{else}}left{{end}}{{if (not $line.CanComment)}} invisible{{end}}" data-side="{{if $line.RightIdx}}right{{else}}left{{end}}" data-idx="{{if $line.RightIdx}}{{$line.RightIdx}}{{else}}{{$line.LeftIdx}}{{end}}">{{/*
|
|
*/}}{{svg "octicon-plus"}}{{/*
|
|
*/}}</a>{{/*
|
|
*/}}{{end}}{{/*
|
|
*/}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.root.locale}}{{/*
|
|
*/}}</td>
|
|
{{end}}
|
|
</tr>
|
|
{{if gt (len $line.Comments) 0}}
|
|
<tr class="add-comment" data-line-type="{{DiffLineTypeToStr .GetType}}">
|
|
<td colspan="3" class="lines-num"></td>
|
|
<td class="add-comment-left add-comment-right" colspan="5">
|
|
{{template "repo/diff/conversation" mergeinto $.root "comments" $line.Comments}}
|
|
</td>
|
|
</tr>
|
|
{{end}}
|
|
{{end}}
|
|
{{end}}
|