a11y: add aria-labels to form buttons (#41121)
gitea/wcs/pipeline/head This commit looks good Details

This commit is contained in:
Frédéric Péters 2023-04-07 08:07:22 +02:00
parent a4f28ff48c
commit f07e55fe3e
1 changed files with 15 additions and 4 deletions

View File

@ -619,12 +619,21 @@ class FormPage(FormdefDirectoryBase, FormTemplateMixin):
if self.edit_mode and (page is None or page == self.pages[-1]):
form.add_submit('submit', _('Save Changes'), css_class='form-save-changes')
elif not self.has_confirmation_page() and (page is None or page == self.pages[-1]):
form.add_submit('submit', _('Submit'), css_class='form-submit')
form.add_submit(
'submit', _('Submit'), css_class='form-submit', attrs={'aria-label': _('Submit form')}
)
else:
form.add_submit('submit', _('Next'), css_class='form-next')
form.add_submit(
'submit', _('Next'), css_class='form-next', attrs={'aria-label': _('Go to next page')}
)
if self.pages.index(page) > 0:
form.add_submit('previous', _('Previous'), css_class='form-previous')
form.add_submit(
'previous',
_('Previous'),
css_class='form-previous',
attrs={'aria-label': _('Go back to previous page')},
)
had_prefill = False
if page_change or submit_button is True:
@ -698,11 +707,13 @@ class FormPage(FormdefDirectoryBase, FormTemplateMixin):
if not self.is_popup:
cancel_label = _('Cancel')
aria_label = _('Cancel form')
css_class = 'cancel'
if self.has_draft_support() and not (data and data.get('is_recalled_draft')):
cancel_label = _('Discard')
aria_label = _('Discard form')
css_class = 'cancel form-discard'
form.add_submit('cancel', cancel_label, css_class=css_class)
form.add_submit('cancel', cancel_label, css_class=css_class, attrs={'aria-label': aria_label})
if self.has_draft_support():
form.add_submit(