You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by er...@apache.org on 2014/12/19 07:40:13 UTC

[1/6] git commit: [flex-sdk] [refs/heads/develop] - modified script to detect emulated environments on windows versus unix and build the main file list to copy accordingly

Repository: flex-sdk
Updated Branches:
  refs/heads/develop b9b90c59f -> bcb29254f


modified script to detect emulated environments on windows versus unix and build the main file list to copy accordingly


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/477b058b
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/477b058b
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/477b058b

Branch: refs/heads/develop
Commit: 477b058ba31f52f88e82ad649fb80f70012e6b0d
Parents: 2d79469
Author: chrsmrtn <ch...@apache.org>
Authored: Thu Dec 18 10:02:49 2014 -0700
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Fri Dec 19 07:39:34 2014 +0100

----------------------------------------------------------------------
 ide/constructFlexForIDE.sh | 77 ++++++++++++++++++++++++++++-------------
 1 file changed, 53 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/477b058b/ide/constructFlexForIDE.sh
----------------------------------------------------------------------
diff --git a/ide/constructFlexForIDE.sh b/ide/constructFlexForIDE.sh
index d9533ab..c28a947 100755
--- a/ide/constructFlexForIDE.sh
+++ b/ide/constructFlexForIDE.sh
@@ -149,30 +149,59 @@ fi
 # Copy files first, then directories.
 
 echo Copying the AIR SDK files to directory "${IDE_SDK_DIR}"
-
-files=(
-    "AIR SDK license.pdf" 
-    "AIR SDK Readme.txt" 
-    bin/adl.exe 
-    bin/adt.bat 
-    bin/adl
-    bin/adt
-    frameworks/libs/air
-    frameworks/libs/player/11.1
-    frameworks/projects/air
-    include
-    install/android
-    lib/adt.jar 
-    lib/android
-    lib/aot
-    lib/nai
-    lib/win
-    runtimes
-    samples/badge
-    samples/descriptor-sample.xml
-    samples/icons
-    templates/air
-    templates/extensions)
+OS=`uname`
+cygwinCheck=`echo $OS|awk '{print match($0,"CYGWIN")}'`;
+mingwCheck=`echo $OS|awk '{print match($0,"MINGW")}'`;
+if  [ $cygwinCheck -gt 0 ] || [ $mingwCheck -gt 0 ]
+then
+    echo "Emulated environment on windows detected: $OS"
+    # set files for emulated environment on windows, we do not need to copy adt and adl as adl.exe and adt.bat will be copied and used
+    files=(
+        "AIR SDK license.pdf"
+        "AIR SDK Readme.txt"
+        bin/adl.exe
+        bin/adt.bat
+        frameworks/libs/air
+        frameworks/libs/player/11.1
+        frameworks/projects/air
+        include
+        install/android
+        lib/adt.jar 
+        lib/android
+        lib/aot
+        lib/nai
+        lib/win
+        runtimes
+        samples/badge
+        samples/descriptor-sample.xml
+        samples/icons
+        templates/air
+        templates/extensions)
+else
+    # set files for any other environment, assuming will be unix compatible
+    echo "Unix environment detected"
+    files=(
+        "AIR SDK license.pdf"
+        "AIR SDK Readme.txt"
+        bin/adl
+        bin/adt
+        frameworks/libs/air
+        frameworks/libs/player/11.1
+        frameworks/projects/air
+        include
+        install/android
+        lib/adt.jar
+        lib/android
+        lib/aot
+        lib/nai
+        lib/win
+        runtimes
+        samples/badge
+        samples/descriptor-sample.xml
+        samples/icons
+        templates/air
+        templates/extensions)
+fi
 for file in "${files[@]}" 
 do
     copyFileOrDirectory "$file"


[6/6] git commit: [flex-sdk] [refs/heads/develop] - Several FlatSpark bug fixes, resolves FLEX-34692 and FLEX-34694

Posted by er...@apache.org.
Several FlatSpark bug fixes, resolves FLEX-34692 and FLEX-34694

FlatSpark now accepts user "fontSize" properties
Added default values for fontSize and iconFontSize properties
Changed how FlatSpark renders button's label's sizes to avoid a potential exception
Removed unused parts from several components' "exclude" that caused an exception when used with chromeColor


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/bcb29254
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/bcb29254
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/bcb29254

Branch: refs/heads/develop
Commit: bcb29254f539e88d9d6c0b5ad995b1c8a42ee7f2
Parents: 2785366
Author: Mahmoud Ali <ak...@apache.org>
Authored: Thu Dec 18 21:02:50 2014 -0300
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Fri Dec 19 07:39:36 2014 +0100

----------------------------------------------------------------------
 frameworks/projects/flatspark/defaults.css      |   6 ++
 .../src/flatspark/components/ButtonIcon.as      |   5 +-
 .../src/flatspark/skins/ButtonIconSkin.mxml     | 101 +++++++++++--------
 .../src/flatspark/skins/ButtonSkin.mxml         |  47 +++------
 .../src/flatspark/skins/CheckBoxSkin.mxml       |   6 +-
 .../src/flatspark/skins/PanelSkin.mxml          |   2 +-
 .../src/flatspark/skins/RadioButtonSkin.mxml    |   2 +-
 .../src/flatspark/skins/TextInputIconSkin.mxml  |   2 +-
 .../src/flatspark/skins/TitleWindowSkin.mxml    |   2 +-
 9 files changed, 87 insertions(+), 86 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/defaults.css b/frameworks/projects/flatspark/defaults.css
index 5771436..f84b715 100644
--- a/frameworks/projects/flatspark/defaults.css
+++ b/frameworks/projects/flatspark/defaults.css
@@ -107,8 +107,14 @@ s|Application {
 	fontFamily: Lato, Helvetica, Arial, sans-serif;
 }
 
