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 8b8fbb395e Allow nested variants
8b8fbb395e is described below
commit 8b8fbb395e1786452d04f105447f27f41e30a423
Author: Harbs <[email protected]>
AuthorDate: Wed Mar 18 15:30:48 2026 +0200
Allow nested variants
---
.../Style/src/main/royale/org/apache/royale/style/CheckBox.as | 4 +++-
.../main/royale/org/apache/royale/style/skins/CheckBoxSkin.as | 2 +-
.../org/apache/royale/style/stylebeads/CompositeStyle.as | 4 ++++
.../org/apache/royale/style/stylebeads/ILeafStyleBead.as | 1 -
.../royale/org/apache/royale/style/stylebeads/IStyleBead.as | 1 +
.../org/apache/royale/style/stylebeads/LeafStyleBase.as | 11 +++++++++--
.../org/apache/royale/style/stylebeads/StyleBeadBase.as | 2 +-
.../apache/royale/style/stylebeads/states/LeafDecorator.as | 5 ++++-
.../apache/royale/style/stylebeads/states/QueryBaseStyle.as | 4 ++++
9 files changed, 27 insertions(+), 7 deletions(-)
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/CheckBox.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/CheckBox.as
index 3a04e3daa9..830c292d14 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/CheckBox.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/CheckBox.as
@@ -47,10 +47,12 @@ package org.apache.royale.style
}
COMPILE::JS
private var input:HTMLInputElement;
-
+
+ COMPILE::JS
private function elementClicked():void{
// _indeterminate = input.indeterminate = false;//
input.indeterminate should be resolved automatically.
_indeterminate = false;
+ _checked = input.checked;
if(_stylesLoaded && !checkIcon)
applyCheckSkin();
}
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/skins/CheckBoxSkin.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/skins/CheckBoxSkin.as
index 33400c8f98..b5461416e7 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/skins/CheckBoxSkin.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/skins/CheckBoxSkin.as
@@ -317,7 +317,7 @@ package org.apache.royale.style.skins
new OpacityStyle(0),
new PeerPseudo([
new CheckedState([
- new OpacityStyle(1)
+ new OpacityStyle(100)
]),
new IndeterminateState([
new OpacityStyle(0)
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/CompositeStyle.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/CompositeStyle.as
index afcb8a5a1c..73d97670d3 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/CompositeStyle.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/CompositeStyle.as
@@ -33,6 +33,10 @@ package org.apache.royale.style.stylebeads
{
super();
}
+ override public function get styleType():String
+ {
+ return "";
+ }
/**
* Composite styles have no effect, so it should not insert
itself into the hierarchy.
*/
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/ILeafStyleBead.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/ILeafStyleBead.as
index 4d8c09a9ed..54c85a4188 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/ILeafStyleBead.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/ILeafStyleBead.as
@@ -25,7 +25,6 @@ package org.apache.royale.style.stylebeads
function getSelector():String;
function getRule():String;
function get selectorBase():String;
- function get styleType():String;
function get parentQueryId():String;
function get unit():String;
function set unit(value:String):void;
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/IStyleBead.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/IStyleBead.as
index a4a246e8e2..917a077294 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/IStyleBead.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/IStyleBead.as
@@ -29,6 +29,7 @@ package org.apache.royale.style.stylebeads
*/
public interface IStyleBead extends IBead
{
+ function get styleType():String;
function get isLeaf():Boolean;
function get isGroup():Boolean;
function getLeaves():Array;
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 537b25a94a..697b2c7785 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
@@ -74,9 +74,16 @@ package org.apache.royale.style.stylebeads
*
* In many classes the ruleBase can be shared across multiple
style types.
*/
- public function get styleType():String
+ override public function get styleType():String
{
- return ruleBase;
+ var str:String = "";
+ var parent:IStyleBead = parentStyle;
+ while(parent)
+ {
+ str += "-" + parent.styleType;
+ parent = parent.parentStyle;
+ }
+ return ruleBase + str;
}
private var _selectorPrefix:String = "";
/**
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/StyleBeadBase.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/StyleBeadBase.as
index 9ca51a5544..beff6a0d8a 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/StyleBeadBase.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/StyleBeadBase.as
@@ -47,7 +47,7 @@ package org.apache.royale.style.stylebeads
* @royalesuppresspublicvarwarning
*/
public var styles:Array = [];
-
+ abstract public function get styleType():String;
/**
* Decorator style beads should override this method to apply
their decoration to child styles.
*/
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/LeafDecorator.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/LeafDecorator.as
index 178144cdd9..9162db0958 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/LeafDecorator.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/LeafDecorator.as
@@ -38,7 +38,10 @@ package org.apache.royale.style.stylebeads.states
protected var decoratorType:String = STATE;
protected var selectorDecorator:String;
protected var ruleDecorator:String;
- protected var leafStyle:LeafStyleBase;
+ override public function get styleType():String
+ {
+ return selectorDecorator;
+ }
/**
* @royaleignorecoercion
org.apache.royale.style.stylebeads.LeafStyleBase
*/
diff --git
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/QueryBaseStyle.as
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/QueryBaseStyle.as
index f4201ec104..ce747b2833 100644
---
a/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/QueryBaseStyle.as
+++
b/frameworks/projects/Style/src/main/royale/org/apache/royale/style/stylebeads/states/QueryBaseStyle.as
@@ -32,6 +32,10 @@ package org.apache.royale.style.stylebeads.states
{
return true;
}
+ override public function get styleType():String
+ {
+ return querySelector;
+ }
/**
* Change in subclasses for other query types such as
`container` or `supports`.
*/