This is an automated email from the ASF dual-hosted git repository.
harbs pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
The following commit(s) were added to refs/heads/develop by this push:
new dbf2e70c57 improved but not working
dbf2e70c57 is described below
commit dbf2e70c5752953994dd45abe6360ca7f463fc15
Author: Harbs <[email protected]>
AuthorDate: Tue Mar 17 18:38:45 2026 +0200
improved but not working
---
.../apache/royale/style/stylebeads/LeafStyleBase.as | 19 ++++++++++++++-----
.../royale/style/stylebeads/states/PeerPseudo.as | 6 +++---
.../org/apache/royale/style/util/StyleManager.as | 5 -----
3 files changed, 17 insertions(+), 13 deletions(-)
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/LeafStyleBase.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/LeafStyleBase.as
index 5dd15babba..bb79006c77 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/LeafStyleBase.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/LeafStyleBase.as
@@ -163,25 +163,34 @@ package org.apache.royale.style.stylebeads
if(!calculatedSelector)
return "";
- var selector:String = selectorPrefix + selectorBase +
"-" + calculatedSelector;
+ var str:String = selectorPrefix + selectorBase;
+ if(str)
+ str += "-";
+ var selector:String = str + calculatedSelector;
/**
* Always add the rule automatically when accessing the
selector if needed.
*/
- if (!StyleManager.hasStyle(selector))
+ var selectorForRule:String = rulePrefix +
normalizeSelector(selector) + ruleSuffix;
+ if (!StyleManager.hasStyle(selectorForRule))
{
if(parentQueryId)
-
StyleManager.addGroupedRule(parentQueryId, selector, getRule());
+
StyleManager.addGroupedRule(parentQueryId, selectorForRule, getRule());
else
- StyleManager.addStyle(selector,
getRule());
+ StyleManager.addStyle(selectorForRule,
getRule());
}
return selector;
}
+ private function normalizeSelector(selector:String):String
+ { // TODO this is pretty naive. We should
probably be doing some kind of parsing here.
+ return "." + selector.replace(/:/g,
"\\:").replace(/\./g, "\\.").replace(/\//g, "\\/");
+ }
+
public function getRule():String
{
if(!calculatedRuleValue)
return "";
- return rulePrefix + ruleBase + ":" +
calculatedRuleValue + ";";
+ return ruleBase + ":" + calculatedRuleValue + ";";
}
protected function sanitizeSelector(value:String):String
{
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/PeerPseudo.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/PeerPseudo.as
index fa02d86d51..0bd37fc4cd 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/PeerPseudo.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/PeerPseudo.as
@@ -31,9 +31,9 @@ package org.apache.royale.style.stylebeads.states
override public function
decorateChildStyle(style:ILeafStyleBead):void
{
var selector:String = "peer";
- style.selectorPrefix = selector + ":" +
style.selectorPrefix;
- // style.rulePrefix = "." + selector + "\\:" +
style.rulePrefix + "~";
- style.ruleSuffix = selector + ":" + style.ruleSuffix;
+ style.selectorPrefix = selector + "-" +
style.selectorPrefix;
+ style.rulePrefix = "." + selector + ":" +
style.rulePrefix + " ~ ";
+ // style.ruleSuffix = selector + ":" + style.ruleSuffix;
if(parentStyle)
parentStyle.decorateChildStyle(style);
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/util/StyleManager.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/util/StyleManager.as
index 451db5ab0d..131f0d46d2 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/util/StyleManager.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/util/StyleManager.as
@@ -53,14 +53,9 @@ package org.apache.royale.style.util
{
COMPILE::JS
{
- selector = normalizeSelector(selector);
getStyleSheet().insertRule(selector + "{" +
rule + "}", ruleIdx++);
}
}
- private static function
normalizeSelector(selector:String):String
- { // TODO this is pretty naive. We should
probably be doing some kind of parsing here.
- return selector.replace(/:/g, "\\:").replace(/\./g,
"\\.");
- }
COMPILE::JS
private static var ss:CSSStyleSheet;
COMPILE::JS