BorderTech / wcomponents

Accessible Web UI Framework for Enterprise
GNU General Public License v3.0
21 stars 17 forks source link

Component level "Help" #1059

Open ghost opened 7 years ago

ghost commented 7 years ago

Provide a mechanism to have "help" attached to a WComponent. The help may be a reference within the application or an external URL. Any component which has "help" must expose an accessible means to display the help.

Likhasinh commented 6 years ago

What is the purpose of this - to let end users know how to use a UI control? We provide a 'standard' UI control so users are familiar with how to operate the control. It's questionable whether this should be implemented. Even if it is implemented, how would this be displayed to the user in addition to the field level help within an application without confusing users?

ghost commented 6 years ago

There is no "field level help". The purpose of this is to provide consuming applications with a way to implement field level help which is consistent, accessible and themeable.

Likhasinh commented 6 years ago

Ah, I see we want a WFieldHelp... Some thoughts Use a callout to display content. Size of help content Using the callout to display content is neat but the content can't be massive which is what I'm seeing in some applications. A scrollbar in the callout would look ugly. So restrict the number of characters allowed for a field level help and don't let the content repeat the hint text? Positioning help Detect the best position to display the callout as to not obstruct other elements on the page. Above the actual field is best for 'all' users. Issue - handling display on small mobile device Indicating availability and invoking help ? in the field and be able to click on it. Cursor in field and press F1. Use what's this ? button then click in the field. Tabbing into the field also announces that help is available for that field. Content is announced when help is explicitly invoked. Otherwise this creates too much audio noise. Issue - Grouped fields (fieldset), radio buttons and checkboxes. Closing help I saw a visual design as a dialog where there are ui controls to close and maximise the callout + a Close button. This seems over the top but at least users will know how to close it. What if we allow users to lightly dismiss it either click anywhere on the screen or tab away from the field? Visual design Speech bubble style or just a rectangle. Background colour (which colour) or no background colour? Or transparent overlay? Border colour? Foreground colour (which colour)? Font size? Other A11y considerations Resizing content up to 200% (WCAG SC 1.4.4). Authoring/changing help string Consider not allowing the string to be hardcoded, allow the flexibility for anyone to change the help string without dev's effort. This would be an added value to business. Is this something we should care about or should it be up to the project to specify the requirement? Other considerations Allow concurrent implementation of help - through use of help icon and opening a new window? If an application uses two methods then there is inconsistency.

ghost commented 6 years ago

@Likhasinh A few questions regarding the previous comment:

  1. Which UI design guide?
  2. Why are we looking at Atlassian's documentation (you mention the Confluence wiki so I assume that is what you mean) - can you give me a link?
  3. "The confluence wiki ui design guidelines shows the visual design as a dialog" - can you provide a link as I am not familiar with Atlassian's UI design guide and would like everyone involved to be able to see what you are referencing?

Thanks

Likhasinh commented 6 years ago

Have a look at the site [https://www.tisnational.gov.au/en/Agencies/Forms-for-agencies/New-Job-booking-form]. Some good features, but it still uses the ? help icon to indicate help is available.