aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java6
-rw-r--r--tests/testbench/com/vaadin/tests/components/table/ProgrammaticUnselectInRange.html (renamed from tests/testbench/com/vaadin/tests/components/table/ProgrammaticUnselectInRange.html2)0
2 files changed, 5 insertions, 1 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java
index 6ba145c8b8..38872c73a1 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java
@@ -56,7 +56,6 @@ import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.UIObject;
import com.google.gwt.user.client.ui.Widget;
-
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.BrowserInfo;
import com.vaadin.terminal.gwt.client.Container;
@@ -1095,6 +1094,11 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler,
}
if (selected != row.isSelected()) {
row.toggleSelection();
+ if (!isSingleSelectMode() && !selected) {
+ // Update selection range in case a row is
+ // unselected from the middle of a range - #8076
+ removeRowFromUnsentSelectionRanges(row);
+ }
}
}
}
diff --git a/tests/testbench/com/vaadin/tests/components/table/ProgrammaticUnselectInRange.html2 b/tests/testbench/com/vaadin/tests/components/table/ProgrammaticUnselectInRange.html
index 8d185b6219..8d185b6219 100644
--- a/tests/testbench/com/vaadin/tests/components/table/ProgrammaticUnselectInRange.html2
+++ b/tests/testbench/com/vaadin/tests/components/table/ProgrammaticUnselectInRange.html