diff options
author | AJ <M-AJ@users.noreply.github.com> | 2018-01-31 05:09:45 -0800 |
---|---|---|
committer | Ilia Motornyi <elmot@vaadin.com> | 2018-01-31 15:09:45 +0200 |
commit | 880ff11208672641fc80d294aa60906d3596aebf (patch) | |
tree | 2995af05b2c64c6d00f070ef670ccbbcd07fd238 /server/src | |
parent | be0a67078145a659fac02a388374a2a6432e61e3 (diff) | |
download | vaadin-framework-880ff11208672641fc80d294aa60906d3596aebf.tar.gz vaadin-framework-880ff11208672641fc80d294aa60906d3596aebf.zip |
Optimize style theme duplicates (#10534)
Diffstat (limited to 'server/src')
-rw-r--r-- | server/src/main/java/com/vaadin/ui/AbstractComponent.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/server/src/main/java/com/vaadin/ui/AbstractComponent.java b/server/src/main/java/com/vaadin/ui/AbstractComponent.java index 89dd61986a..86d99af32a 100644 --- a/server/src/main/java/com/vaadin/ui/AbstractComponent.java +++ b/server/src/main/java/com/vaadin/ui/AbstractComponent.java @@ -30,6 +30,8 @@ import java.util.Objects; import java.util.Set; import java.util.StringTokenizer; +import com.vaadin.annotations.Theme; +import com.vaadin.ui.themes.ValoTheme; import org.jsoup.nodes.Attribute; import org.jsoup.nodes.Attributes; import org.jsoup.nodes.Element; @@ -224,6 +226,9 @@ public abstract class AbstractComponent extends AbstractClientConnector if (style == null || style.isEmpty()) { return; } + if (getState().styles != null && getState().styles.contains(style)) { + return; + } if (style.contains(" ")) { // Split space separated style names and add them one by one. StringTokenizer tokenizer = new StringTokenizer(style, " "); @@ -237,9 +242,7 @@ public abstract class AbstractComponent extends AbstractClientConnector getState().styles = new ArrayList<>(); } List<String> styles = getState().styles; - if (!styles.contains(style)) { - styles.add(style); - } + styles.add(style); } @Override |