Hello Isomorphic Team,
We are experiencing an issue when selecting rows in a ListGrid via mouse click:
This occurs
We tried to follow the selection logic and documented the following behaviour:
Note: When breakpoints are disabled the slight scrolling mentioned above does not happen. It seems the "Reset native scroll-on-focus" (Canvas.js:18173) does not get triggered when breakpoints are enabled.
Yet the issue still occurs. When the first row is clicked the first time, a wrong row gets selected.
Maybe the native scroll from Chrome is not properly taken into account when calculating the OffsetY?
SmartGWT Version 6.1p-2017-09-27
SmartClient Version v11.1p_2017-09-27
Best regards!
We are experiencing an issue when selecting rows in a ListGrid via mouse click:
When clicking on a certain row for the first time, a different row gets selected.
- with Chrome and Edge (Chromium) but not with Firefox.
- when the ListGrid is partially not visible at the bottom i.e. it is partially scolled out of view in its parent layout. If the ListGrid is scrolled into view and completely visible the issue does not occur.
We tried to follow the selection logic and documented the following behaviour:
- 1. List is partially not visible at the bottom. First row is clicked.
- element.getBoundingClientRect() for gridBody returns top = 765 (Breakpoint: Element.js:1421 getBoundingClientRect)
- this.getOffsetY() for gridBody returns y = 97 (Breakpoint: GridRenderer.js:6464 getEventRow)
- 4th row gets selected and parent layout is scrolled down slightly.
- 2. First row is clicked again
- element.getBoundingClientRect() for gridBody returns top = 765
- this.getOffsetY() for gridBody returns y = 34
- 1st row gets selected
- 3. Scrolling the parent layout back up. First row is clicked.
- element.getBoundingClientRect() for gridBody returns top = 830
- this.getOffsetY() for gridBody returns y = 32
- 1st row remains selected
Note: When breakpoints are disabled the slight scrolling mentioned above does not happen. It seems the "Reset native scroll-on-focus" (Canvas.js:18173) does not get triggered when breakpoints are enabled.
Yet the issue still occurs. When the first row is clicked the first time, a wrong row gets selected.
Maybe the native scroll from Chrome is not properly taken into account when calculating the OffsetY?
SmartGWT Version 6.1p-2017-09-27
SmartClient Version v11.1p_2017-09-27
Best regards!
Comment