+s|Button {
+	fontSize: 14;
+}
+
 components|ButtonIcon {
 	skinClass: ClassReference("flatspark.skins.ButtonIconSkin");
+	fontSize: 14;
+	iconFontSize: 17;
 }
 
 components|TextInputIcon {

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/components/ButtonIcon.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/components/ButtonIcon.as b/frameworks/projects/flatspark/src/flatspark/components/ButtonIcon.as
index d14c53f..e3f5620 100644
--- a/frameworks/projects/flatspark/src/flatspark/components/ButtonIcon.as
+++ b/frameworks/projects/flatspark/src/flatspark/components/ButtonIcon.as
@@ -21,7 +21,7 @@ package flatspark.components
 	import spark.components.Button;
 	
 	import flatspark.enums.BrandColorEnum;
-
+	[Style(name="iconFontSize", type="Number", format="Length", inherit="yes", minValue="1.0", maxValue="720.0")]
 	public class ButtonIcon extends spark.components.Button
 	{
 
@@ -30,6 +30,9 @@ package flatspark.components
 		
 		[Bindable]
 		public var brand:int = BrandColorEnum.Default;
+		
+		[Bindable]
+		public var fixedHeight:Boolean = true;
 
 
 		public function ButtonIcon()

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/ButtonIconSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/ButtonIconSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/ButtonIconSkin.mxml
index cb8ab83..c7f03fc 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/ButtonIconSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/ButtonIconSkin.mxml
@@ -44,7 +44,7 @@ limitations under the License.
 
 			/* Define the skin elements that should not be colorized. 
 			For button, the graphics are colorized but the label is not. */
-			static private const exclusions:Array = ["iconDisplay", "labelDisplay"];
+			static private const exclusions:Array = ["labelDisplay"];
 			
 			/** 
 			 * @private
@@ -59,6 +59,9 @@ limitations under the License.
 				useChromeColor = true;
 				hostComponent.useHandCursor=true;
 				hostComponent.buttonMode=true;
+				// Set 'fontSize' here cause doing this inside the 'labelDisplay' results in an error
+				(labelDisplay as Label).setStyle("fontSize", fontSize);
+				(iconFont as Label).setStyle("fontSize", iconSize);
 				super.initializationComplete();
 			}  
 			
@@ -78,62 +81,76 @@ limitations under the License.
 					fill_disabled.radiusX = cornerRadius;
 				}
 				
-				/*var larguraIcone:int = 0;
-				if (iconFont.text != null && iconFont.text != "")
-				{
-					larguraIcone = 60;
-				}*/
 				super.updateDisplayList(unscaledWidth, unscaledHeight);
 			}
 			
 			private var cornerRadius:Number = 2;
 			
-			private static function getFontSize(height:int):int
+			private function get fontSize():Number
 			{
-				var altura:int = 15;
+				var fontHeight:int = 14;
 				
-				switch (height)
+				if (hostComponent.fixedHeight)
+				{
+					switch (hostComponent.height)
+					{
+						case ButtonSizeEnum.Large:
+							fontHeight = 17;
+							break;
+						case ButtonSizeEnum.Normal:
+							fontHeight = 14;
+							break;
+						case ButtonSizeEnum.Small:
+							fontHeight = 13;
+							break;
+						case ButtonSizeEnum.ExtraSmall:
+							fontHeight = 12;
+							break;
+						default:
+							fontHeight = hostComponent.getStyle("fontSize");
+							break;
+					}
+				}
+				else
 				{
-					case ButtonSizeEnum.Large:
-						altura = 17;
-						break;
-					case ButtonSizeEnum.Normal:
-						altura = 14;
-						break;
-					case ButtonSizeEnum.Small:
-						altura = 13;
-						break;
-					case ButtonSizeEnum.ExtraSmall:
-						altura = 12;
-						break;
+					fontHeight = hostComponent.getStyle("fontSize");
 				}
 				
-				return altura;
+				return fontHeight;
 			}
 			
-			private static function getIconSize(height:int):int
+			private function get iconSize():Number
 			{
-				var altura:int = 17;
+				var iconHeight:int = 17;				
 				
-				switch (height)
+				if (hostComponent.fixedHeight)
 				{
-					case ButtonSizeEnum.Large:
-						altura = 19;
-						break;
-					case ButtonSizeEnum.Normal:
-						altura = 17;
-						break;
-					case ButtonSizeEnum.Small:
-						altura = 15;
-						break;
-					case ButtonSizeEnum.ExtraSmall:
-						altura = 12;
-						break;
+					switch (hostComponent.height)
+					{
+						case ButtonSizeEnum.Large:
+							iconHeight = 19;
+							break;
+						case ButtonSizeEnum.Normal:
+							iconHeight = 17;
+							break;
+						case ButtonSizeEnum.Small:
+							iconHeight = 15;
+							break;
+						case ButtonSizeEnum.ExtraSmall:
+							iconHeight = 12;
+							break;
+						default:
+							iconHeight = hostComponent.getStyle("iconFontSize");
+							break;
+					}
+				}
+				else
+				{
+					iconHeight = hostComponent.getStyle("iconFontSize");
 				}
 				
-				return altura;
+				return iconHeight;
 			}
-			
 		]]>        
 	</fx:Script>
 	
@@ -177,14 +194,14 @@ limitations under the License.
 	<!--- @copy spark.components.supportClasses.ButtonBase#labelDisplay  -->
 	<s:HGroup verticalAlign="middle" verticalCenter="0" horizontalAlign="center" horizontalCenter="0" left="10" right="10" top="2" bottom="2">
 		<s:Label id="iconFont" color="0xFFFFFF" color.disabled="0xE3E3E3" text="{hostComponent.iconFont}"
-				 textAlign="left" fontSize="{getIconSize(hostComponent.height)}" fontFamily="FontAwesome"
+				 textAlign="left" fontFamily="FontAwesome"
 				 maxDisplayedLines="1" includeInLayout="{hostComponent.iconFont != null}"
 				 horizontalCenter="0" verticalCenter="0" verticalAlign="middle">
 		</s:Label>
 		
 		<s:Label id="labelDisplay" color="0xFFFFFF" color.disabled="0xE3E3E3"
-				 textAlign="center" fontSize="{getFontSize(hostComponent.height)}" fontFamily="Lato"
-				 maxDisplayedLines="1"
+				 textAlign="center" fontFamily="Lato"
+				 maxDisplayedLines="1" includeInLayout="{hostComponent.label != ''}"
 				 horizontalCenter="0" verticalCenter="1" verticalAlign="middle">
 		</s:Label>
 	</s:HGroup>

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/ButtonSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/ButtonSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/ButtonSkin.mxml
index ce56543..966497f 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/ButtonSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/ButtonSkin.mxml
@@ -28,7 +28,7 @@ limitations under the License.
 @playerversion AIR 1.5
 @productversion Flex 4
 -->
-<s:SparkSkin xmlns:fx="http://ns.adobe.com/mxml/2009"
+<s:SparkButtonSkin xmlns:fx="http://ns.adobe.com/mxml/2009"
 			 xmlns:s="library://ns.adobe.com/flex/spark" 
 			 xmlns:fb="http://ns.adobe.com/flashbuilder/2009"
 			 minWidth="21" minHeight="21" height="{ButtonSizeEnum.Normal}"
