Ticket #12117 (closed Bug: fixed)

Opened 4 years ago

Last modified 2 years ago

Form to add new content does not read page title for screen readers

Reported by: rmattb Owned by:
Priority: major Milestone: 4.x
Component: User Experience and Interface Version: 4.1
Keywords: accessibility Cc: rmattb, alepisa

Description

Issue:

For example, clicking "Add new", "Page" sets focus into the first form field, causing the most common screen reader to skip past the page title and description, and only read the name of the first form field.

Recommendation:

One person who is blind suggests that ideally, they would start reading at the top of the page, so they can hear the page title and description before working on the form fields.

Change History

comment:1 Changed 4 years ago by rmattb

  • Summary changed from form to add new content skips past page title to Form to add new content skips past page title

comment:2 Changed 4 years ago by RMattB

  • Priority changed from minor to trivial
  • Summary changed from Form to add new content skips past page title to Form to add new content skips past page title for screen readers

comment:3 Changed 4 years ago by RMattB

  • Component changed from Templates/CSS to User Experience and Interface

comment:4 Changed 4 years ago by esteele

  • Priority changed from trivial to major

Page is being read as "left square bracket dot dot dot right square bracket. Form field title." So there's no real context about what the form is for.

The default html title of the page is shown as "[...]". first_input_focus.js sends the cursor focus to the first form field.

Would changing the page title to match the h1 work? Something like "Add new page" would give some context.

comment:5 Changed 4 years ago by esteele

Products.Archetype's base_edit.cpt has a slot for defining html head content (topslot), though it looks like it doesn't pick that up from edit_macros, looking for one in [content_type]_edit_macros instead

comment:6 Changed 4 years ago by esteele

See edit_macros.pt's setting of the h1 for some similar code.

comment:7 Changed 4 years ago by rmattb

  • Summary changed from Form to add new content skips past page title for screen readers to Form to add new content does not read page title for screen readers

comment:8 Changed 3 years ago by rmattb

  • Status changed from new to confirmed
  • Version set to 4.1
  • Milestone changed from 4.x to 4.1

comment:9 Changed 3 years ago by rmattb

  • Milestone changed from 4.1 to 4.x

Just found https://dev.plone.org/wiki/TriagingBugs , adjusting milestone.

comment:10 Changed 2 years ago by alepisa

  • Status changed from confirmed to assigned
  • Owner set to alepisa

comment:11 Changed 2 years ago by alepisa

From what I see the title is set by plone.app.layout.viewlets.common.title.pt

        context_state = getMultiAdapter((self.context, self.request),
                                         name=u'plone_context_state')
        page_title = escape(safe_unicode(context_state.object_title()))

context_state.object_title() turns out to be [...] when no title is set (see getEmptyTitle in Products.CMFPlone.utils).

I am working on changing the update method of the title viewlet.

comment:12 Changed 2 years ago by alepisa

Created branch:

It introduces a dependency on Products.Archetype to use shasattr. I am missing:

  • tests
  • translation
  • a code review ;)
Last edited 2 years ago by alepisa (previous) (diff)

comment:13 Changed 2 years ago by alepisa

  • Cc alepisa added
  • Owner alepisa deleted

comment:14 Changed 2 years ago by garbas

  • Status changed from assigned to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.