Ticket #12117 (closed Bug: fixed)

Opened 3 years ago

Last modified 17 months 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 3 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 3 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 3 years ago by RMattB

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

comment:4 Changed 3 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 3 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 3 years ago by esteele

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

comment:7 Changed 3 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 2 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 23 months ago by rmattb

  • Milestone changed from 4.1 to 4.x

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

comment:10 Changed 19 months ago by alepisa

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

comment:11 Changed 19 months 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 19 months 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 19 months ago by alepisa (previous) (diff)

comment:13 Changed 19 months ago by alepisa

  • Owner alepisa deleted
  • Cc alepisa added

comment:14 Changed 17 months ago by garbas

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