Thank you for reporting this bug. We will make it our priority to review this report.
  1. #1
    Ext JS Premium Member
    Join Date
    Dec 2009
    Posts
    17
    Vote Rating
    0
    willryanuk is on a distinguished road

      0  

    Exclamation [OPEN-509]cellclick event does not fire when cell must be scrolled into view

    [OPEN-509]cellclick event does not fire when cell must be scrolled into view


    This relates to a bug that has persisted from 2.1 (initially reported here).

    When you click on a grid cell that needs to be scrolled into view (i.e. a partially obscured cell), neither the cellclick nor rowclick event propagate, although the cell is highlighted.

    From my testing, the bug is apparent on FF 3.5.6, Safari 3.1 and Chrome 3.0. It is not a problem in IE8 or IE6.

  2. #2
    Sencha - Ext JS Dev Team evant's Avatar
    Join Date
    Apr 2007
    Location
    Sydney, Australia
    Posts
    16,999
    Vote Rating
    649
    evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute

      0  

    Default


    I wasn't able to reproduce this. I took the array grid example and modified some of the column widths.

    I then clicked on the rightmost cells, both in the first and second rows (with the scroll position as shown in the screen grab). You can see the events are fired. Do you have a better test case I can use?
    Attached Images
    Evan Trimboli
    Sencha Developer
    Twitter - @evantrimboli
    Don't be afraid of the source code!

  3. #3
    Ext JS Premium Member
    Join Date
    Dec 2009
    Posts
    17
    Vote Rating
    0
    willryanuk is on a distinguished road

      0  

    Default


    It occurs when a grid row is partially hidden in the vertical direction within its container as opposed to hidden in the horizontal direction. When you click on a row that is vertically hidden, the container scrolls down to reveal that entire row, but the the events don't fire. If you cannot replicate this behaviour then I'll mock up some code.

    Thanks.

  4. #4
    Sencha - Ext JS Dev Team evant's Avatar
    Join Date
    Apr 2007
    Location
    Sydney, Australia
    Posts
    16,999
    Vote Rating
    649
    evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute

      0  

    Default


    I can see it happening, the problem is that the mousedown event gets fired, but the click event (even the raw one) never gets fired. Perhaps it's because the row moves into view on the mousedown which somehow screws up the click.
    Evan Trimboli
    Sencha Developer
    Twitter - @evantrimboli
    Don't be afraid of the source code!

  5. #5
    Ext JS Premium Member
    Join Date
    Dec 2009
    Posts
    17
    Vote Rating
    0
    willryanuk is on a distinguished road

      0  

    Default


    Can we raise this as a bug and get it fixed in the next patch release? It is important for my project that we can capture this particular event.

  6. #6
    Sencha - Ext JS Dev Team Animal's Avatar
    Join Date
    Mar 2007
    Location
    Notts/Redwood City
    Posts
    30,508
    Vote Rating
    56
    Animal has a spectacular aura about Animal has a spectacular aura about Animal has a spectacular aura about

      0  

    Default


    Looks like RowSelectionModel.handleMouseDown will have to defer the call to view.focusRow to allow the mouse gesture to complete before the element scrolls and the click pixel threshold is overrun.

  7. #7
    Sencha - Ext JS Dev Team evant's Avatar
    Join Date
    Apr 2007
    Location
    Sydney, Australia
    Posts
    16,999
    Vote Rating
    649
    evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute evant has a reputation beyond repute

      0  

    Default


    That's what I was thinking, but while trying it, a delay of 100ms isn't enough (at least on my machine) to consistently fire the row and cell click events. 500ms was adequate, however it's much too long and makes the UI look sluggish.
    Evan Trimboli
    Sencha Developer
    Twitter - @evantrimboli
    Don't be afraid of the source code!

  8. #8
    Ext JS Premium Member
    Join Date
    Dec 2009
    Posts
    17
    Vote Rating
    0
    willryanuk is on a distinguished road

      0  

    Default


    Has there been any progress on this? Can I expect this to be fixed in the next release?

  9. #9
    Sencha - Community Support Team mystix's Avatar
    Join Date
    Mar 2007
    Location
    Singapore
    Posts
    6,236
    Vote Rating
    5
    mystix will become famous soon enough

      0  

    Default


    i'd like to take @animal's suggestion a step further by detecting if view.focusRow will result in scrolling -- if a potential scroll is detected, queue all cellclick / rowclick / whateverclick listeners for execution after the scroll has taken place.

    this will resolve the problem of introducing an arbitrary delay which may not work under all situations.

  10. #10
    Sencha User Jamie Avins's Avatar
    Join Date
    Mar 2007
    Location
    Redwood City, California
    Posts
    3,661
    Vote Rating
    20
    Jamie Avins is a jewel in the rough Jamie Avins is a jewel in the rough Jamie Avins is a jewel in the rough

      0  

    Default


    Quote Originally Posted by willryanuk View Post
    Has there been any progress on this? Can I expect this to be fixed in the next release?
    I don't expect a fix until 3.2.x is released. The effects at the moment look to be too disruptive for a patch release.