Opened 6 years ago

Closed 6 years ago

#16819 closed defect (fixed)

Tree: openOnClick=true broken for keyboard "click"

Reported by: bill Owned by: bill
Priority: undecided Milestone: 1.9
Component: Dijit Version: 1.8.3
Keywords: Cc:
Blocked By: Blocking:


See first Tree in test_Tree.html. Clicking the labels of the non-leaf nodes opens/closes them rather than executing them (i.e. rather than writing a "Execute of node Africa, population=900 million" type message to the console).

However, focusing a non-leaf node and pressing SPACE or ENTER does write such a message to the console, same as if openOnClick=true was not specified for the Tree.

Presumably the idea of openOnClick is that only leaf nodes get the onClick execution notification, so this seems like a bug.

Change History (4)

comment:1 Changed 6 years ago by bill

Milestone: tbd1.9

comment:2 Changed 6 years ago by bill

In [30807]:

Make _CssStateMixin use dojo/touch events rather than "touchstart" and "touchend" so that (in particular the active state) will work on Surface. Fixes #16823.

Also add new press and release synthetic events to dijit/a11yclick, representing either mousedown/mouseup, touchstart/touchend, or keydown/keyup corresponding to a click event. Use new dijit/a11yclick events in _CssStateMixin to provide visual feedback during keyboard "clicks". For non-IE platforms this moves the listener from the capturing phase to the bubbling phase, which seems to be working OK (especially considering that IE's worked this way from the beginning), but there might be some stopPropagation() calls somewhere the need to be removed. Fixes #8709 !strict.

This is also in preparation to convert Tree to use dijit/a11yclick. Refs #16819.

comment:3 Changed 6 years ago by bill

Status: newassigned

Note that [30806] is also a prerequisite to fixing the ticket.

comment:4 Changed 6 years ago by bill

Resolution: fixed
Status: assignedclosed

In [30808]:

Make Tree leverage dijit/a11yclick, which indirectly make openOnClick work for keyboard "click", fixes #16819 !strict. Also makes Tree more responsive on mobile, refs #15878.

Builds on work from [30806] and [30807].

Note: See TracTickets for help on using tickets.