olifolkerd / tabulator

Interactive Tables and Data Grids for JavaScript
http://tabulator.info
MIT License
6.71k stars 818 forks source link

Grouped views do not allow for vertical scrolling & Group Expansion Outside Initial Viewport #4525

Open zpp-andy opened 4 months ago

zpp-andy commented 4 months ago

Regarding ticket #4219, here is another attempt to report this bug to find a (better) solution. Unfortunately, there is no solution to this problem since 06.2023. Setting the renderVerticalBuffer to a high pixel value is only a conditional solution and will greatly affect the display speed for large tables.

Describe the bug

Issue 1: Vertical Scrolling in Grouped Views In version 5.5.0, grouped views do not allow for vertical scrolling without manually setting a large renderVerticalBuffer. It appears that the automatic calculation of the buffer is not functioning correctly for grouped views.

Issue 2: Group Expansion Outside Initial Viewport When expanding groupings that are outside the initial visible section of the window, the grouping expands but the view jumps to the beginning of the table instead of keeping the expanded section in the visible area.

I expect the same behaviour as up to version 5.4.4. I think that a change/optimisation of the render is responsible for the behaviour. (https://tabulator.info/docs/5.5/release#performance)

Tabulator Info Tabulator affected Version: >= 5.5.0 Previous Version (without issues): 5.4.4

Both problems are specific to version 5.5.0 and higher These problems are also present in the latest version 6.2.1

Working Example https://jsfiddle.net/syh7kjrm/9/

The problems do not occur in version 5.4.4. https://jsfiddle.net/5o09y8nd/20/

To Reproduce Issue 1:

  1. scroll down

Issue 2:

  1. scroll past the first screen
  2. click on a category to open it

Expected behavior Issue 1: I expect to be able to scroll to the end without any problems.

Issue 2: I expect that when opening a category, the system does not jump to another area.

Screenshots If applicable, add screenshots to help explain your problem.

Desktop:

Additional context Possible solution One possible solution is to set the "renderVerticalBuffer (https://tabulator.info/docs/6.2/layout#virtual-dom-buffer)". But I think this is just a workarount and does not fix the error.

zpp-andy commented 3 months ago

I'm a little surprised that this fundamental problem isn't getting any feedback, either from the development team or from users.

Is the "Grouped Views" feature not being used by anyone?

I consider this bug to be quite significant and would appreciate any response. Of course, I don't expect an immediate solution, but some feedback on this issue would be nice.

Is this a problem that is unique to me or does it affect others? Is there a workaround to the problem, or better yet, is there a solution planned?

I would appreciate any feedback and am also happy to help with further questions and testing.

regards andy

olifolkerd commented 3 months ago

@zpp-andy first off, this ticket has been on the list for less than a month, this project is solely supported by me in my spare time and there is a limit to how much time I have at any given point. And your attitude is not appropriate or appreciated.

I have many people and concerns to deal with and I will get to them when I get a chance in the order of my choice. While I appreciate this is an issue for you, there are other areas I'm currently focusing on.

This is a free utility provided as is, if you want a fix in sooner then please feel free to submit a PR for review and I would be happy to merge it in.

Oli

Kallius74 commented 3 months ago

You are not alone with that problem - it also happens to me: Large number of row groups, all of them collapsed, scrolling down -> vertical scroll position automatically jumps back to the start of the rows.

zpp-andy commented 3 months ago

@olifolkerd Firstly, thank you for your reply. That's exactly the reaction I didn't want to provoke. I have great respect for your project and what you are doing there in your free time.

That's why I wrote that I wasn't expecting a quick solution, but would have been happy to receive feedback.

I also opened this ticket because there was already a similar/same problem in June 2023 (#4219) and there was no response. The idea was to publicise the problem again so that it might be noticed by users and/or developers. I have endeavoured to provide a workaround for one aspect (renderVerticalBuffer) and also created reproducibility examples.

I hope it is now easier to understand why I wrote a comment on my issue and if there was a wrong choice of words - it was not intended that way.

Andy