It is not and has never been a “requirement” that “Keyboard focus should
follow tap/ click so that pressing (Shift)Tab moves relative to the
component last interacted with”. That would be highly unpleasant if it
applied, for example, to scrollbars, panel resize handles, or window
resize handles. Unfortunately, because the initial toolkit designers
were focused on touch input, the toolkit specification did not make a
distinction between elements that should be focusable and elements that
should not.

So, Femma has just approved my definition of the three focusability
classes for elements, and it is now part of the specification template
for toolkit elements to define which focusability class it belongs to.
She’s also approved my definition of the three selectability classes for
lists. Making lists non-pointer-selectable by default would make *this*
list non-pointer-selectable, which should mean tapping the list item
will not focus its switch, which should mean that Space does not toggle
the switch, which fixes this bug.

To summarize: When most of your input is with touch, it would be ugly
for most controls to get focus rings — and most list items to look
selected — just because you tapped them and *might* use a keyboard to
navigate through them later. The toolkit currently tries to solve this
by suppressing the focused/selected appearance based on *how* the item
was focused/selected. This has turned out to be mistaken because it
results in surprising behavior if you *do* use a keyboard later. A
better solution is that for many types of control — and items in many
lists — tapping/clicking should not focus/select the control in the
first place.

** Changed in: ubuntu-ux
       Status: In Progress => Fix Committed

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to ubuntu-ui-toolkit in
Ubuntu.
https://bugs.launchpad.net/bugs/1549733

Title:
  SystemSettings Language&Text view: hitting Space on HW keyboard
  triggers switch even when it (or its list item) does not show any
  visual focus frame

Status in Canonical System Image:
  Incomplete
Status in Ubuntu UX:
  Fix Committed
Status in ubuntu-system-settings package in Ubuntu:
  Invalid
Status in ubuntu-ui-toolkit package in Ubuntu:
  Triaged
Status in ubuntu-ui-toolkit package in Ubuntu RTM:
  Confirmed

Bug description:
  Nexus7, rc-proposed, r373
  Ubuntu UI Toolkit version r1795

  1) Connect bluetooth keyboard
  2) Open system settings
  3) Open Language & Text view
  4) Press tab until the n-th switch shows its focus frame
  5) Now tap (using touchscreen) on the m-th list item, with  m < n (tap on the 
list item, not on the switch of that list item)
  NOTE: It is important that m < n, the bug will not trigger on listitems that 
have not been focused at least once!
  6) At this point the focus frame around the n-th switch has disappeared
  7) Now press Space on the keyboard

  Expected outcome:
  Nothing, because there is no focus frame anywhere on the screen
  This is confusing for the user as he can never be sure about which item will 
be actioned by the keyboard keys

  Actual outcome:
  The switch of the m-th list item is triggered, even though that list item or 
switch were not showing any focus frame

  <https://goo.gl/LCxiWO>: “To avoid errors from unintended focus and
  distraction from irrelevant focus rings, there should be three classes
  of control: … • Non-pointer-focusable: Focusable with Tab … Yes …
  Focusable with pointing device … No”

  <https://goo.gl/fscyyx>: “To avoid distraction from irrelevant
  selection, there should be three classes of list: … • Non-pointer-
  selectable: Selectable with arrow keys … Yes … Selectable with
  pointing device … No … Any list that is non-pointer-selectable should
  be non-pointer-focusable.”

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-devices-system-image/+bug/1549733/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to