From bb78cb07269ca52ad127933536ff50d83aed8ea4 Mon Sep 17 00:00:00 2001 From: Gleb Gorelov Date: Tue, 29 Sep 2015 13:03:38 +0000 Subject: [PATCH] Change single selection behavior for Table and Tree #PL-4752 --- lib.gradle | 2 +- .../ui/client/grouptable/CubaGroupTableWidget.java | 11 ++++++----- .../cuba/web/gui/components/WebAbstractTable.java | 2 -- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/lib.gradle b/lib.gradle index eaefc54b7a..832ec9f8cb 100644 --- a/lib.gradle +++ b/lib.gradle @@ -3,7 +3,7 @@ * Use is subject to license terms, see http://www.cuba-platform.com/license for details. */ -project.ext.vaadinVersion = '7.5.6.cuba.3' +project.ext.vaadinVersion = '7.5.6.cuba.4' project.ext.vaadinShared = [group: 'com.vaadin', name: 'vaadin-shared', version: vaadinVersion] project.ext.vaadinServer = [group: 'com.vaadin', name: 'vaadin-server', version: vaadinVersion] diff --git a/modules/web-toolkit/src/com/haulmont/cuba/web/toolkit/ui/client/grouptable/CubaGroupTableWidget.java b/modules/web-toolkit/src/com/haulmont/cuba/web/toolkit/ui/client/grouptable/CubaGroupTableWidget.java index 28d8f0c26b..33c9fce099 100644 --- a/modules/web-toolkit/src/com/haulmont/cuba/web/toolkit/ui/client/grouptable/CubaGroupTableWidget.java +++ b/modules/web-toolkit/src/com/haulmont/cuba/web/toolkit/ui/client/grouptable/CubaGroupTableWidget.java @@ -394,6 +394,7 @@ public class CubaGroupTableWidget extends CubaScrollTableWidget { protected String groupKey; protected boolean expanded; protected Boolean hasCells; + protected Element expander; public CubaGroupTableGroupRow(UIDL uidl, char[] aligns) { super(uidl, aligns); @@ -578,11 +579,11 @@ public class CubaGroupTableWidget extends CubaScrollTableWidget { container.setInnerHTML(""); - Element groupDiv = DOM.createDiv(); - groupDiv.setInnerHTML(" "); + expander = DOM.createDiv(); + expander.setInnerHTML(" "); - groupDiv.setClassName(CLASSNAME + "-group-cell-expander"); - DOM.appendChild(container, groupDiv); + expander.setClassName(CLASSNAME + "-group-cell-expander"); + DOM.appendChild(container, expander); Element contentDiv = DOM.createDiv(); contentDiv.setInnerHTML(containerInnerHTML); @@ -602,7 +603,7 @@ public class CubaGroupTableWidget extends CubaScrollTableWidget { } setRowFocus(this); - if (!isSingleSelectMode()) { + if (event.getEventTarget().cast() != expander) { deselectAll(); sendSelectedRows(false); } diff --git a/modules/web/src/com/haulmont/cuba/web/gui/components/WebAbstractTable.java b/modules/web/src/com/haulmont/cuba/web/gui/components/WebAbstractTable.java index 64e74cadc1..f8cf5ad819 100644 --- a/modules/web/src/com/haulmont/cuba/web/gui/components/WebAbstractTable.java +++ b/modules/web/src/com/haulmont/cuba/web/gui/components/WebAbstractTable.java @@ -483,7 +483,6 @@ public abstract class WebAbstractTable