diff options
Diffstat (limited to 'client')
-rw-r--r-- | client/src/com/vaadin/client/widgets/Grid.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/client/src/com/vaadin/client/widgets/Grid.java b/client/src/com/vaadin/client/widgets/Grid.java index 7086ff86d2..065ba411d8 100644 --- a/client/src/com/vaadin/client/widgets/Grid.java +++ b/client/src/com/vaadin/client/widgets/Grid.java @@ -2846,6 +2846,18 @@ public class Grid<T> extends ResizeComposite implements }); selectAllCheckBox.setValue(selected); + addHeaderClickHandler(new HeaderClickHandler() { + @Override + public void onClick(GridClickEvent event) { + CellReference<?> targetCell = event.getTargetCell(); + int defaultRowIndex = getHeader().getRows().indexOf(getDefaultHeaderRow()); + + if(targetCell.getColumnIndex() == 0 && targetCell.getRowIndex() == defaultRowIndex) { + selectAllCheckBox.setValue(!selectAllCheckBox.getValue(), true); + } + } + }); + // Select all with space when "select all" cell is active addHeaderKeyUpHandler(new HeaderKeyUpHandler() { @Override |