#17970 closed defect (fixed)
DateTextBox in TooltipDialog doesn't open first time (IE10)
Reported by: | bill | Owned by: | bill |
---|---|---|---|
Priority: | undecided | Milestone: | 1.9.4 |
Component: | Dijit | Version: | 1.9.3 |
Keywords: | Cc: | ||
Blocked By: | Blocking: |
Description (last modified by )
See test_TooltipDialog.html. Open first TooltipDialog? and then click DateTextBox? to open Calendar. The Calendar does not open.
This is causing a failure in the TooltipDialog_mouse.html test, but only when run from runTests.html.
The problem is that the DropDownButton? to open the TooltipDialog? never sees the mouse up event after it's pressed.
Change History (5)
comment:1 Changed 7 years ago by
Description: | modified (diff) |
---|---|
Milestone: | tbd → 1.10 |
Owner: | set to bill |
Status: | new → assigned |
comment:2 Changed 7 years ago by
comment:3 Changed 7 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:5 Changed 6 years ago by
Milestone: | 1.10 → 1.9.4 |
---|
Note: See
TracTickets for help on using
tickets.
The error occurs in the mouseup listener setup in _FormWidgetMixin_onFocus():
_FormWidgetMixin._onFocus() doesn't hear the mouseup event on the DropDownButton? (the button to open the TooltipDialog?), so the handler remains listening until the mousedown on the DateTextBox? arrow.
The minimal fix is presumably to change IE10/IE11 to listen to MSPointerUp/pointerup instead of mouseup. Probably _HasDropDown or someone is calling preventDefault on the MSPointerUp, so there's no mouseup event.
A more pervasive fix would be to use dojo/touch.release. I don't like the current code because it's presumably calling focus twice on iOS and android, once on touchend and once on the synthetic mouseup event. But see #16222 and #16725 for the subtle problems that occur on android and iOS. Those tickets imply we need to act on mouseup on Android rather than touchend, although that's hard to believe.
Also, see the code in TextBox?.js from [31192]: