You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by bi...@apache.org on 2014/03/28 23:16:45 UTC

[2/3] git commit: [flex-sdk] [refs/heads/new_android_skins] - Added CheckBox skins and assets

Added CheckBox skins and assets


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

Branch: refs/heads/new_android_skins
Commit: d1fa5de19271166b0b5f5a66b080b0fc4471ed46
Parents: a4290b8
Author: Om <bi...@gmail.com>
Authored: Sat Mar 22 22:52:20 2014 -0700
Committer: Om <bi...@gmail.com>
Committed: Sat Mar 22 22:52:20 2014 -0700

----------------------------------------------------------------------
 .../src/spark/skins/android4/CheckBoxSkin.as    | 267 +++++++++++++++++++
 .../android4/TransparentActionButtonSkin.as     | 108 ++++++++
 .../android4/TransparentNavigationButtonSkin.as | 109 ++++++++
 .../skins/android4/assets/CheckBox_down.fxg     |  45 +---
 .../android4/assets/CheckBox_downSymbol.fxg     |  29 --
 .../assets/CheckBox_downSymbolSelected.fxg      |  30 +--
 .../android4/assets/CheckBox_downUnselected.fxg |  15 ++
 .../spark/skins/android4/assets/CheckBox_up.fxg |  49 ++--
 .../skins/android4/assets/CheckBox_upSymbol.fxg |  33 ---
 .../assets/CheckBox_upSymbolSelected.fxg        |  33 +--
 .../supportClasses/ActionBarButtonSkinBase.as   |   2 +-
 11 files changed, 541 insertions(+), 179 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