@@ -60,6 +60,8 @@ limitations under the License.
 				useChromeColor = true;
 				hostComponent.useHandCursor=true;
 				hostComponent.buttonMode=true;
+				// Set 'fontSize' here cause doing this inside the 'labelDisplay' results in an error
+				(labelDisplay as Label).setStyle("fontSize", fontSize);
 				super.initializationComplete();
 			}  
 			
@@ -79,21 +81,16 @@ limitations under the License.
 					fill_disabled.radiusX = cornerRadius;
 				}
 				
-				/*var larguraIcone:int = 0;
-				if (iconFont.text != null && iconFont.text != "")
-				{
-					larguraIcone = 60;
-				}*/
 				super.updateDisplayList(unscaledWidth, unscaledHeight);
 			}
 			
 			private var cornerRadius:Number = 2;
 			
-			private static function getFontSize(height:int):int
+			private function get fontSize():Number
 			{
-				var altura:int = 15;
+				var altura:int = 14;
 				
-				switch (height)
+				switch (hostComponent.height)
 				{
 					case ButtonSizeEnum.Large:
 						altura = 17;
@@ -107,34 +104,14 @@ limitations under the License.
 					case ButtonSizeEnum.ExtraSmall:
 						altura = 12;
 						break;
-				}
-				
-				return altura;
-			}
-			
-			private static function getIconSize(height:int):int
-			{
-				var altura:int = 17;
-				
-				switch (height)
-				{
-					case ButtonSizeEnum.Large:
-						altura = 19;
-						break;
-					case ButtonSizeEnum.Normal:
-						altura = 17;
-						break;
-					case ButtonSizeEnum.Small:
-						altura = 15;
-						break;
-					case ButtonSizeEnum.ExtraSmall:
-						altura = 12;
+					default:
+						// Make sure that an optional passed 'fontSize' inside the host componenet will be considered
+						altura = hostComponent.getStyle("fontSize");
 						break;
 				}
 				
 				return altura;
 			}
-			
 		]]>        
 	</fx:Script>
 	
@@ -176,9 +153,11 @@ limitations under the License.
 	
 	<!-- layer 8: text -->
 	<!--- @copy spark.components.supportClasses.ButtonBase#labelDisplay  -->
+	<!--- @see initializationComplete() -->
 	<s:Label id="labelDisplay" color="0xFFFFFF" color.disabled="0xE3E3E3" right="10" left="10"
-			 textAlign="center" fontSize="{getFontSize(hostComponent.height)}" fontFamily="Lato"
+			 textAlign="center" 
+			 fontFamily="Lato"
 			 maxDisplayedLines="1"
 			 horizontalCenter="0" verticalCenter="1" verticalAlign="middle">
 	</s:Label>
-</s:SparkSkin>
+</s:SparkButtonSkin>

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/CheckBoxSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/CheckBoxSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/CheckBoxSkin.mxml
index 504bf2d..79584bd 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/CheckBoxSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/CheckBoxSkin.mxml
@@ -43,7 +43,7 @@ limitations under the License.
     <fx:Script fb:purpose="styling">
         /* Define the skin elements that should not be colorized. 
            For button, the graphics are colorized but the label is not. */
-        static private const exclusions:Array = ["labelDisplay", "check"];
+        static private const exclusions:Array = ["labelDisplay"];
 
        /** 
         * @private 
@@ -116,10 +116,6 @@ limitations under the License.
 			</s:fill>
 		</s:Rect>
         
-		<!--<s:Label fontFamily="FontAwesome" fontSize="12" color="#FFFFFF" text="{AwesomeUtils.fa_check}" includeIn="overStates"
-				 itemCreationPolicy="immediate" verticalAlign="middle" horizontalCenter="0" verticalCenter="0" alpha="0.75"
-				 />-->
-		
 		<s:Label fontFamily="FontAwesome" fontSize="12" color="#FFFFFF" text="{AwesomeUtils.fa_check}" includeIn="selectedStates"
 				 itemCreationPolicy="immediate" verticalAlign="middle" horizontalCenter="0" verticalCenter="0"
 				 />

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/PanelSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/PanelSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/PanelSkin.mxml
index 9df0ea7..00fdd74 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/PanelSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/PanelSkin.mxml
@@ -49,7 +49,7 @@ limitations under the License.
 		
 		/* Define the skin elements that should not be colorized. 
         For panel, border and title background are skinned, but the content area, background, border, and title text are not. */
-        static private const exclusions:Array = ["background", "titleDisplay", "contentGroup", "controlBarGroup", "border"];
+        static private const exclusions:Array = ["background", "titleDisplay", "contentGroup", "controlBarGroup"];
 			
 		/* exclusions before Flex 4.5 for backwards-compatibility purposes */
 		static private const exclusions_4_0:Array = ["background", "titleDisplay", "contentGroup", "controlBarGroup"];

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/RadioButtonSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/RadioButtonSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/RadioButtonSkin.mxml
index 97e2bb1..63c10fe 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/RadioButtonSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/RadioButtonSkin.mxml
@@ -36,7 +36,7 @@ limitations under the License.
     <fx:Script fb:purpose="styling">
         /* Define the skin elements that should not be colorized. 
            For button, the graphics are colorized but the label is not. */
-        static private const exclusions:Array = ["labelDisplay", "dot"];
+        static private const exclusions:Array = ["labelDisplay"];
 
         /**
          * @private

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/TextInputIconSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/TextInputIconSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/TextInputIconSkin.mxml
index a4b167a..92df014 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/TextInputIconSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/TextInputIconSkin.mxml
@@ -66,7 +66,7 @@ limitations under the License.
         private var paddingChanged:Boolean;
         
         /* Define the skin elements that should not be colorized. */
