[GH #4628] CollapsibleColumns Jumping When Scrolling

Tags: #<Tag:0x00007efc644f08c8> #<Tag:0x00007efc644f0788>

When using the collapsibleColumns plugin, if you attempt to expand some of the columns and scroll to the right to view all the columns, there’s this strange issue that occurs where the view keeps jumping to the left as you scroll to the right, so it’s difficult (and sometimes impossible) to view the columns on the right.

This seems to only happen when there are a lot of columns (>100 columns), but it’s still an issue I’m running into for our use case.

Here is a jsfiddle I’ve created to reproduce the issue:
http://jsfiddle.net/8a5sos2b/5/

Expand column A, scroll to the right, expand column B, scroll to the right, expand column C, scroll to the right, expand column D, scroll to the right, you should see the issue appear where the view jumps back to the left a bit over and over.

I’ve also noticed that when I shared this issue with my peers, most of them were able to reproduce it while others were not. Some of them even said it only happens half of the time. If you take a look at the Google Chrome DevTools, you’ll notice there’s a spike in CPU usage whenever the view jumps back.

Hope we can get a solution to this!

Thank you for sharing the issue @daveg

I have replicated it by only doing the first 3 steps on my Windows. You’re right - it might be related to CPU. I think that table takes too much usage when it tries to recalculate the scroll and that is why we get this jumping behavior.

I have reported it at https://github.com/handsontable/handsontable/issues/4628

ps. I think that adding viewportColumnRenderingOffset is a good workaround when you do not have a lot of rows. Here is an example http://jsfiddle.net/handsoncode/gcozvhpb/

Sounds great. I will test the workaround, but we typically have a lot of rows so it will most likely not be an ideal solution.

Is there any estimate on when that issue will be looked into and fixed?

Thanks.

The issue hasn’t been scheduled yet, but I will ask our devs next week to check how long it would take to fix this issue.