Browse Source

Fix hiding / un-hiding with frozen columns in multiselect mode (#11972)

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
tags/8.11.0.beta1
Tatu Lund 3 years ago
parent
commit
599387b330
No account linked to committer's email address
1 changed files with 4 additions and 4 deletions
  1. 4
    4
      client/src/main/java/com/vaadin/client/widgets/Grid.java

+ 4
- 4
client/src/main/java/com/vaadin/client/widgets/Grid.java View File

@@ -5324,10 +5324,6 @@ public class Grid<T> extends ResizeComposite implements HasSelectionHandlers<T>,

int columnIndex = grid.getVisibleColumns()
.indexOf(this);
// Correct column index for multiselect mode
if (grid.getSelectionColumn().isPresent()) {
columnIndex--;
}
grid.escalator.getColumnConfiguration()
.insertColumns(columnIndex, 1);

@@ -5335,6 +5331,10 @@ public class Grid<T> extends ResizeComposite implements HasSelectionHandlers<T>,
// 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

Loading…
Cancel
Save