-        static private const exclusions:Array = ["background", "background_disabled", "textDisplay", "promptDisplay", "border", "border_disabled"];
+        static private const exclusions:Array = ["background", "background_disabled", "textDisplay", "promptDisplay", "border"];
         
         /* exclusions before Flex 4.5 for backwards-compatibility purposes */
         static private const exclusions_4_0:Array = ["background", "background_disabled", "textDisplay", "promptDisplay"];

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/bcb29254/frameworks/projects/flatspark/src/flatspark/skins/TitleWindowSkin.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/flatspark/src/flatspark/skins/TitleWindowSkin.mxml b/frameworks/projects/flatspark/src/flatspark/skins/TitleWindowSkin.mxml
index c4e4a94..86a37a2 100644
--- a/frameworks/projects/flatspark/src/flatspark/skins/TitleWindowSkin.mxml
+++ b/frameworks/projects/flatspark/src/flatspark/skins/TitleWindowSkin.mxml
@@ -50,7 +50,7 @@ limitations under the License.
 		
 		/* Define the skin elements that should not be colorized. 
         For panel, border and title background are skinned, but the content area, background, border, and title text are not. */
-        static private const exclusions:Array = ["background", "titleDisplay", "contentGroup", "border"];
+        static private const exclusions:Array = ["background", "titleDisplay", "contentGroup"];
 		
 		/* exclusions before Flex 4.5 for backwards-compatibility purposes */
 		static private const exclusions_4_0:Array = ["background", "titleDisplay", "contentGroup"];


[2/6] git commit: [flex-sdk] [refs/heads/develop] - Updated with recently resolved JIRAs

Posted by er...@apache.org.
Updated with recently resolved JIRAs

Signed-off-by: Erik de Bruin <er...@ixsoftware.nl>


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/2d794697
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/2d794697
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/2d794697

Branch: refs/heads/develop
Commit: 2d7946976c10568522807543170278b50ead4a7c
Parents: b9b90c5
Author: Erik de Bruin <er...@ixsoftware.nl>
Authored: Thu Dec 18 13:50:22 2014 +0100
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Fri Dec 19 07:39:34 2014 +0100

----------------------------------------------------------------------
 RELEASE_NOTES | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/2d794697/RELEASE_NOTES
----------------------------------------------------------------------
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index 315493f..d131bd7 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -30,6 +30,7 @@ FLEX-34633  HSlider track (Android4 skin) not being filled if thumb position set
 FLEX-34631  Cannot add source paths to a mustella test using a config file
 FLEX-34611  Application crash when textFlow property set to null with
             preserveSelection
+FLEX-34609  ContainerController has superfluous null checks for _container
 FLEX-34608  IOS 7 Hslider (Scrubber) skin
 FLEX-34606  Redundant variable
 FLEX-34592  Can't use optionnal importer for TLF plainTextFormat and
@@ -81,6 +82,9 @@ FLEX-33054  Cursor Seek in HierarchicalCollectionViewCursor operates on wrong
 FLEX-32541  sortable ou sortableColumns = false still shows box of sorting and
             sortItemRenderer = null throws error
 FLEX-28291  Linear Vector Layout on the ComboBox
+FLEX-26478  Runtime error occured when a TextInput's text mouse selection isn't
+            finished yet but the TextInput instance is removed or its text
+            changes
 
 Other fixes (no JIRA issue created):
 - correct case for osmf.swc so compiles on Linux work


[3/6] git commit: [flex-sdk] [refs/heads/develop] - Update comments to keep up with latest visual changes

Posted by er...@apache.org.
Update comments to keep up with latest visual changes


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/94cb1704
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/94cb1704
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/94cb1704

Branch: refs/heads/develop
Commit: 94cb1704cd0b4b5ab36ccc241b560c65a322790d
Parents: 19df04e
Author: OmPrakash Muppirala <bi...@gmail.com>
Authored: Thu Dec 18 12:27:44 2014 -0800
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Fri Dec 19 07:39:35 2014 +0100

----------------------------------------------------------------------
 .../spark/src/spark/components/BusyIndicator.as       | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/94cb1704/frameworks/projects/spark/src/spark/components/BusyIndicator.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/spark/components/BusyIndicator.as b/frameworks/projects/spark/src/spark/components/BusyIndicator.as
