mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-23 20:17:03 +01:00
345aa09756
This PR is extracted from #23346 to address some unclear (I don't
understand) code-belonging concerns.
This PR needs to be backported, otherwise the `aria.js` is too buggy in
some cases. Since there would be two minor conflicts, I will do the
backport manually.
Before: the `aria.js` is still buggy in some cases.
After: tested with AppleVoice, Android TalkBack
* Fix incorrect dropdown init code
* Fix incorrect role element (the menu role should be on the `$menu`
element, but not on the `$focusable`)
* Fix the focus-show-click-hide problem on mobile. Now the language menu
works as expected
* Fix incorrect dropdown template function setting
* Clarify the logic in aria.js
* Hide item's tippy after menu gets hidden
* Fix incorrect tippy `setProps` after `destroy`
* Fix UI lag problem when page gets redirected during menu hiding
animation with screen reader
* Improve comments
* Implement the layout proposed by #19861
<details>
d74a7efb60/web_src/js/features/aria.md (L38-L47)
</details>
36 lines
1.6 KiB
Handlebars
36 lines
1.6 KiB
Handlebars
<footer role="group" aria-label="{{.locale.Tr "aria.footer"}}">
|
|
<div class="ui container">
|
|
<div class="ui left" role="contentinfo" aria-label="{{.locale.Tr "aria.footer.software"}}">
|
|
<a target="_blank" rel="noopener noreferrer" href="https://gitea.io">{{.locale.Tr "powered_by" "Gitea"}}</a>
|
|
{{if (or .ShowFooterVersion .PageIsAdmin)}}
|
|
{{.locale.Tr "version"}}:
|
|
{{if .IsAdmin}}
|
|
<a href="{{AppSubUrl}}/admin/config">{{AppVer}}</a>
|
|
{{else}}
|
|
{{AppVer}}
|
|
{{end}}
|
|
{{end}}
|
|
{{if and .TemplateLoadTimes ShowFooterTemplateLoadTime}}
|
|
{{.locale.Tr "page"}}: <strong>{{LoadTimes .PageStartTime}}</strong>
|
|
{{.locale.Tr "template"}}{{if .TemplateName}} {{.TemplateName}}{{end}}: <strong>{{call .TemplateLoadTimes}}</strong>
|
|
{{end}}
|
|
</div>
|
|
<div class="ui right links" role="group" aria-label="{{.locale.Tr "aria.footer.links"}}">
|
|
{{if .ShowFooterBranding}}
|
|
<a target="_blank" rel="noopener noreferrer" href="https://github.com/go-gitea/gitea">{{svg "octicon-mark-github"}}<span class="sr-only">GitHub</span></a>
|
|
{{end}}
|
|
<div class="ui language bottom floating slide up dropdown link item">
|
|
{{svg "octicon-globe"}}
|
|
<span>{{.locale.LangName}}</span>
|
|
<div class="menu language-menu">
|
|
{{range .AllLangs}}
|
|
<a lang="{{.Lang}}" data-url="{{AppSubUrl}}/?lang={{.Lang}}" class="item {{if eq $.locale.Lang .Lang}}active selected{{end}}">{{.Name}}</a>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
<a href="{{AssetUrlPrefix}}/js/licenses.txt">{{.locale.Tr "licenses"}}</a>
|
|
{{if .EnableSwagger}}<a href="{{AppSubUrl}}/api/swagger">API</a>{{end}}
|
|
{{template "custom/extra_links_footer" .}}
|
|
</div>
|
|
</div>
|
|
</footer>
|