The previous patch https://github.com/vaadin/framework/pull/11951 did fix the problem (frozen column indicator wrongly positioned) it was meant to, but caused a regression in hiding / un-hiding.
This new fix addresses both problems, i.e. it applies multiselect column compensation in other way, without causing problem in hiding / un-hiding logic
Fixes https://github.com/vaadin/framework/issues/11970
int columnIndex = grid.getVisibleColumns()
.indexOf(this);
- // Correct column index for multiselect mode
- if (grid.getSelectionColumn().isPresent()) {
- columnIndex--;
- }
grid.escalator.getColumnConfiguration()
.insertColumns(columnIndex, 1);
// escalator doesn't handle situation where the added column
// would be the last frozen column
int gridFrozenColumns = grid.getFrozenColumnCount();
+ // Correct column index for multiselect mode
+ if (grid.getSelectionColumn().isPresent()) {
+ gridFrozenColumns++;
+ }
int escalatorFrozenColumns = grid.escalator
.getColumnConfiguration().getFrozenColumnCount();
if (gridFrozenColumns > escalatorFrozenColumns