index 0086f74..1f665ee 100644
--- a/frameworks/projects/spark/src/spark/components/BusyIndicator.as
+++ b/frameworks/projects/spark/src/spark/components/BusyIndicator.as
@@ -68,8 +68,8 @@ package spark.components
 /**
  *  The BusyIndicator defines a component to display when a long-running 
  *  operation is in progress. 
- *  For Web, Desktop and Android, a circle is drawn that rotates.  
- *  For iOS, a spinner with twelve spoke is drawn.
+ *  For Web, Desktop and iOS, a spinner with twelve spoke is drawn.  
+ *  For Android, a circle is drawn that rotates.
  *  The color of the circle or spokes is controlled by the value of the <code>symbolColor</code> style.
  *  The transparency of this component can be modified using the <code>alpha</code> property,
  *  but the alpha value of each spoke cannot be modified.
@@ -88,10 +88,12 @@ package spark.components
  *  <p>The BusyIndicator has the following default characteristics:</p>
  *  <table class="innertable">
  *     <tr><th>Characteristic</th><th>Description</th></tr>
- *     <tr><td>Default size</td><td>160 DPI: 26x26 pixels<br>
- *                                  240 DPI: 40x40 pixels<br>
- *                                  320 DPI: 52x52 pixels<br>
- * 									380 DPI: 80x80 pixels<br></td></tr>
+ *     <tr><td>Default size</td><td>160 DPI: 36x36 pixels<br>
+ *                                  120 DPI: 27x27 pixels<br>
+ *                                  240 DPI: 54x54 pixels<br>
+ *                                  320 DPI: 72x72 pixels<br>
+ * 									480 DPI: 108x108 pixels<br>
+ * 									640 DPI: 144x144 pixels<br></td></tr>
  *     <tr><td>Minimum size</td><td>20x20 pixels</td></tr>
  *     <tr><td>Maximum size</td><td>No limit</td></tr>
  *  </table>


[4/6] git commit: [flex-sdk] [refs/heads/develop] - Add skin for web and desktop version of BusyIndicator. Fix for https://issues.apache.org/jira/browse/FLEX-34690

Posted by er...@apache.org.
Add skin for web and desktop version of BusyIndicator.
Fix for https://issues.apache.org/jira/browse/FLEX-34690


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/19df04e7
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/19df04e7
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/19df04e7

Branch: refs/heads/develop
Commit: 19df04e7b35bcdf4e70ada91e2fe9d00574afe69
Parents: 477b058
Author: OmPrakash Muppirala <bi...@gmail.com>
Authored: Thu Dec 18 12:15:06 2014 -0800
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Fri Dec 19 07:39:35 2014 +0100

----------------------------------------------------------------------
 frameworks/projects/spark/defaults.css          |   5 +
 frameworks/projects/spark/src/SparkClasses.as   |   1 +
 .../spark/src/spark/components/BusyIndicator.as |   6 +-
 .../src/spark/skins/spark/BusyIndicatorSkin.as  | 211 +++++++++++++++++++
 .../spark/skins/spark/assets/BusyIndicator.fxg  |  64 ++++++
 5 files changed, 285 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/19df04e7/frameworks/projects/spark/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/defaults.css b/frameworks/projects/spark/defaults.css
index 0ced94e..d32f3ed 100644
--- a/frameworks/projects/spark/defaults.css
+++ b/frameworks/projects/spark/defaults.css
@@ -50,6 +50,11 @@ ButtonBar
     skinClass: ClassReference("spark.skins.spark.ButtonBarSkin");
 }
 
+BusyIndicator
+{
+	skinClass: ClassReference("spark.skins.spark.BusyIndicatorSkin");	
+}
+
 Callout
 {
     backgroundColor: #ffffff;

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/19df04e7/frameworks/projects/spark/src/SparkClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/SparkClasses.as b/frameworks/projects/spark/src/SparkClasses.as
index 0aa207f..ac6cd00 100644
--- a/frameworks/projects/spark/src/SparkClasses.as
+++ b/frameworks/projects/spark/src/SparkClasses.as
@@ -54,6 +54,7 @@ import spark.skins.spark.BorderContainerSkin; BorderContainerSkin;
 import spark.skins.spark.ButtonSkin; ButtonSkin;
 import spark.skins.spark.DefaultButtonSkin; DefaultButtonSkin;
 import spark.skins.spark.ButtonBarSkin; ButtonBarSkin;
+import spark.skins.spark.BusyIndicatorSkin; BusyIndicatorSkin;
 import spark.skins.spark.ButtonBarFirstButtonSkin; ButtonBarFirstButtonSkin;
 import spark.skins.spark.ButtonBarMiddleButtonSkin; ButtonBarMiddleButtonSkin;
 import spark.skins.spark.ButtonBarLastButtonSkin; ButtonBarLastButtonSkin;

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/19df04e7/frameworks/projects/spark/src/spark/components/BusyIndicator.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/spark/components/BusyIndicator.as b/frameworks/projects/spark/src/spark/components/BusyIndicator.as
index 8230525..0086f74 100644
--- a/frameworks/projects/spark/src/spark/components/BusyIndicator.as
+++ b/frameworks/projects/spark/src/spark/components/BusyIndicator.as
@@ -67,8 +67,10 @@ package spark.components
 
 /**
  *  The BusyIndicator defines a component to display when a long-running 
- *  operation is in progress. This component creates a spinner with twelve spokes.
- *  The color of the spokes is controlled by the value of the <code>symbolColor</code> style.
+ *  operation is in progress. 
+ *  For Web, Desktop and Android, a circle is drawn that rotates.  
+ *  For iOS, a spinner with twelve spoke is drawn.
+ *  The color of the circle or spokes is controlled by the value of the <code>symbolColor</code> style.
  *  The transparency of this component can be modified using the <code>alpha</code> property,
  *  but the alpha value of each spoke cannot be modified.
  *

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/19df04e7/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
new file mode 100644
index 0000000..90a6fc9
--- /dev/null
+++ b/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
@@ -0,0 +1,211 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package spark.skins.spark
+{
+	import flash.display.DisplayObject;
+	import flash.events.TimerEvent;
+	import flash.geom.Matrix;
+	import flash.utils.Timer;
+	
+	import mx.core.DPIClassification;
+	
+	import spark.components.BusyIndicator;
+	import spark.skins.ActionScriptSkinBase;
+	import spark.skins.spark.assets.BusyIndicator;
+	
+	public class BusyIndicatorSkin extends ActionScriptSkinBase
+	{
+		static private const DEFAULT_ROTATION_INTERVAL:Number = 50;
+		private var busyIndicatorClass:Class;
+		private var busyIndicator:DisplayObject;
+		private var busyIndicatorDiameter:Number;
+		private var rotationTimer:Timer;
+		private var rotationInterval:Number;
+		/**
+		 *  @private
+		 * 
+		 *  Current rotation of this component in degrees.
+		 */   
+		private var currentRotation:Number = 0;
+		private var symbolColor:uint;
+		private var symbolColorChanged:Boolean = false;		
+		
+		public function BusyIndicatorSkin()
+		{
+			super();
+			
+			busyIndicatorClass = spark.skins.spark.assets.BusyIndicator;
+			rotationInterval = getStyle("rotationInterval");
+			if (isNaN(rotationInterval))
+				rotationInterval = DEFAULT_ROTATION_INTERVAL;
+			if (rotationInterval < 16.6)
+				rotationInterval = 16.6;
+			
+			switch(applicationDPI) 
+			{	
+				case DPIClassification.DPI_640:
+				{
+					busyIndicatorDiameter = 144;
+					break;
+				}
+				case DPIClassification.DPI_480:
+				{
+					busyIndicatorDiameter = 108;
+					break;
+				}		
+				case DPIClassification.DPI_320:
+				{
+					busyIndicatorDiameter = 72;
+					break;
+				}
+				case DPIClassification.DPI_240:
+				{
+					busyIndicatorDiameter = 54;
+					break;
+				}
+				case DPIClassification.DPI_120:
+				{
+					busyIndicatorDiameter = 27;
+					break;
+				}
+				default://160 DPI
+				{
+					busyIndicatorDiameter = 36;
+					break;
+				}
+			}
+		}
+		
+		private var _hostComponent:spark.components.BusyIndicator;
+		
+		public function get hostComponent():spark.components.BusyIndicator
+		{
+			return _hostComponent;
+		}
+		
+		public function set hostComponent(value:spark.components.BusyIndicator):void 
+		{
+			_hostComponent = value;
+		}
+		
+		override protected function createChildren():void
+		{
+			busyIndicator = new busyIndicatorClass();
+			busyIndicator.width = busyIndicator.height = busyIndicatorDiameter;
+			addChild(busyIndicator);
+		}
+		
+		override protected function measure():void
+		{
+			measuredWidth = busyIndicatorDiameter;
+			measuredHeight = busyIndicatorDiameter;
+			
+			measuredMinHeight = busyIndicatorDiameter;
+			measuredMinWidth = busyIndicatorDiameter
+		}
+		
+		override protected function commitCurrentState():void
+		{
+			super.commitCurrentState();
+			if(currentState == "rotatingState")
+			{
+				startRotation();
+			}
+			else
+			{
+				stopRotation();
+			}
+		}
+		
+		override public function styleChanged(styleProp:String):void
+		{
+			var allStyles:Boolean = !styleProp || styleProp == "styleName";
+			
+			if (allStyles || styleProp == "symbolColor")
+			{
+				symbolColor = getStyle("symbolColor");
+				symbolColorChanged = true;
+				invalidateDisplayList();
+			}
+			super.styleChanged(styleProp);
+		}
+		
+		override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
+		{
+			super.updateDisplayList(unscaledWidth,unscaledHeight);
+			if(symbolColorChanged)
+			{
+				colorizeSymbol();	
+				symbolColorChanged = false;
+			}
+		}
+		
+		private function colorizeSymbol():void
+		{
+			super.applyColorTransform(this.busyIndicator, 0x000000, symbolColor);
+		}		
+		
+		private function startRotation():void
+		{
+			rotationTimer = new Timer(rotationInterval);
+			if (!rotationTimer.hasEventListener(TimerEvent.TIMER))
+			{
+				rotationTimer.addEventListener(TimerEvent.TIMER, timerHandler);
+				rotationTimer.start();
+			}
+		}
+		
+		private function stopRotation():void
+		{
+			if (rotationTimer)
+			{
+				rotationTimer.removeEventListener(TimerEvent.TIMER, timerHandler);
+				rotationTimer.stop();
+				rotationTimer = null;
+			}
+		}
+		
+		/**
+		 *  @private
+		 * 
+		 *  Rotate the spinner once for each timer event.
+		 */
+		private function timerHandler(event:TimerEvent):void
+		{
+			currentRotation += rotationInterval;
+			if (currentRotation >= 360)
+				currentRotation = 0;
+			
+			rotate(busyIndicator,currentRotation,measuredWidth/2,measuredHeight/2);
+			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);
+			rotationMatrix.rotate(Math.PI*angle/180);
+			rotationMatrix.translate(aroundX,aroundY);
+			obj.transform.matrix = rotationMatrix;
+		}
+		
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/19df04e7/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg b/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
new file mode 100644
index 0000000..e04248f
--- /dev/null
+++ b/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008" viewWidth="36" viewHeight="36">
+  <Group>
+    <Group x="-12.8125" y="-6.73926">
+      <mask>
+        <Group x="12.8496" y="6.6665">
+          <Path winding="nonZero" data="M0 18.0117C0 27.9429 6.96289 35.9961 17.9629 36.0239L17.9629 33.0127C8.96289 32.9858 3.01074 26.2813 3.01074 18.0117 3.01074 9.74316 8.96289 3.03809 17.9629 3.00977L17.9629 0C6.96289 0.027832 0 8.08008 0 18.0117Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path winding="nonZero" data="M0 36.7485 16.332 0 44.7012 12.6084 28.3691 49.3569 0 36.7485Z">
+        <fill>
+          <LinearGradient x="13.4458" y="44.7148" scaleX="27.8603" rotation="293.962">
+            <GradientEntry ratio="0" color="#FFFFFF"/>
+            <GradientEntry ratio="0.576638" color="#B4B4B3"/>
+            <GradientEntry ratio="0.820765" color="#9C9C9B"/>
+            <GradientEntry ratio="1" color="#919190"/>
+          </LinearGradient>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="2.61719" y="-8">
+      <mask>
+        <Group x="15.3828" y="7.92773">
+          <Path winding="nonZero" data="M0 3.00977C8 3.03809 14.9512 9.74316 14.9512 18.0117 14.9512 26.2813 8 32.9858 0 33.0127L0 36.0239C10 35.9961 17.9629 27.9429 17.9629 18.0117 17.9629 8.08008 10 0.027832 0 0L0 3.00977Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path winding="nonZero" data="M49.7617 34.4028 29.1016 0 0 17.4766 20.6621 51.8799 49.7617 34.4028Z">
+        <fill>
+          <LinearGradient x="37.6406" y="47.1841" scaleX="27.7241" rotation="239.012">
+            <GradientEntry ratio="0" color="#919190"/>
+            <GradientEntry ratio="1" color="#FFFFFF"/>
+          </LinearGradient>
+        </fill>
+      </Path>
+    </Group>
+  </Group>
+</Graphic>
\ No newline at end of file