new file mode 100644
index 0000000..416d85f
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/CheckBoxSkin.as
@@ -0,0 +1,267 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.android4
+{
+import flash.display.DisplayObject;
+
+import mx.core.DPIClassification;
+
+import spark.skins.android4.assets.CheckBox_up;
+import spark.skins.mobile.supportClasses.SelectableButtonSkinBase;
+import spark.skins.mobile120.assets.CheckBox_down;
+import spark.skins.mobile120.assets.CheckBox_downSymbol;
+import spark.skins.mobile120.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile120.assets.CheckBox_up;
+import spark.skins.mobile120.assets.CheckBox_upSymbol;
+import spark.skins.mobile120.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile160.assets.CheckBox_down;
+import spark.skins.mobile160.assets.CheckBox_downSymbol;
+import spark.skins.mobile160.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile160.assets.CheckBox_up;
+import spark.skins.mobile160.assets.CheckBox_upSymbol;
+import spark.skins.mobile160.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile240.assets.CheckBox_down;
+import spark.skins.mobile240.assets.CheckBox_downSymbol;
+import spark.skins.mobile240.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile240.assets.CheckBox_up;
+import spark.skins.mobile240.assets.CheckBox_upSymbol;
+import spark.skins.mobile240.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile320.assets.CheckBox_down;
+import spark.skins.mobile320.assets.CheckBox_downSymbol;
+import spark.skins.mobile320.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile320.assets.CheckBox_up;
+import spark.skins.mobile320.assets.CheckBox_upSymbol;
+import spark.skins.mobile320.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile480.assets.CheckBox_down;
+import spark.skins.mobile480.assets.CheckBox_downSymbol;
+import spark.skins.mobile480.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile480.assets.CheckBox_up;
+import spark.skins.mobile480.assets.CheckBox_upSymbol;
+import spark.skins.mobile480.assets.CheckBox_upSymbolSelected;
+import spark.skins.mobile640.assets.CheckBox_down;
+import spark.skins.mobile640.assets.CheckBox_downSymbol;
+import spark.skins.mobile640.assets.CheckBox_downSymbolSelected;
+import spark.skins.mobile640.assets.CheckBox_up;
+import spark.skins.mobile640.assets.CheckBox_upSymbol;
+import spark.skins.mobile640.assets.CheckBox_upSymbolSelected;
+
+/**
+ *  ActionScript-based skin for CheckBox components in mobile applications. 
+ * 
+ *  @see spark.components.CheckBox
+ * 
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 2.5 
+ *  @productversion Flex 4.5
+ */
+public class CheckBoxSkin extends SelectableButtonSkinBase
+{
+    //--------------------------------------------------------------------------
+    //
+    //  Class constants
+    //
+    //--------------------------------------------------------------------------
+    
+    private static const exclusions:Array = ["labelDisplay", "labelDisplayShadow"];
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    
+    /**
+     *  Constructor.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function CheckBoxSkin()
+    {
+        super();
+        
+        layoutPaddingLeft = 0;
+        layoutPaddingRight = 0;
+        layoutPaddingTop = 0;
+        layoutPaddingBottom = 0;
+        
+        switch (applicationDPI)
+        {
+			case DPIClassification.DPI_640:
+			{
+				upIconClass = spark.skins.mobile640.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.mobile640.assets.CheckBox_up;
+				downIconClass = spark.skins.mobile640.assets.CheckBox_down;
+				downSelectedIconClass = spark.skins.mobile640.assets.CheckBox_down;
+				upSymbolIconClass = spark.skins.mobile640.assets.CheckBox_upSymbol;
+				upSymbolIconSelectedClass = spark.skins.mobile640.assets.CheckBox_upSymbolSelected;
+				downSymbolIconClass = spark.skins.mobile640.assets.CheckBox_downSymbol;
+				downSymbolIconSelectedClass = spark.skins.mobile640.assets.CheckBox_downSymbolSelected;
+				
+				layoutGap = 40;
+				minWidth = 128;
+				minHeight = 128;
+				layoutBorderSize = 6;
+				
+				break;
+			}
+			case DPIClassification.DPI_480:
+			{
+				// Note provisional may need changes
+				upIconClass = spark.skins.mobile480.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.mobile480.assets.CheckBox_up;
+				downIconClass = spark.skins.mobile480.assets.CheckBox_down;
+				downSelectedIconClass = spark.skins.mobile480.assets.CheckBox_down;
+				upSymbolIconClass = spark.skins.mobile480.assets.CheckBox_upSymbol;
+				upSymbolIconSelectedClass = spark.skins.mobile480.assets.CheckBox_upSymbolSelected;
+				downSymbolIconClass = spark.skins.mobile480.assets.CheckBox_downSymbol;
+				downSymbolIconSelectedClass = spark.skins.mobile480.assets.CheckBox_downSymbolSelected;
+				
+				layoutGap = 30;
+				minWidth = 96;
+				minHeight = 96;
+				layoutBorderSize = 4;
+				
+				break;
+			}
+            case DPIClassification.DPI_320:
+            {
+                upIconClass = spark.skins.mobile320.assets.CheckBox_up;
+                upSelectedIconClass = spark.skins.mobile320.assets.CheckBox_up;
+                downIconClass = spark.skins.mobile320.assets.CheckBox_down;
+                downSelectedIconClass = spark.skins.mobile320.assets.CheckBox_down;
+                upSymbolIconClass = spark.skins.mobile320.assets.CheckBox_upSymbol;
+                upSymbolIconSelectedClass = spark.skins.mobile320.assets.CheckBox_upSymbolSelected;
+                downSymbolIconClass = spark.skins.mobile320.assets.CheckBox_downSymbol;
+                downSymbolIconSelectedClass = spark.skins.mobile320.assets.CheckBox_downSymbolSelected;
+                 
+                layoutGap = 20;
+                minWidth = 64;
+                minHeight = 64;
+                layoutBorderSize = 3;
+                
+                break;
+            }
+            case DPIClassification.DPI_240:
+            {
+
+				upIconClass = spark.skins.android4.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.android4.assets.CheckBox_up;
+				downIconClass = spark.skins.android4.assets.CheckBox_downUnselected;
+				downSelectedIconClass = spark.skins.android4.assets.CheckBox_down;
+				upSymbolIconClass = null;
+				upSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_upSymbolSelected;
+				downSymbolIconSelectedClass = spark.skins.android4.assets.CheckBox_downSymbolSelected;
+				downSymbolIconClass = spark.skins.android4.assets.CheckBox_downUnselected;
+				
+                layoutGap = 15;
+                minWidth = 48;
+                minHeight = 48;
+                layoutBorderSize = 2;
+                
+                break;
+            }
+			case DPIClassification.DPI_120:
+			{
+				upIconClass = spark.skins.mobile120.assets.CheckBox_up;
+				upSelectedIconClass = spark.skins.mobile120.assets.CheckBox_up;
+				downIconClass = spark.skins.mobile120.assets.CheckBox_down;
+				downSelectedIconClass = spark.skins.mobile120.assets.CheckBox_down;
+				upSymbolIconClass = spark.skins.mobile120.assets.CheckBox_upSymbol;
+				upSymbolIconSelectedClass = spark.skins.mobile120.assets.CheckBox_upSymbolSelected;
+				downSymbolIconClass = spark.skins.mobile120.assets.CheckBox_downSymbol;
+				downSymbolIconSelectedClass = spark.skins.mobile120.assets.CheckBox_downSymbolSelected;
+				
+				layoutGap = 8;
+				minWidth = 24;
+				minHeight = 24;
+				layoutBorderSize = 1;
+				
+				break;
+			}
+            default:
+            {
+                // default DPI_160
+                upIconClass = spark.skins.mobile160.assets.CheckBox_up;
+                upSelectedIconClass = spark.skins.mobile160.assets.CheckBox_up;
+                downIconClass = spark.skins.mobile160.assets.CheckBox_down;
+                downSelectedIconClass = spark.skins.mobile160.assets.CheckBox_down;
+                upSymbolIconClass = spark.skins.mobile160.assets.CheckBox_upSymbol;
+                upSymbolIconSelectedClass = spark.skins.mobile160.assets.CheckBox_upSymbolSelected;
+                downSymbolIconClass = spark.skins.mobile160.assets.CheckBox_downSymbol;
+                downSymbolIconSelectedClass = spark.skins.mobile160.assets.CheckBox_downSymbolSelected;
+                
+                layoutGap = 10;
+                minWidth = 32;
+                minHeight = 32;
+                layoutBorderSize = 2;
+                
+                break;
+            }
+        }
+    }
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden methods
+    //
+    //--------------------------------------------------------------------------
+    
+    /**
+     *  @private
+     *  CheckBox <code>chromeColor</code> is drawn to match the FXG rectangle
+     *  shape and position.
+     */
+    override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        // super draws a transparent hit zone
+        super.drawBackground(unscaledWidth, unscaledHeight);
+
+        // get the size and position of iconDisplay
+        var currentIcon:DisplayObject = getIconDisplay();
+        var widthAdjustment:Number = layoutBorderSize * 2;
+        
+        graphics.beginFill(getStyle("chromeColor"));
+        graphics.drawRoundRect(currentIcon.x + layoutBorderSize,
+            currentIcon.y + layoutBorderSize,
+            currentIcon.width - widthAdjustment,
+            currentIcon.height - widthAdjustment, layoutBorderSize, layoutBorderSize);
+        graphics.endFill();
+    }
+    
+    /**
+     *  List of IDs of items that should be excluded when rendering the focus ring.
+     *  Only items of type DisplayObject or GraphicElement should be excluded. Items
+     *  of other types are ignored.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    override protected function get focusSkinExclusions():Array 
+    {
+        return exclusions;
+    }
+}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as
new file mode 100644
index 0000000..dadab3c
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentActionButtonSkin.as
@@ -0,0 +1,108 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.android4
+{
+import flash.display.DisplayObject;
+import flash.display.Graphics;
+
+import mx.core.DPIClassification;
+import mx.core.mx_internal;
+
+import spark.skins.mobile.assets.TransparentActionButton_down;
+import spark.skins.mobile.assets.TransparentActionButton_up;
+import spark.skins.mobile.supportClasses.ActionBarButtonSkinBase;
+import spark.skins.mobile.supportClasses.MobileSkin;
+import spark.skins.mobile320.assets.TransparentActionButton_down;
+import spark.skins.mobile320.assets.TransparentActionButton_up;
+import spark.skins.mobile480.assets.TransparentActionButton_down;
+import spark.skins.mobile480.assets.TransparentActionButton_up;
+import spark.skins.mobile640.assets.TransparentActionButton_down;
+import spark.skins.mobile640.assets.TransparentActionButton_up;
+
+use namespace mx_internal;
+
+/**
+ *  The default skin class for buttons in the action area of the Spark ActionBar component 
+ *  in mobile applications.  
+ *  
+ *  @langversion 3.0
+ *  @playerversion AIR 2.5
+ *  @productversion Flex 4.5
+ */
+public class TransparentActionButtonSkin extends ActionBarButtonSkinBase
+{
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  Constructor.
+     *  
+     *  @langversion 3.0
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function TransparentActionButtonSkin()
+    {
+        super();
+        
+        switch (applicationDPI)
+        {
+			case DPIClassification.DPI_640:
+			{
+				upBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_down;
+				
+				break;
+			}
+			case DPIClassification.DPI_480:
+			{
+				upBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_down;
+				
+				break;
+			}
+            case DPIClassification.DPI_320:
+            {
+                upBorderSkin = spark.skins.mobile320.assets.TransparentActionButton_up;
+                downBorderSkin = spark.skins.mobile320.assets.TransparentActionButton_down;
+                
+                break;
+            }
+            default:
+            {
+                upBorderSkin = spark.skins.mobile.assets.TransparentActionButton_up;
+                downBorderSkin = spark.skins.mobile.assets.TransparentActionButton_down;
+                
+                break;
+            }
+        }
+    }
+    
+    override mx_internal function layoutBorder(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        // don't call super, don't layout twice
+        // leading vertical separator is outside the left bounds of the button
+        setElementSize(border, unscaledWidth + layoutBorderSize, unscaledHeight);
+        setElementPosition(border, -layoutBorderSize, 0);
+    }
+}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as
new file mode 100644
index 0000000..a19a21c
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/TransparentNavigationButtonSkin.as
@@ -0,0 +1,109 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.mobile
+{
+import flash.display.DisplayObject;
+import flash.display.Graphics;
+
+import mx.core.DPIClassification;
+import mx.core.mx_internal;
+
+import spark.skins.mobile.assets.TransparentNavigationButton_down;
+import spark.skins.mobile.assets.TransparentNavigationButton_up;
+import spark.skins.mobile.supportClasses.ActionBarButtonSkinBase;
+import spark.skins.mobile.supportClasses.MobileSkin;
+import spark.skins.mobile320.assets.TransparentNavigationButton_down;
+import spark.skins.mobile320.assets.TransparentNavigationButton_up;
+import spark.skins.mobile480.assets.TransparentNavigationButton_down;
+import spark.skins.mobile480.assets.TransparentNavigationButton_up;
+import spark.skins.mobile640.assets.TransparentNavigationButton_down;
+import spark.skins.mobile640.assets.TransparentNavigationButton_up;
+
+use namespace mx_internal;
+
+/**
+ *  The default skin class for buttons in the navigation area of the Spark ActionBar component 
+ *  in mobile applications.  
+ * 
+ *  @langversion 3.0
+ *  @playerversion AIR 2.5 
+ *  @productversion Flex 4.5
+ */
+public class TransparentNavigationButtonSkin extends ActionBarButtonSkinBase
+{   
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  Constructor.
+     * 
+     *  @langversion 3.0
+     *  @playerversion AIR 2.5 
+     *  @productversion Flex 4.5
+     * 
+     */
+    public function TransparentNavigationButtonSkin()
+    {
+        super();
+        
+        switch (applicationDPI)
+        {
+			case DPIClassification.DPI_640:
+			{
+				upBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile640.assets.TransparentActionButton_down;
+				
+				break;
+			}
+			case DPIClassification.DPI_480:
+			{
+				upBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_up;
+				downBorderSkin = spark.skins.mobile480.assets.TransparentActionButton_down;
+				
+				break;
+			}
+            case DPIClassification.DPI_320:
+            {
+                upBorderSkin = spark.skins.mobile320.assets.TransparentNavigationButton_up;
+                downBorderSkin = spark.skins.mobile320.assets.TransparentNavigationButton_down;
+                
+                break;
+            }
+            default:
+            {
+                upBorderSkin = spark.skins.mobile.assets.TransparentNavigationButton_up;
+                downBorderSkin = spark.skins.mobile.assets.TransparentNavigationButton_down;
+                
+                break;
+            }
+        }
+    }
+    
+    override mx_internal function layoutBorder(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        // trailing vertical separator is outside the right bounds of the button
+        setElementSize(border, unscaledWidth + layoutBorderSize, unscaledHeight);
+        setElementPosition(border, 0, 0);
+    }
+}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
index e8a55a1..3c49ba1 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_down.fxg
@@ -1,40 +1,15 @@
-<?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 aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group aaa:symType="1">
-    <Path alpha="0.6" winding="nonZero" aaa:seqID="2112" data="M29 32 3 32C1.34277 32 0 30.6563 0 29L0 3C0 1.34277 1.34277 0 3 0L29 0C30.6563 0 32 1.34277 32 3L32 29C32 30.6563 30.6563 32 29 32Z">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
+    <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
       <fill>
-        <RadialGradient x="16" y="16" scaleX="32" scaleY="32">
-          <GradientEntry ratio="0" color="#33B5E5"/>
-          <GradientEntry ratio="1" color="#0099CC"/>
-        </RadialGradient>
+        <SolidColor color="#DEDEDD"/>
       </fill>
     </Path>
-    <Group x="8" y="8" alpha="0.8" aaa:seqID="2113" flm:isolated="false" flm:knockout="false">
-      <Path winding="nonZero" aaa:seqID="2114" data="M16 0 16 16 0 16 0 0 16 0M15 1 1 1 1 15 15 15 15 1 15 1Z">
-        <fill>
-          <SolidColor color="#333333"/>
-        </fill>
-      </Path>
-    </Group>
-    <Path visible="false" winding="nonZero" aaa:seqID="2115" data="M0 0 32 0 32 32 0 32 0 0Z"/>
+    <Path x="8" y="8" winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16ZM1 15 15 15 15 1 1 1 1 15Z">
+      <fill>
+        <SolidColor color="#676767"/>
+      </fill>
+    </Path>
+    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg
deleted file mode 100644
index 3882781..0000000
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbol.fxg
+++ /dev/null
@@ -1,29 +0,0 @@
-<Graphic aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-<!--
-
-  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.
-
--->
-
-  <Group scaleGridLeft="3.89307" scaleGridRight="11.6792" scaleGridTop="10.0715" scaleGridBottom="3.35718" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2130" data="M13.3174 0 5.24805 9.19531 1.97949 6.32617 0 8.58203 5.52441 13.4287 15.5723 1.97754 13.3174 0Z">
-      <fill>
-        <SolidColor color="#3D3D3D"/>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2131" data="M0 0 16 0 16 13 0 13 0 0Z"/>
-  </Group>
-</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
index 03fdd86..da3e719 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downSymbolSelected.fxg
@@ -1,30 +1,10 @@
-<?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 aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="3.89307" scaleGridRight="11.6792" scaleGridTop="10.0715" scaleGridBottom="3.35718" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2130" data="M13.3174 0 5.24805 9.19531 1.97949 6.32617 0 8.58203 5.52441 13.4287 15.5723 1.97754 13.3174 0Z">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="4.09595" scaleGridRight="12.2878" scaleGridTop="9.99243" scaleGridBottom="3.33081">
+    <Path winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
       <fill>
-        <SolidColor color="#3D3D3D"/>
+        <SolidColor color="#676767"/>
       </fill>
     </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2131" data="M0 0 16 0 16 13 0 13 0 0Z"/>
+    <Path visible="false" winding="nonZero" data="M0 0 17 0 17 13 0 13 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
new file mode 100644
index 0000000..127a4b3
--- /dev/null
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_downUnselected.fxg
@@ -0,0 +1,15 @@
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="8" scaleGridRight="24" scaleGridTop="24" scaleGridBottom="8">
+    <Path winding="nonZero" data="M32 31.001C32 31.5527 31.5527 32 31.001 32L0.999023 32C0.447266 32 0 31.5527 0 31.001L0 0.999023C0 0.447266 0.447266 0 0.999023 0L31.001 0C31.5527 0 32 0.447266 32 0.999023L32 31.001Z">
+      <fill>
+        <SolidColor color="#DEDEDD"/>
+      </fill>
+    </Path>
+    <Path x="8" y="8" winding="nonZero" data="M15 7 15 15 1 15 1 1 14 1 14 0 0 0 0 16 16 16 16 7 15 7Z">
+      <fill>
+        <SolidColor color="#676767"/>
+      </fill>
+    </Path>
+    <Path visible="false" winding="nonZero" data="M0 0 32 0 32 32 0 32 0 0Z"/>
+  </Group>
+</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
index 52d7b1d..03843e7 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_up.fxg
@@ -1,30 +1,23 @@
-<?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 aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="4" scaleGridRight="12" scaleGridTop="11.999" scaleGridBottom="4" aaa:symType="1">
-    <Path alpha="0.8" winding="nonZero" aaa:seqID="2099" data="M16 0 16 16 0 16 0 0 16 0M15 1 1 1 1 15 15 15 15 1 15 1Z">
-      <fill>
-        <SolidColor color="#333333"/>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2100" data="M0 0 16 0 16 16 0 16 0 0Z"/>
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group>
+    <Group alpha="0.5">
+      <Group>
+        <mask>
+          <Group>
+            <Path winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16Z">
+              <fill>
+                <SolidColor color="#FFFFFF"/>
+              </fill>
+            </Path>
+          </Group>
+        </mask>
+        <Path winding="nonZero" data="M16 16 0 16 0 0 16 0 16 16ZM1 15 15 15 15 1 1 1 1 15Z">
+          <fill>
+            <SolidColor color="#676767"/>
+          </fill>
+        </Path>
+      </Group>
+    </Group>
+    <Path visible="false" winding="nonZero" data="M0 0 16 0 16 16 0 16 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg
deleted file mode 100644
index b6c84fe..0000000
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbol.fxg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?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 aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="3.89258" scaleGridRight="11.6787" scaleGridTop="10.0713" scaleGridBottom="3.35742" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2120" data="M13.3164 0 5.24805 9.19531 1.97852 6.32617 0 8.58203 5.52441 13.4287 15.5713 1.97754 13.3164 0Z">
-      <fill>
-        <LinearGradient x="10.6846" y="8.17871" scaleX="6.83528" rotation="224.999">
-          <GradientEntry ratio="0" color="#0099CC"/>
-          <GradientEntry ratio="1" color="#33B5E5"/>
-        </LinearGradient>
-      </fill>
-    </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2121" data="M0 0 16 0 16 13 0 13 0 0Z"/>
-  </Group>
-</Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
index 0f613f0..8c8efd7 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
+++ b/frameworks/projects/mobiletheme/src/spark/skins/android4/assets/CheckBox_upSymbolSelected.fxg
@@ -1,33 +1,10 @@
-<?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 aaa:symType="1" version="2.0" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008" xmlns:aaa="http://ns.adobe.com/ai/2009">
-  <Group scaleGridLeft="3.89307" scaleGridRight="11.6792" scaleGridTop="10.0713" scaleGridBottom="3.35742" aaa:symType="1">
-    <Path winding="nonZero" aaa:seqID="2136" data="M13.3174 0 5.24805 9.19531 1.97852 6.32617 0 8.58203 5.52441 13.4287 15.5723 1.97754 13.3174 0Z">
+<Graphic version="2.0" xmlns="http://ns.adobe.com/fxg/2008">
+  <Group scaleGridLeft="4.0957" scaleGridRight="12.2881" scaleGridTop="9.99219" scaleGridBottom="3.33105">
+    <Path winding="nonZero" data="M14.165 0 16.3838 2.21924 5.24023 13.3232 0 8.52441 2.18164 6.11719 5.37305 9.06348 14.165 0Z">
       <fill>
-        <LinearGradient x="10.6846" y="8.17871" scaleX="6.83528" rotation="224.999">
-          <GradientEntry ratio="0" color="#0099CC"/>
-          <GradientEntry ratio="1" color="#33B5E5"/>
-        </LinearGradient>
+        <SolidColor color="#33B5E5"/>
       </fill>
     </Path>
-    <Path visible="false" winding="nonZero" aaa:seqID="2137" data="M0 0 16 0 16 13 0 13 0 0Z"/>
+    <Path visible="false" winding="nonZero" data="M0 0 17 0 17 13 0 13 0 0Z"/>
   </Group>
 </Graphic>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/d1fa5de1/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as b/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
index e9dfc51..fef56ae 100644
--- a/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
+++ b/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
@@ -84,7 +84,7 @@ public class ActionBarButtonSkinBase extends ButtonSkin
 				layoutPaddingBottom = 20;
 				layoutPaddingLeft = 40;
 				layoutPaddingRight = 40;
-				measuredDefaultWidth = 2012;
+				measuredDefaultWidth = 212;
 				measuredDefaultHeight = 172;
 				break;
 			}