When I click in a row, first 'rowselect' event is fired, and then the 'click' one. But sometimes (depending of what part of the row body the user clicked) I want to stop event propagation on 'rowselect', so 'click' event isn't fired after 'rowselect' one. 'rowselect' handler didn't receive an EventObject as an argument, so I can't find a way to stop event propagation.
I'm developing a grid where you can 'expand' rows to display more info. So I expand the row on 'rowselect' event. Also, there is a small icon where you can click to expand/collapse the row too (like RowExpander plugin). I detect click on that icon using view's body 'click' event. This is a toggler: if row if expanded contract it, if it is contracted, expand it.
The problem is when user click on the icon of a unselected row. The 'rowselect' event fires and expand the row. Then, the 'click' event fires. And the row is already expanded so the click handler collapse the row.
I will try to use DelayedTask to accomplish that. But, IMHO, ExtJS should provide EventObject ALWAYS in all events handlers.