[5/6] git commit: [flex-sdk] [refs/heads/develop] - Update visuals to make it show 12 spokes instead of circular disk (to keep with current/old visuals)

Posted by er...@apache.org.
Update visuals to make it show 12 spokes instead of circular disk (to keep with current/old visuals)


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/27853666
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/27853666
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/27853666

Branch: refs/heads/develop
Commit: 2785366670441efb9da1729d8a0a0d1b28129c7f
Parents: 94cb170
Author: OmPrakash Muppirala <bi...@gmail.com>
Authored: Thu Dec 18 12:29:23 2014 -0800
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Fri Dec 19 07:39:36 2014 +0100

----------------------------------------------------------------------
 frameworks/projects/spark/defaults.css          |   3 +-
 .../src/spark/skins/spark/BusyIndicatorSkin.as  |  24 ++-
 .../spark/skins/spark/assets/BusyIndicator.fxg  | 191 +++++++++++++++++--
 3 files changed, 191 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/27853666/frameworks/projects/spark/defaults.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/defaults.css b/frameworks/projects/spark/defaults.css
index d32f3ed..9c4c0d3 100644
--- a/frameworks/projects/spark/defaults.css
+++ b/frameworks/projects/spark/defaults.css
@@ -52,7 +52,8 @@ ButtonBar
 
 BusyIndicator
 {
-	skinClass: ClassReference("spark.skins.spark.BusyIndicatorSkin");	
+	skinClass: ClassReference("spark.skins.spark.BusyIndicatorSkin");
+	rotationInterval: 30;  /* Must be multiples of 30 */
 }
 
 Callout

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/27853666/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 90a6fc9..41e7b87 100644
--- a/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
+++ b/frameworks/projects/spark/src/spark/skins/spark/BusyIndicatorSkin.as
@@ -32,12 +32,14 @@ package spark.skins.spark
 	
 	public class BusyIndicatorSkin extends ActionScriptSkinBase
 	{
-		static private const DEFAULT_ROTATION_INTERVAL:Number = 50;
+		static private const DEFAULT_ROTATION_INTERVAL:Number = 30;
 		private var busyIndicatorClass:Class;
 		private var busyIndicator:DisplayObject;
+		private var busyIndicatorBackground:DisplayObject;
 		private var busyIndicatorDiameter:Number;
 		private var rotationTimer:Timer;
 		private var rotationInterval:Number;
+		private var rotationSpeed:Number;
 		/**
 		 *  @private
 		 * 
@@ -45,7 +47,7 @@ package spark.skins.spark
 		 */   
 		private var currentRotation:Number = 0;
 		private var symbolColor:uint;
-		private var symbolColorChanged:Boolean = false;		
+		private var symbolColorChanged:Boolean = false;
 		
 		public function BusyIndicatorSkin()
 		{
@@ -55,8 +57,9 @@ package spark.skins.spark
 			rotationInterval = getStyle("rotationInterval");
 			if (isNaN(rotationInterval))
 				rotationInterval = DEFAULT_ROTATION_INTERVAL;
-			if (rotationInterval < 16.6)
-				rotationInterval = 16.6;
+			if (rotationInterval < 30) //Spokes are at 30 degree angle to each other. 
+				rotationInterval = 30;
+			rotationSpeed = 60;
 			
 			switch(applicationDPI) 
 			{	
@@ -107,7 +110,13 @@ package spark.skins.spark
 		
 		override protected function createChildren():void
 		{
+			//This layer stays still in the background
+			busyIndicatorBackground = new busyIndicatorClass();
+			busyIndicatorBackground.width = busyIndicatorBackground.height = busyIndicatorDiameter;
+			addChild(busyIndicatorBackground);
+			//This layer rotates in the foreground to give the required effect
 			busyIndicator = new busyIndicatorClass();
+			busyIndicator.alpha = 0.3;
 			busyIndicator.width = busyIndicator.height = busyIndicatorDiameter;
 			addChild(busyIndicator);
 		}
@@ -160,11 +169,11 @@ package spark.skins.spark
 		private function colorizeSymbol():void
 		{
 			super.applyColorTransform(this.busyIndicator, 0x000000, symbolColor);
-		}		
+		}
 		
 		private function startRotation():void
 		{
-			rotationTimer = new Timer(rotationInterval);
+			rotationTimer = new Timer(rotationSpeed);
 			if (!rotationTimer.hasEventListener(TimerEvent.TIMER))
 			{
 				rotationTimer.addEventListener(TimerEvent.TIMER, timerHandler);
@@ -208,4 +217,5 @@ package spark.skins.spark
 		}
 		
 	}
-}
\ No newline at end of file
+}
+

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/27853666/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg b/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
index e04248f..f6930b9 100644
--- a/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
+++ b/frameworks/projects/spark/src/spark/skins/spark/assets/BusyIndicator.fxg
@@ -18,47 +18,200 @@
 
 -->
 
