Skip to content

Commit 4117a44

Browse files
authored
Lazy-load issue reviewers and assignees avatars (#13526)
The avatars inside the dropdowns were previously fetched every time a Pull Request was opened resulting in potential unnecessary downloads. This lazy-loads through the newish loading=lazy attribute. Also did a few minor adjustments on the file.
1 parent 6838bac commit 4117a44

File tree

1 file changed

+14
-10
lines changed

1 file changed

+14
-10
lines changed

templates/repo/issue/view_content/sidebar.tmpl

+14-10
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@
2626
<a class="{{if not .CanChange}}ui poping up{{end}} item {{if .Checked}} checked {{end}} {{if not .CanChange}}ban-change{{end}}" href="#" data-id="{{.ItemID}}" data-id-selector="#review_request_{{.ItemID}}" {{if not .CanChange}} data-content="{{$.i18n.Tr "repo.issues.remove_request_review_block"}}"{{end}}>
2727
<span class="octicon-check {{if not .Checked}}invisible{{end}}">{{svg "octicon-check"}}</span>
2828
<span class="text">
29-
<img class="ui avatar image" src="{{.User.RelAvatarLink}}"> {{.User.GetDisplayName}}
29+
<img class="ui avatar image mr-2" loading="lazy" src="{{.User.RelAvatarLink}}">
30+
{{.User.GetDisplayName}}
3031
</span>
3132
</a>
3233
{{end}}
@@ -52,9 +53,12 @@
5253
<span class="no-select item {{if or .OriginalReviews .PullReviewers}}hide{{end}}">{{.i18n.Tr "repo.issues.new.no_reviewers"}}</span>
5354
<div class="selected">
5455
{{range .PullReviewers}}
55-
<div class="item" style="margin-bottom: 10px;">
56+
<div class="item mb-2">
5657
{{if .User}}
57-
<a href="{{.User.HomeLink}}"><img class="ui avatar image" src="{{.User.RelAvatarLink}}">&nbsp;{{.User.GetDisplayName}}</a>
58+
<a href="{{.User.HomeLink}}">
59+
<img class="ui avatar image mr-2" src="{{.User.RelAvatarLink}}">
60+
{{.User.GetDisplayName}}
61+
</a>
5862
{{else if .Team}}
5963
<span class="text">{{svg "octicon-people" 16 "teamavatar"}}{{$.Issue.Repo.OwnerName}}/{{.Team.Name}}</span>
6064
{{end}}
@@ -253,11 +257,7 @@
253257
{{range .Assignees}}
254258

255259
{{$AssigneeID := .ID}}
256-
<a class="item{{range $.Issue.Assignees}}
257-
{{if eq .ID $AssigneeID}}
258-
checked
259-
{{end}}
260-
{{end}}" href="#" data-id="{{.ID}}" data-id-selector="#assignee_{{.ID}}">
260+
<a class="item{{range $.Issue.Assignees}}{{if eq .ID $AssigneeID}} checked{{end}}{{end}}" href="#" data-id="{{.ID}}" data-id-selector="#assignee_{{.ID}}">
261261
{{$checked := false}}
262262
{{range $.Issue.Assignees}}
263263
{{if eq .ID $AssigneeID}}
@@ -266,7 +266,8 @@
266266
{{end}}
267267
<span class="octicon-check {{if not $checked}}invisible{{end}}">{{svg "octicon-check"}}</span>
268268
<span class="text">
269-
<img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.GetDisplayName}}
269+
<img class="ui avatar image mr-2" loading="lazy" src="{{.RelAvatarLink}}">
270+
{{.GetDisplayName}}
270271
</span>
271272
</a>
272273
{{end}}
@@ -277,7 +278,10 @@
277278
<div class="selected">
278279
{{range .Issue.Assignees}}
279280
<div class="item" style="margin-bottom: 10px;">
280-
<a href="{{$.RepoLink}}/{{if $.Issue.IsPull}}pulls{{else}}issues{{end}}?assignee={{.ID}}"><img class="ui avatar image" src="{{.RelAvatarLink}}">&nbsp;{{.GetDisplayName}}</a>
281+
<a href="{{$.RepoLink}}/{{if $.Issue.IsPull}}pulls{{else}}issues{{end}}?assignee={{.ID}}">
282+
<img class="ui avatar image mr-2" src="{{.RelAvatarLink}}">
283+
{{.GetDisplayName}}
284+
</a>
281285
</div>
282286
{{end}}
283287
</div>

0 commit comments

Comments
 (0)