You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2016/11/24 06:03:25 UTC
git commit: [flex-falcon] [refs/heads/develop] - FLEX-35171 handle
child selectors in CSS output generation
Repository: flex-falcon
Updated Branches:
refs/heads/develop c040b5c88 -> b628a01d0
FLEX-35171 handle child selectors in CSS output generation
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/b628a01d
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/b628a01d
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/b628a01d
Branch: refs/heads/develop
Commit: b628a01d0e7a7b2943810e97b163c34fbc224456
Parents: c040b5c
Author: Alex Harui <ah...@apache.org>
Authored: Wed Nov 23 22:03:02 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 23 22:03:02 2016 -0800
----------------------------------------------------------------------
.../flex/compiler/internal/css/CSSSelector.java | 24 +++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b628a01d/compiler/src/main/java/org/apache/flex/compiler/internal/css/CSSSelector.java
----------------------------------------------------------------------
diff --git a/compiler/src/main/java/org/apache/flex/compiler/internal/css/CSSSelector.java b/compiler/src/main/java/org/apache/flex/compiler/internal/css/CSSSelector.java
index edb7c7b..b3290b8 100644
--- a/compiler/src/main/java/org/apache/flex/compiler/internal/css/CSSSelector.java
+++ b/compiler/src/main/java/org/apache/flex/compiler/internal/css/CSSSelector.java
@@ -102,10 +102,32 @@ public class CSSSelector extends CSSNodeBase implements ICSSSelector
result.append(namespacePrefix).append("|");
if (elementName != null)
result.append(elementName);
- result.append(Joiner.on("").join(conditions));
+ result.append(stringifyConditions(conditions));
return result.toString();
}
+ public String stringifyConditions(List<ICSSSelectorCondition> conditions)
+ {
+ StringBuilder s = new StringBuilder();
+ int n = conditions.size();
+ if (n == 0) return "";
+ if (n == 1) return conditions.get(0).toString();
+ for (int i = 0; i < n; i++)
+ {
+ ICSSSelectorCondition condition = conditions.get(i);
+ if (condition.getConditionType() == ConditionType.CHILD)
+ {
+ String prefix = condition.getConditionType().prefix + " ";
+ s.insert(0, prefix);
+ }
+ else
+ {
+ s.append(condition.getConditionType().prefix);
+ s.append(condition.getValue());
+ }
+ }
+ return s.toString();
+ }
@Override
public ICSSCombinator getCombinator()
{