aboutsummaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorAdam Wagner <wbadam@users.noreply.github.com>2017-09-11 12:02:20 +0300
committerHenri Sara <henri.sara@gmail.com>2017-09-11 12:02:20 +0300
commit0b58bc480e7f86b1e5285e9d59475593e5abbf5f (patch)
tree430073d229ad7c4c5cd0cf34ea761ba8a6cc32d7 /client
parentfb207248d5567a2661d5729d5149c7c8920a2efa (diff)
downloadvaadin-framework-0b58bc480e7f86b1e5285e9d59475593e5abbf5f.tar.gz
vaadin-framework-0b58bc480e7f86b1e5285e9d59475593e5abbf5f.zip
Remove element explicitly when reordering tree grid rows (#9952)
Under certain circumstances IE 11 (11.0.45 / 11.0.9600.18762) produces an exception when collapsing/expanding rows (particularly the first child after the very first element) in a TreeGrid within a Window. This workaround removes the row explicitly before inserting, instead of letting JS handle it. Fixes #9850
Diffstat (limited to 'client')
-rw-r--r--client/src/main/java/com/vaadin/client/widgets/Escalator.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/client/src/main/java/com/vaadin/client/widgets/Escalator.java b/client/src/main/java/com/vaadin/client/widgets/Escalator.java
index 0c9fdd224a..178f3a4222 100644
--- a/client/src/main/java/com/vaadin/client/widgets/Escalator.java
+++ b/client/src/main/java/com/vaadin/client/widgets/Escalator.java
@@ -3898,6 +3898,11 @@ public class Escalator extends Widget
if (tr == focusedRow) {
insertFirst = true;
} else if (insertFirst) {
+ // remove row explicitly to work around an IE11 bug (#9850)
+ if (BrowserInfo.get().isIE11() && tr
+ .equals(root.getFirstChildElement())) {
+ root.removeChild(tr);
+ }
root.insertFirst(tr);
} else {
root.insertAfter(tr, focusedRow);