-<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008" viewWidth="36" viewHeight="36">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
   <Group>
-    <Group x="-12.8125" y="-6.73926">
+    <Group x="26">
       <mask>
-        <Group x="12.8496" y="6.6665">
-          <Path winding="nonZero" data="M0 18.0117C0 27.9429 6.96289 35.9961 17.9629 36.0239L17.9629 33.0127C8.96289 32.9858 3.01074 26.2813 3.01074 18.0117 3.01074 9.74316 8.96289 3.03809 17.9629 3.00977L17.9629 0C6.96289 0.027832 0 8.08008 0 18.0117Z">
+        <Group>
+          <Path winding="nonZero" data="M4 14 0 14 0 0 4 0 4 14Z">
             <fill>
               <SolidColor color="#FFFFFF"/>
             </fill>
           </Path>
         </Group>
       </mask>
-      <Path winding="nonZero" data="M0 36.7485 16.332 0 44.7012 12.6084 28.3691 49.3569 0 36.7485Z">
+      <Path winding="nonZero" data="M4 12C4 13.1006 3.09961 14 2 14 0.900391 14 0 13.1006 0 12L0 2C0 0.899414 0.900391 0 2 0 3.09961 0 4 0.899414 4 2L4 12Z">
         <fill>
-          <LinearGradient x="13.4458" y="44.7148" scaleX="27.8603" rotation="293.962">
-            <GradientEntry ratio="0" color="#FFFFFF"/>
-            <GradientEntry ratio="0.576638" color="#B4B4B3"/>
-            <GradientEntry ratio="0.820765" color="#9C9C9B"/>
-            <GradientEntry ratio="1" color="#919190"/>
-          </LinearGradient>
+          <SolidColor color="#EEEEEE"/>
         </fill>
       </Path>
     </Group>
-    <Group x="2.61719" y="-8">
+    <Group x="12.4971" y="2.60596">
       <mask>
-        <Group x="15.3828" y="7.92773">
-          <Path winding="nonZero" data="M0 3.00977C8 3.03809 14.9512 9.74316 14.9512 18.0117 14.9512 26.2813 8 32.9858 0 33.0127L0 36.0239C10 35.9961 17.9629 27.9429 17.9629 18.0117 17.9629 8.08008 10 0.027832 0 0L0 3.00977Z">
+        <Group>
+          <Path winding="nonZero" data="M10.4639 12.1245 7 14.1245 0 2 3.46387 0 10.4639 12.1245Z">
             <fill>
               <SolidColor color="#FFFFFF"/>
             </fill>
           </Path>
         </Group>
       </mask>
-      <Path winding="nonZero" data="M49.7617 34.4028 29.1016 0 0 17.4766 20.6621 51.8799 49.7617 34.4028Z">
+      <Path x="0.733521" y="0.733643" winding="nonZero" data="M8.73035 9.65894C9.28064 10.6121 8.95056 11.8411 7.99841 12.3909 7.04626 12.9407 5.81677 12.6121 5.26648 11.6589L0.266479 2.99878C-0.283813 2.04565 0.0462646 0.816162 0.998413 0.266357 1.95056 -0.283447 3.18005 0.0456543 3.73035 0.998779L8.73035&#xD;&#xA; 9.65894Z">
         <fill>
-          <LinearGradient x="37.6406" y="47.1841" scaleX="27.7241" rotation="239.012">
-            <GradientEntry ratio="0" color="#919190"/>
-            <GradientEntry ratio="1" color="#FFFFFF"/>
-          </LinearGradient>
+          <SolidColor color="#333333"/>
         </fill>
       </Path>
     </Group>
