BIG BUG: Table Column Resizing Sets/Adds NULL selectedRow/selectedRows

When attempting to resize a column in a table, if you have selections turned on, single or multiple, it can lead to a null selection in the selectedRow/selectedRows values. If I had to speculate on the cause, it is because it is selecting the header row, but I'm not entirely sure about this. Something weird is happening here, and this is a massive bug.

Goal:

When resizing a column on a table with selections enabled (single or multiple - doesn't matter which), it should not reset (or in the case of multiple, add) the selection to null.

Recreation Steps:

Create a table, and set the selection type to multiple or single. From here, open the debugger to State, and view the selectedRow/selectedRows for the table. There are multiple routes you can take to replicate this:

  1. Resize a column, and observe selectedRow/selectedRows for each column being set to null.
  2. Select a(n) row(s), then resize a column, and observe selectedRow/selectedRows for each column being set to null.

Details:

I am on Retool version 3.28.3. It's almost as if the header 'row' is being selected when a column is resized, and this should not be the case.

Sources

Here is a video replicating this issue using both single and multiple-selection methodologies:

Single Selection:

Multiple Selection

Notice: There are two selections, then a null selection in this screenshot below, this can go on. When you resize a column, it will push in one of these null values. So you could have null, value, value. Or value, null, value, value. There are many ways this could be replicated:

JSON Export

Here is an export of an example application I created to showcase this issue, although this is quite as simple as creating a project, adding a table, resizing a column, and observing the results of the effect on selectedRow/selectedRows.
Table Selection.json (119.1 KB)

Hey @ryan_hurd, thanks for the comprehensive repro here. This has been submitted to the team, and I'll update you here as I get any information on the stats.

1 Like