mirror of
https://github.com/go-gitea/gitea.git
synced 2026-10-26 06:16:56 +09:00
Replace Fomantic's hard-forked jQuery modal with native `<dialog>` elements, advancing https://github.com/go-gitea/gitea/issues/29849. The UI is visually unchanged. Dialogs open with `show()` over an `inert` page, so tooltips, popups and toasts mounted on `<body>` stay usable above them, unlike with `showModal()` (https://github.com/whatwg/html/issues/9936). - Remove the Fomantic modal and dimmer, add `showModal` and `hideModal` - Declare modals as `<dialog class="modal-dialog">`, shown inside a `.modal-backdrop`, instead of `ui modal` with its unused size classes - Remove two modals that could never be opened - Block the page while a modal is open, close the topmost one on Escape and restore focus to its opener - Allow stacked modals, use a confirm modal instead of `window.confirm` for deleting content history - Hide popups and toasts when a modal opens or closes - Keep the release notes modal open when generating notes fails Fixes: https://github.com/go-gitea/gitea/issues/39643 Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
27 lines
1.1 KiB
Handlebars
27 lines
1.1 KiB
Handlebars
{{/* Two buttons (negative, positive):
|
|
* ModalButtonTypes: "yes" (default) or "confirm"
|
|
* ModalButtonCancelText
|
|
* ModalButtonOkText
|
|
|
|
Single danger button (GitHub-like):
|
|
* ModalButtonDangerText "This action will destroy your data"
|
|
|
|
The ".ok.button" and ".cancel.button" selectors are also used by "modules/modal.ts"
|
|
*/}}
|
|
<div class="actions">
|
|
{{if .ModalButtonDangerText}}
|
|
<button type="submit" class="ui danger red ok button">{{.ModalButtonDangerText}}</button>
|
|
{{else}}
|
|
{{$textNegative := ctx.Locale.Tr "modal.no"}}
|
|
{{$textPositive := ctx.Locale.Tr "modal.yes"}}
|
|
{{if eq .ModalButtonTypes "confirm"}}
|
|
{{$textNegative = ctx.Locale.Tr "modal.cancel"}}
|
|
{{$textPositive = ctx.Locale.Tr "modal.confirm"}}
|
|
{{end}}
|
|
{{if .ModalButtonCancelText}}{{$textNegative = .ModalButtonCancelText}}{{end}}
|
|
{{if .ModalButtonOkText}}{{$textPositive = .ModalButtonOkText}}{{end}}
|
|
<button type="button" class="ui cancel button">{{svg "octicon-x"}} {{$textNegative}}</button>
|
|
<button type="submit" class="ui primary ok button">{{svg "octicon-check"}} {{$textPositive}}</button>
|
|
{{end}}
|
|
</div>
|