You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by jm...@apache.org on 2016/11/07 23:55:34 UTC
git commit: [flex-sdk] [refs/heads/release4.16.0] - FLEX-34738 Fix
BusyIndicator so the skin / timer is removed when it's removed from stage
while still spinning.
Repository: flex-sdk
Updated Branches:
refs/heads/release4.16.0 d175d2cff -> cd45ebd25
FLEX-34738 Fix BusyIndicator so the skin / timer is removed when it's removed from stage while still spinning.
Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/cd45ebd2
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/cd45ebd2
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/cd45ebd2
Branch: refs/heads/release4.16.0
Commit: cd45ebd253dbc44f45515d607c4324a4871b5679
Parents: d175d2c
Author: Justin Mclean <jm...@apache.org>
Authored: Tue Nov 8 10:55:12 2016 +1100
Committer: Justin Mclean <jm...@apache.org>
Committed: Tue Nov 8 10:55:12 2016 +1100
----------------------------------------------------------------------
.../src/spark/skins/ios7/BusyIndicatorSkin.as | 20 ++++++++++++++-----
.../src/spark/skins/spark/BusyIndicatorSkin.as | 21 ++++++++++++++++----
2 files changed, 32 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/cd45ebd2/frameworks/projects/mobiletheme/src/spark/skins/ios7/BusyIndicatorSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/ios7/BusyIndicatorSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/ios7/BusyIndicatorSkin.as
index 805887b..a4fe64f 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/ios7/BusyIndicatorSkin.as
+++ b/frameworks/projects/mobiletheme/src/spark/skins/ios7/BusyIndicatorSkin.as
@@ -153,6 +153,16 @@ package spark.skins.ios7
symbolColorChanged = true;
invalidateDisplayList();
}
+ if (styleProp == "styleName") {
+ var value:String = getStyle("styleName");
+
+ // We're being removed from the stage
+ if (value == null) {
+ stopRotation();
+ busyIndicatorBackground = null;
+ busyIndicator = null;
+ }
+ }
super.styleChanged(styleProp);
}
@@ -206,15 +216,15 @@ package spark.skins.ios7
event.updateAfterEvent();
}
- private var rotationMatrix:Matrix;
private function rotate(obj:DisplayObject, angle:Number, aroundX:Number, aroundY:Number):void
{
- rotationMatrix = new Matrix();
- rotationMatrix.translate(-aroundX,-aroundY);
+ var center:Number = Math.min(aroundX, aroundY); // stop wobbling if not square
+ var rotationMatrix:Matrix = new Matrix();
+ rotationMatrix.translate(-center,-center);
rotationMatrix.rotate(Math.PI*angle/180);
- rotationMatrix.translate(aroundX,aroundY);
+ rotationMatrix.translate(center,center);
obj.transform.matrix = rotationMatrix;
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/cd45ebd2/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as b/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
index c1c98e5..b0feef0 100644
--- a/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
+++ b/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
@@ -239,6 +239,18 @@ package spark.skins.spark
symbolColorChanged = true;
invalidateDisplayList();
}
+
+ if (styleProp == "styleName") {
+ var value:String = getStyle("styleName");
+
+ // We're being removed from the stage
+ if (value == null) {
+ stopRotation();
+ busyIndicatorBackground = null;
+ busyIndicator = null;
+ }
+ }
+
super.styleChanged(styleProp);
}
@@ -326,16 +338,17 @@ package spark.skins.spark
event.updateAfterEvent();
}
- private var rotationMatrix:Matrix;
private function rotate(obj:DisplayObject, angle:Number, aroundX:Number, aroundY:Number):void
{
- rotationMatrix = new Matrix();
- rotationMatrix.translate(-aroundX,-aroundY);
+ var center:Number = Math.min(aroundX, aroundY); // stop wobbling if not square
+ var rotationMatrix:Matrix = new Matrix();
+ rotationMatrix.translate(-center,-center);
rotationMatrix.rotate(Math.PI*angle/180);
- rotationMatrix.translate(aroundX,aroundY);
+ rotationMatrix.translate(center,center);
obj.transform.matrix = rotationMatrix;
}
}
}
+