summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorMarc Englund <marc@vaadin.com>2012-10-11 06:45:32 +0000
committerVaadin Code Review <review@vaadin.com>2012-10-11 06:45:32 +0000
commit0e5fe9d46fbb3c32aa2ceae22f29253c5bf45342 (patch)
treeb1e13f0cfbc14d0bab07bb3dca7b290920cb115c /client
parentdec9f91a708d5b7b4ec1d6a2faaddf2b64827d3e (diff)
parentf5043ac109b73c1a01e1caa8dc7906d864ad8833 (diff)
downloadvaadin-framework-0e5fe9d46fbb3c32aa2ceae22f29253c5bf45342.tar.gz
vaadin-framework-0e5fe9d46fbb3c32aa2ceae22f29253c5bf45342.zip
Merge "Fixed primary stylename handling in Accordion #9900"
Diffstat (limited to 'client')
-rw-r--r--client/src/com/vaadin/client/ui/accordion/VAccordion.java34
1 files changed, 31 insertions, 3 deletions
diff --git a/client/src/com/vaadin/client/ui/accordion/VAccordion.java b/client/src/com/vaadin/client/ui/accordion/VAccordion.java
index e906cf3cce..0fbbcf5780 100644
--- a/client/src/com/vaadin/client/ui/accordion/VAccordion.java
+++ b/client/src/com/vaadin/client/ui/accordion/VAccordion.java
@@ -87,6 +87,26 @@ public class VAccordion extends VTabsheetBase {
}
}
+ @Override
+ public void setStylePrimaryName(String style) {
+ updateStyleNames(style);
+ }
+
+ @Override
+ public void setStyleName(String style) {
+ updateStyleNames(style);
+ }
+
+ protected void updateStyleNames(String primaryStyleName) {
+ super.setStyleName(primaryStyleName);
+ for (Widget w : getChildren()) {
+ if (w instanceof StackItem) {
+ StackItem item = (StackItem) w;
+ item.updateStyleNames(primaryStyleName);
+ }
+ }
+ }
+
/**
* This method tries to find out if a tab has been rendered with a different
* index previously. If this is the case it re-orders the children so the
@@ -359,15 +379,23 @@ public class VAccordion extends VTabsheetBase {
DOM.appendChild(getElement(), captionNode);
DOM.appendChild(getElement(), content);
- getElement().addClassName(CLASSNAME + "-item");
- captionNode.addClassName(CLASSNAME + "-item-caption");
- content.addClassName(CLASSNAME + "-item-content");
+ updateStyleNames(VAccordion.this.getStylePrimaryName());
touchScrollHandler.addElement(getContainerElement());
close();
}
+ private void updateStyleNames(String primaryStyleName) {
+ content.removeClassName(getStylePrimaryName() + "-content");
+ captionNode.removeClassName(getStylePrimaryName() + "-caption");
+
+ setStylePrimaryName(primaryStyleName + "-item");
+
+ captionNode.addClassName(getStylePrimaryName() + "-caption");
+ content.addClassName(getStylePrimaryName() + "-content");
+ }
+
@Override
public void onBrowserEvent(Event event) {
onSelectTab(this);