From 2edab81c8f280a36924cd60ca1df2181465cfcbb Mon Sep 17 00:00:00 2001 From: pag Date: Fri, 13 Nov 2015 17:10:45 +0100 Subject: Use TabState.id for Accordion tab items as well (#18456) Change-Id: I17206081109b2ec356d175915a16b0002a858bb4 --- client/src/com/vaadin/client/ui/VAccordion.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'client') diff --git a/client/src/com/vaadin/client/ui/VAccordion.java b/client/src/com/vaadin/client/ui/VAccordion.java index fc328dd56a..afc66d0f7b 100644 --- a/client/src/com/vaadin/client/ui/VAccordion.java +++ b/client/src/com/vaadin/client/ui/VAccordion.java @@ -36,6 +36,7 @@ import com.vaadin.shared.ComponentConstants; import com.vaadin.shared.ui.accordion.AccordionState; import com.vaadin.shared.ui.tabsheet.TabState; import com.vaadin.shared.ui.tabsheet.TabsheetServerRpc; +import com.vaadin.shared.util.SharedUtil; public class VAccordion extends VTabsheetBase { @@ -79,6 +80,8 @@ public class VAccordion extends VTabsheetBase { item.updateTabStyleName(tabState.styleName); item.setVisible(tabState.visible); + + item.setId(tabState.id); } @Override @@ -160,6 +163,7 @@ public class VAccordion extends VTabsheetBase { public class StackItem extends ComplexPanel implements ClickHandler { private Widget widget; + private String id; public void setHeight(int height) { if (height == -1) { @@ -172,6 +176,18 @@ public class VAccordion extends VTabsheetBase { } } + public void setId(String newId) { + if (!SharedUtil.equals(newId, id)) { + if (id != null) { + getElement().removeAttribute("id"); + } + id = newId; + if (id != null && !id.isEmpty()) { + getElement().setId(id); + } + } + } + public Widget getComponent() { return widget; } -- cgit v1.2.3