Opened 6 years ago

Closed 6 years ago

#17228 closed defect (fixed)

dojo/touch: synthetic click event do not includes the click coordinates, and cannot be disabled on a single node by setting the dojoClick attribute to false.

Reported by: Sebastien Brunot Owned by: Sebastien Brunot
Priority: blocker Milestone: 1.10
Component: Events Version: 1.9.0
Keywords: Cc:
Blocked By: Blocking:

Description

The synthetic click event emited by dojo/touch on the nodes that have a dojoClick attributes or that have an ancestor with the dojoClick attribute (default for dojo mobile) do not contains the click coordinates.

It is also impossible to set the dojoClick attribute to false on a single node because of the marked function defined by dojo touch:

function marked(/*DOMNode*/ node){

Test if a node or its ancestor has been marked with the dojoClick property to indicate special processing, do{

if(node.dojoClick){ return node.dojoClick; }

}while(node = node.parentNode);

}

=> This method could be updated to:

function marked(/*DOMNode*/ node){

Test if a node or its ancestor has been marked with the dojoClick property to indicate special processing, do{

if(node.dojoClick !== undefined){ return node.dojoClick; }

}while(node = node.parentNode);

}

to allow "disabling" the synthetic click event on a single node in a hierarchy.

Change History (12)

comment:1 Changed 6 years ago by Sebastien Brunot

I've created a pull request to allow disabling synthetic click events on nodes that have dojoClick set to a falsy value: https://github.com/dojo/dojo/pull/6

comment:2 Changed 6 years ago by bill

Component: DojoX MobileEvents

comment:3 Changed 6 years ago by bill

I wish this were two separate tickets, because the two things (coordinates and disabling) seem quite different, and the coordinates problem could be considered a bug and put into 1.9.1 (or 1.9.2).

comment:4 Changed 6 years ago by Colin Snover

Milestone: tbd
Owner: set to Sebastien Brunot
Priority: undecidedblocker
Status: newassigned

As mentioned on the PR for this issue (now https://github.com/dojo/dojo/pull/10), this issue is impacting people trying to use mapping components within dojox/mobile/View and really should be addressed in a patch-release, either 1.9.2 or 1.9.3.

comment:5 Changed 6 years ago by bill

Milestone: 1.9.2

comment:6 Changed 6 years ago by bill

Milestone: 1.9.21.10

I'll check it into trunk. The patch doesn't apply cleanly to 1.9.

comment:7 Changed 6 years ago by Bill Keese <bill@…>

Resolution: fixed
Status: assignedclosed

In aaf2fd98b99ddd60276a291ee98e259842f3eaa1/dojo:

Error: Processor CommitTicketReference failed
Unsupported version control system "git": Can't find an appropriate component, maybe the corresponding plugin was not enabled? 

comment:8 Changed 6 years ago by dylan

Resolution: fixed
Status: closedreopened

Then it needs to be fixed to apply cleanly to 1.9. This is a bug that is impacting many users.

comment:9 Changed 6 years ago by dylan

We have got to stop making it so difficult to get things done.

For this ticket, I see the following:

  • Bill tells Colin to not commit anything to Dijit, to please do a pull request
  • Colin complies, issues pull request
  • Bill reviews and says, ok, commit it
  • Something comes up, and we're told, this patch doesn't apply to an old version, so we're just not going to do it

We have to be able to efficiently get things fixed. There should not be only one person that can commit to Dijit. Otherwise it will continue to rot.

Yes, we need a sane peer review process, but people are completely tired of trying to help out if they're going to be blocked from getting things done.

Similarly, people are completely frustrated with crappy code getting approved, and then reasonable patches being blocked.

This lack of productivity is sucking life from the project.

comment:10 Changed 6 years ago by dylan

My previous comment is a mix of thoughts based on #17492, #17513, and this ticket.

comment:11 Changed 6 years ago by cjolif

First this issue is not in Dijit and the patch/PR is not from Colin. So I'm not sure why you are talking about Dijit here and Colin's PR to Dijit and who is committing in Dijit, that as nothing to do with this particular _core_ issue.

Second I'm not aware of any issue being blocked in Dijit because Bill would have not committed something? The two you mentioned are closed as fixed right? That sounds reasonable to me pull requests are made against Dijit just as this one was a pull request against Core?

Third for this particular issue, the patch/PR does not apply cleanly to 1.9.x so Bill couldn't commit it directly to 1.9.x.

Fourth, maybe just gently asking to sbrunot to redo a pull request that applies cleanly to 1.9.x would have solved the issue instead of using strong words that are not solving any issue just making people angry?

Last edited 6 years ago by cjolif (previous) (diff)

comment:12 Changed 6 years ago by Bill Keese <bill@…>

Resolution: fixed
Status: reopenedclosed

In 9415f036b79e5b66a963bdc63f8e20833e09d970/dojo:

Error: Processor CommitTicketReference failed
Unsupported version control system "git": Can't find an appropriate component, maybe the corresponding plugin was not enabled? 
Note: See TracTickets for help on using tickets.