+    <Group x="3.10596" y="11.8823">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M14.1245 7.00049 12.1245 10.4644 0 3.46436 2 0 14.1245 7.00049Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.733643" y="0.733887" winding="nonZero" data="M11.6589 5.2666C12.6121 5.81689 12.9407 7.04639 12.3909 7.99854 11.8411 8.95068 10.6121 9.28076 9.65894 8.73047L0.998779 3.73047C0.0456543 3.18018 -0.283447 1.95068 0.266357 0.998047 0.816162 0.0458984 2.04517 -0.283691 2.99829 0.266602L11.6589&#xD;&#xA; 5.2666Z">
+        <fill>
+          <SolidColor color="#444444"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="0.343262" y="25.3438">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M14.0005 0 14.0005 4 0 4 0 0 14.0005 0Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path winding="nonZero" data="M12.0005 0C13.1011 0 14.0005 0.900391 14.0005 2 14.0005 3.09961 13.1011 4 12.0005 4L2.00049 4C0.899902 4 0 3.09961 0 1.99951 0 0.900391 0.899902 0.000488281 2 0.000488281L12.0005 0Z">
+        <fill>
+          <SolidColor color="#555555"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="2.94922" y="32.3828">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M12.125 0 14.125 3.46387 2 10.4639 0 7 12.125 0Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.733765" y="0.733215" winding="nonZero" data="M9.6593 0.266785C10.6124 -0.283997 11.8414 0.0460815 12.3912 0.99823 12.941 1.95135 12.6124 3.17987 11.6593 3.73065L2.99915 8.73065C2.04602 9.28046 0.81604 8.95135 0.266235 7.99823 -0.283569 7.04608 0.0460205 5.81757 0.998657 5.26678L9.6593 0.266785Z">
+        <fill>
+          <SolidColor color="#666666"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="12.2256" y="38.1133">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M7.00098 0 10.4648 2 3.46436 14.125 0 12.125 7.00098 0Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.734314" y="0.733459" winding="nonZero" data="M5.26666 0.998962C5.81647 0.0448608 7.04596 -0.283264 7.99811 0.266541 8.95074 0.816345 9.28082 2.04486 8.73053 2.99799L3.73053 11.6581C3.18024 12.6113 1.95026 12.9413 0.99762 12.3906 0.0454712 11.8408 -0.283142 10.6122 0.266174 9.65912L5.26666&#xD;&#xA; 0.998962Z">
+        <fill>
+          <SolidColor color="#777777"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="25.6875" y="41">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M0 0 4 0 4 14.001 0 14.001 0 0Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path winding="nonZero" data="M0 2C-0.000976563 0.899414 0.900391 0 2 0 3.09961 0 4 0.898438 4 1.99902L4 11.999C4 13.0996 3.09961 14.001 1.99902 14 0.899414 14 0.000976563 13.1006 0 12L0 2Z">
+        <fill>
+          <SolidColor color="#888888"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="32.7266" y="38.2695">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M0 2 3.46387 0 10.4648 12.125 7 14.125 0 2Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.732788" y="0.733398" winding="nonZero" data="M0.267212 2.99805C-0.284546 2.0459 0.0465088 0.816406 0.998657 0.266602 1.95178 -0.283203 3.1803 0.0449219 3.73108 0.998047L8.73108 9.6582C9.28088 10.6113 8.95178 11.8418 7.99866 12.3916 7.04553 12.9414 5.81799 12.6113 5.26721 11.6592L0.267212&#xD;&#xA; 2.99805Z">
+        <fill>
+          <SolidColor color="#999999"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="38.457" y="32.6533">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M0 3.46387 2 0 14.125 7 12.125 10.4648 0 3.46387Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.733398" y="0.73291" winding="nonZero" data="M0.998047 3.73096C0.0449219 3.18213 -0.283203 1.95166 0.266602 0.999512 0.816406 0.0463867 2.04492 -0.283691 2.99805 0.266113L11.6582 5.26611C12.6113 5.81689 12.9414 7.04736 12.3906 7.99951 11.8398 8.95264 10.6123 9.28076 9.65918 8.73096L0.998047&#xD;&#xA; 3.73096Z">
+        <fill>
+          <SolidColor color="#AAAAAA"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="41.3438" y="25.6558">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M0 4.00049 0 0.000488281 14.001 0 14.001 4.00049 0 4.00049Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path winding="nonZero" data="M1.99902 4.00049C0.899414 4.00146 0 3.1001 0 2.00098 0 0.900391 0.898438 0.000488281 1.99902 0L11.999 0C13.0996 0.000488281 14.001 0.900879 14 2.00098 13.999 3.10156 13.1006 3.99951 12 4.00049L1.99902 4.00049Z">
+        <fill>
+          <SolidColor color="#BBBBBB"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="38.6133" y="12.1523">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M2 10.4648 0 7.00098 12.125 0 14.125 3.46436 2 10.4648Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.733398" y="0.734619" winding="nonZero" data="M2.99805 8.73071C2.0459 9.28149 0.816406 8.95044 0.266602 7.99878 -0.283203 7.04565 0.0449219 5.81714 0.99707 5.26636L9.65723 0.266357C10.6113 -0.283447 11.8418 0.0456543 12.3906 0.998779 12.9404 1.95239 12.6113 3.17944 11.6592 3.73022L2.99805&#xD;&#xA; 8.73071Z">
+        <fill>
+          <SolidColor color="#CCCCCC"/>
+        </fill>
+      </Path>
+    </Group>
+    <Group x="32.9971" y="2.76123">
+      <mask>
+        <Group>
+          <Path winding="nonZero" data="M3.46387 14.1255 0 12.1255 7 0 10.4639 2 3.46387 14.1255Z">
+            <fill>
+              <SolidColor color="#FFFFFF"/>
+            </fill>
+          </Path>
+        </Group>
+      </mask>
+      <Path x="0.73291" y="0.73468" winding="nonZero" data="M3.73096 11.6594C3.18115 12.6125 1.95166 12.9406 0.999512 12.3913 0.0463867 11.8405 -0.283691 10.6125 0.266113 9.65936L5.26514 0.999207C5.81689 0.0460815 7.04736 -0.283997 7.99854 0.266785 8.95166 0.818054 9.28076 2.0451 8.73096 2.99823L3.73096&#xD;&#xA; 11.6594Z">
+        <fill>
+          <SolidColor color="#DDDDDD"/>
+        </fill>
+      </Path>
+    </Group>
+    <Path visible="false" winding="nonZero" data="M0 0 53 0 53 53 0 53 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file