@Override
public void containerPropertySetChange(
Container.PropertySetChangeEvent event) {
+ disableContentRefreshing();
super.containerPropertySetChange(event);
// sanitetize visibleColumns. note that we are not adding previously
// non-existing properties as columns
Collection<?> containerPropertyIds = getContainerDataSource()
.getContainerPropertyIds();
- for (Iterator<Object> iterator = visibleColumns.iterator(); iterator
+
+ LinkedList<Object> newVisibleColumns = new LinkedList<Object>(
+ visibleColumns);
+ for (Iterator<Object> iterator = newVisibleColumns.iterator(); iterator
.hasNext();) {
Object id = iterator.next();
if (!(containerPropertyIds.contains(id) || columnGenerators
iterator.remove();
}
}
+ setVisibleColumns(newVisibleColumns.toArray());
// same for collapsed columns
for (Iterator<Object> iterator = collapsedColumns.iterator(); iterator
.hasNext();) {
}
resetPageBuffer();
- refreshRenderedCells();
+ enableContentRefreshing(true);
}
/**