Transferred from the Adobe Open Source Subversion Repository

Revision: 19230
Author:   clucier@adobe.com
Date:     2010-12-09T19:21:38.155713Z

Log Message:
-----------
Proper URL handling for BitmapImage..we now support unicode characters.

QE notes: None
Doc notes: None
Bugs: SDK-28725
Reviewer: Ryan
Tests run: Checkin, Cyclone (some tests had to be excluded).
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/BitmapImage.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/utils/LoaderUtil.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1258912 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/controls/SWFLoader.as
+++ frameworks/projects/framework/src/mx/controls/SWFLoader.as
@@ -1860,11 +1860,11 @@
                 else if (systemManager)
                     rootURL = LoaderUtil.normalizeURL(DisplayObject(systemManager).loaderInfo);

-                url = OSToPlayerURI(url, isLocal(rootURL ? rootURL : url));
+                url = LoaderUtil.OSToPlayerURI(url, LoaderUtil.isLocal(rootURL ? rootURL : url));
                 if (rootURL)
                     url = LoaderUtil.createAbsoluteURL(rootURL, url);
             } else {
-                url = OSToPlayerURI(url, isLocal(url));
+                url = LoaderUtil.OSToPlayerURI(url, LoaderUtil.isLocal(url));
             }

             requestedURL = new URLRequest(url);
@@ -1940,100 +1940,7 @@

         invalidateDisplayList();
     }
-
-    /**
-     * @private
-     * Test whether a url is on the local filesystem. We can only
-     * really tell this with URLs that begin with "file:" or a
-     * Windows-style drive notation such as "C:". This fails some
-     * cases like the "/" notation on Mac/Unix.
-     *
-     * @param url
-     * the url to check against
-     *
-     * @return
-     * true if url is local, false if not or unable to determine
-     **/
-    private function isLocal(url:String):Boolean
-    {
-        return (url.indexOf("file:") == 0 || url.indexOf(":") == 1);
-    }
-
-    /**
-     * @private
-     * Currently (FP 10.x) the ActiveX player (Explorer on Windows) does not
-     * handle encoded URIs containing UTF-8 on the local filesystem, but
-     * it does handle those same URIs unencoded. The plug-in requires
-     * encoded URIs.
-     *
-     * @param url
-     * url to properly encode, may be fully or partially encoded with encodeURI
-     *
-     * @param local
-     * true indicates the url is on the local filesystem
-     *
-     * @return
-     * encoded url that may be loaded with a URLRequest
-     **/
-    private function OSToPlayerURI(url:String, local:Boolean):String
-    {
-
-        // First strip off the search string and any url fragments so
-        // they will not be decoded/encoded.
-        // Next decode the url.
-        // Before returning the decoded or encoded string add the search
-        // string and url fragment back.
-        var searchStringIndex:int;
-        var fragmentUrlIndex:int;
-        var decoded:String = url;
-
-        if ((searchStringIndex = decoded.indexOf("?")) != -1 )
-        {
-            decoded = decoded.substring(0, searchStringIndex);
-        }
-
-        if ((fragmentUrlIndex = decoded.indexOf("#")) != -1 )
-            decoded = decoded.substring(0, fragmentUrlIndex);
-
-        try
-        {
-            // decode the url
-            decoded = decodeURI(decoded);
-        }
-        catch (e:Error)
-        {
-            // malformed url, but some are legal on the file system
-        }
-
-        // create the string to hold the the search string url fragments.
-        var extraString:String = null;
-        if (searchStringIndex != -1 || fragmentUrlIndex != -1)
-        {
-            var index:int = searchStringIndex;
-
-            if (searchStringIndex == -1 ||
-                (fragmentUrlIndex != -1 && fragmentUrlIndex < searchStringIndex))
-            {
-                index = fragmentUrlIndex;
-            }
-
-            extraString = url.substr(index);
-        }
-
-        if (local && flash.system.Capabilities.playerType == "ActiveX")
-        {
-            if (extraString)
-                return decoded + extraString;
-            else
-                return decoded;
-        }
-
-        if (extraString)
-            return encodeURI(decoded) + extraString;
-        else
-            return encodeURI(decoded);
-    }
-
+
     /**
      *  @private
      *  Called when the content has successfully loaded.


Transferred from the Adobe Open Source Subversion Repository

Revision: 17430
Author:   cframpto@adobe.com
Date:     2010-08-20T19:06:10.446088Z

Log Message:
-----------
Setting RadioButtonGroup.selectedValue to null for both the spark and mx versions of this component incorrectly selected the first radio button.  The bug was written as a two-way binding bug that that was not the real issue.

QE notes:
Doc notes:
Bugs: SDK-18391
Reviewer: Kevin
Tests run: checkintests, cyclone
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RadioButtonGroup.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/RadioButtonGroup.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1268453 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/controls/RadioButtonGroup.as
+++ frameworks/projects/mx/src/mx/controls/RadioButtonGroup.as
@@ -348,6 +348,14 @@
     {
         _selectedValue = value;

+        // Clear the exisiting selecton if there is one.
+        if (value == null)
+        {
+            setSelection(null, false);
+            return;
+        }
+
+        // Find the radio button value specified.
         var n:int = numRadioButtons;
         for (var i:int = 0; i < n; i++)
         {
@@ -538,12 +546,15 @@
      */
     mx_internal function setSelection(value:RadioButton, fireChange:Boolean = true):void
     {
-        if (value == null && _selection != null)
-        {
-            _selection.selected = false;
-            _selection = null;
-            if (fireChange)
-                dispatchEvent(new Event(Event.CHANGE));
+        if (value == null)
+        {
+            if (selection != null)
+            {
+                _selection.selected = false;
+                _selection = null;
+                if (fireChange)
+                    dispatchEvent(new Event(Event.CHANGE));
+            }
         }
         else
         {


Transferred from the Adobe Open Source Subversion Repository

Revision: 3756
Author:   gruehle@adobe.com
Date:     2008-10-20T21:38:18.681299Z

Log Message:
-----------
Adding placeholder icons for the Gumbo components that appear in the FB components panel. Where possible, these are simply copies of the Halo icons. There were some that didn't have a direct Halo counterpart, so the closest match was chosen.

QE Notes: None
Doc Notes: None
Bugs: SDK-17668
Reviewer: -

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextInput.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/HGroup.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVScrollBar.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextBox.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxSpinner.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/VGroup.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/HGroup.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxCheckBox.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextBox.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHSlider.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButton.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxToggleButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxSpinner.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/VGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxCheckBox.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVSlider.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHScrollBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxToggleButton.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextArea.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVScrollBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHScrollBar.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.png</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1278440 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/CheckBox.as
+++ frameworks/projects/spark/src/spark/components/CheckBox.as
@@ -14,6 +14,8 @@

 import flash.events.Event;
 import flash.events.MouseEvent;
+
+[IconFile("FxCheckBox.png")]

 /**
  *  The FxCheckBox component consists of an optional label and a small box


Transferred from the Adobe Open Source Subversion Repository

Revision: 19487
Author:   hmuller@adobe.com
Date:     2010-12-20T21:28:58.850707Z

Log Message:
-----------
Fix for SDK-28616/A, DataGrid now uses the Spark versions of Sort and SortField.  The fix took more time than expected because s:SortFields must be wired into the style hierarchy so that they inherit the "locale" style.

QE notes: Jody has excluded two failing tests
Doc notes:
Bugs:
Reviewer: Kevin
Tests run: checkin, mustella
Is noteworthy for integration: yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridSortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1278601 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/DataGrid.as
+++ frameworks/projects/spark/src/spark/components/DataGrid.as
@@ -23,7 +23,6 @@
 import mx.collections.IList;
 import mx.collections.ISort;
 import mx.collections.ISortField;
-import mx.collections.Sort;
 import mx.core.EventPriority;
 import mx.core.IFactory;
 import mx.core.IIMESupport;
@@ -34,7 +33,9 @@
 import mx.managers.CursorManager;
 import mx.managers.CursorManagerPriority;
 import mx.managers.IFocusManagerComponent;
-
+import mx.styles.AdvancedStyleClient;
+
+import spark.collections.Sort;
 import spark.components.gridClasses.CellPosition;
 import spark.components.gridClasses.CellRegion;
 import spark.components.gridClasses.DataGridEditor;
@@ -3489,6 +3490,32 @@
         var sortFields:Array = createSortFields(columnIndices, sort.fields);
         if (!sortFields)
             return false;
+
+        // Remove each old SortField that's not a member of the new sortFields Array
+        // as a "styleClient" of this DataGrid.
+
+        const oldSortFields:Array = (dataProvider.sort) ? dataProvider.sort.fields : null;
+        if (oldSortFields)
+        {
+            for each (var oldSortField:ISortField in oldSortFields)
+            {
+                var oldASC:AdvancedStyleClient = oldSortField as AdvancedStyleClient;
+                if (!oldASC || (oldASC.styleParent != this) || (sortFields.indexOf(oldASC) != -1))
+                    continue;
+                removeStyleClient(oldASC);
+            }
+        }
+
+        // Add new SortFields as "styleClients" of this DataGrid so that they
+        // inherit this DataGrid's locale style.
+
+        for each (var newSortField:ISortField in sortFields)
+        {
+            var newASC:AdvancedStyleClient = newSortField as AdvancedStyleClient;
+            if (!newASC || (newASC.styleParent == this))
+                continue;
+            addStyleClient(newASC);
+        }

         sort.fields = sortFields;


Transferred from the Adobe Open Source Subversion Repository

Revision: 19173
Author:   cframpto@adobe.com
Date:     2010-12-08T22:03:53.915718Z

Log Message:
-----------
In RichText, when extracting the text from the textFlow, don't reconstruct the textFlow from the content if we already have a textFlow.

QE notes:
Doc notes:
Bugs: SDK-28718
Reviewer: Alex
Tests run: cyclone
Is noteworthy for integration:

Modified Paths:
--------------
/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichText.as

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1280396 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/RichText.as
+++ frameworks/projects/spark/src/spark/components/RichText.as
@@ -431,7 +431,7 @@
         {
             // If 'content' was last set,
             // we have to first turn that into a TextFlow.
-            if (_content != null)
+            if (contentChanged)
             {
                 _textFlow = createTextFlowFromContent(_content);
                 lastGeneration = _textFlow.generation;


added option to disable squares-for-missing-size

--- WeaveUISpark/src/weave/visualization/plotters/ScatterPlotPlotter.as
+++ WeaveUISpark/src/weave/visualization/plotters/ScatterPlotPlotter.as
@@ -71,7 +71,8 @@
 		public const sizeBy:DynamicColumn = newLinkableChild(this, DynamicColumn);
 		public const minScreenRadius:LinkableNumber = registerLinkableChild(this, new LinkableNumber(3, isFinite));
 		public const maxScreenRadius:LinkableNumber = registerLinkableChild(this, new LinkableNumber(25, isFinite));
-		public const defaultScreenRadius:LinkableNumber = registerLinkableChild(this, new LinkableNumber(5, isFinite));
+		public const defaultScreenRadius:LinkableNumber = registerLinkableChild(this, new LinkableNumber(5, isFinite));
+		public const showSquaresForMissingSize:LinkableBoolean = registerLinkableChild(this, new LinkableBoolean(true));

 		public const line:SolidLineStyle = newLinkableChild(this, SolidLineStyle);
 		public const fill:SolidFillStyle = newLinkableChild(this, SolidFillStyle);
@@ -185,20 +186,21 @@
 			if (!isFinite(radius))
 			{
 				// handle undefined radius
+				radius = defaultScreenRadius.value;
 				if (colorBySize.value)
 				{
 					// draw nothing
 				}
 				else if (sizeBy.internalObject)
 				{
-					// draw square
-					radius = defaultScreenRadius.value;
-					graphics.drawRect(tempPoint.x - radius, tempPoint.y - radius, radius * 2, radius * 2);
+					// draw square
+					if (showSquaresForMissingSize.value)
+						graphics.drawRect(tempPoint.x - radius, tempPoint.y - radius, radius * 2, radius * 2);
 				}
 				else
-				{
+				{
 					// draw default circle
-					graphics.drawCircle(tempPoint.x, tempPoint.y, defaultScreenRadius.value );
+					graphics.drawCircle(tempPoint.x, tempPoint.y, radius);
 				}
 			}
 			else


fix typo in abcdump's parsing of the interface list (r=me)

--- utils/abcdump.as
+++ utils/abcdump.as
@@ -777,7 +777,7 @@
                     t.protectedNs = namespaces[readU32()]
                 var interface_count = readU32()
                 for (var j:int=0; j < interface_count; j++)
-                    t.interfaces[i] = names[readU32()]
+                    t.interfaces[j] = names[readU32()]
                 var m = t.init = methods[readU32()]
                 m.name = t.name
                 m.kind = TRAIT_Method


Transferred from the Adobe Open Source Subversion Repository

Revision: 23246
Author:   cframpto@adobe.com
Date:     2011-12-20T17:40:08.069454Z

Log Message:
-----------
Rollback 23243.  If comment followed header it was stripped as well.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1248863 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/styles/metadata/FocusStyles.as
+++ frameworks/projects/advancedgrids/src/mx/styles/metadata/FocusStyles.as
@@ -1,4 +1,24 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////

+/**
+ *  Specifies the alpha transparency value of the focus skin.
+ *
+ *  @default 0.4
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
 [Style(name="focusAlpha", type="Number", inherit="no")]

 /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 23246
Author:   cframpto@adobe.com
Date:     2011-12-20T17:40:08.069454Z

Log Message:
-----------
Rollback 23243.  If comment followed header it was stripped as well.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1253354 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/charts/src/mx/charts/series/items/PlotSeriesItem.as
+++ frameworks/projects/charts/src/mx/charts/series/items/PlotSeriesItem.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////

 package mx.charts.series.items
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 13168
Author:   gosmith@adobe.com
Date:     2009-12-22T22:31:13.970084Z

Log Message:
-----------
Changed how accessibility works in the Spark Panel and TitleWindow.

Previously, we were attaching the PanelAccImpl or TitleWindowAccImpl to the titleDisplay, which complicated things. The first complication was that the titleDisplay is a skin part that might not be there when initializeAccessibility() is called. The second complication was in trying to get the MSAA Location to be the size of the Panel or TitleWindow, not the size of the titleDisplay; this wasn't working properly due to timing issues, since the titleDisplay redraws after the Panel/TitleWindow.

Now, we attach the acc impl to a special first child Sprite which stays behind all the content. The accessibility code in Panel and TitleWindow goes back to being completely standard; the creation and drawing of this Sprite (to get the MSAA Location correct) is handled in PanelAccImpl and inherited by TitleWindowAccImpl.

To prevent the title from being spoken twice, I null out the titleDisplay's own accessibilityImplementation at initialization or when the titelDisplay is added as a skin part. But I keep a reference to it in the component's acc impl so that I can restore it when the titleDisplay is removed as a skin part. For some reason, simply setting accessibilityEnabled to false didn't seem to work.

I also changed the logic in TitleWindowAccImpl for dispatching the MSAA events EVENT_OBJECT_LOCATIONCHANGE and EVENT_OBJECT_DESTROY. Previously, EVENT_OBJECT_LOCATIONCHANGE was being sent in response to a MOUSE_UP from the titleDisplay (after a drag); now it is sent in response to a WINDOW_MOVE_END from the TitleWindow (after a drag). And, previously, EVENT_OBJECT_DESTROY was sent in response to a MOUSE_UP from the closeButton (after a click); now it is sent in response to a CLOSE from the TitleWindow.

QE notes: None
Doc notes: None
Bugs: None
Reviewer: Evtim
Tests run: checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TitleWindow.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/accessibility/PanelAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/accessibility/TitleWindowAccImpl.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1278114 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/accessibility/TitleWindowAccImpl.as
+++ frameworks/projects/spark/src/spark/accessibility/TitleWindowAccImpl.as
@@ -13,18 +13,21 @@
 {

 import flash.accessibility.Accessibility;
+import flash.display.Sprite;
 import flash.events.Event;
 import flash.events.MouseEvent;

 import mx.accessibility.AccConst;
 import mx.core.UIComponent;
 import mx.core.mx_internal;
+import mx.events.CloseEvent;

 import spark.components.Button;
 import spark.components.Panel;
 import spark.components.supportClasses.TextBase;
 import spark.components.TitleWindow;
 import spark.events.SkinPartEvent;
+import spark.events.TitleWindowBoundsEvent;

 use namespace mx_internal;

@@ -34,7 +37,7 @@
  *
  *
When a Spark TitleWindow is created,
  *  the accessibilityImplementation property
- *  of its titleDisplay is set to an instance of this class.
+ *  of a special child Sprite is set to an instance of this class.
  *  The Flash Player then uses this class to allow MSAA clients
  *  such as screen readers to see this component.
  *  See the mx.accessibility.AccImpl and
@@ -126,220 +129,163 @@
 {
     include "../core/Version.as";

-    //--------------------------------------------------------------------------
-    //
-    //  Class methods
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  Enables accessibility in the TitleWindow class.
-     *
-     *
This method is called by application startup code
-     *  that is autogenerated by the MXML compiler.
-     *  Afterwards, when instances of TitleWindow are initialized,
-     *  their accessibilityImplementation property
-     *  will be set to an instance of this class.

-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
-     */
-    public static function enableAccessibility():void
-    {
-        TitleWindow.createAccessibilityImplementation =
-            createAccessibilityImplementation;
-    }
-
-    /**
-     *  @private
-     *  Creates a TitleWindow's AccessibilityImplementation object.
-     *  This method is called from TitleWindow's
-     *  partAdded() method, not its initializeAccessibility() method,
-     *  because the TitleWindowAccImpl needs to be attached
-     *  to the TitleWindow's titleBar.
-     *  The partRemoved() method removes the acc impl from the titleDisplay.
-     */
-    mx_internal static function createAccessibilityImplementation(
-                                component:UIComponent):void
-    {
-        // The AccessibilityImplementation is placed on the
-        // TitleWindow's titleBar, not on the TitleWindow itself.
-        // If it were placed on the TitleWindow itself,
-        // the AccessibilityImplementations of the TitleWindow's children
-        // would be ignored.
-        var titleDisplay:TextBase = TitleWindow(component).titleDisplay;
-        if (titleDisplay)
-        {
-            titleDisplay.accessibilityImplementation =
-                new TitleWindowAccImpl(component);
-
-            if (TitleWindow(component).tabIndex > 0 &&
-                titleDisplay.tabIndex == -1)
-            {
-                titleDisplay.tabIndex = TitleWindow(component).tabIndex;
-            }
-
-            Accessibility.sendEvent(titleDisplay, 0,
-                                    AccConst.EVENT_OBJECT_CREATE);
-            Accessibility.updateProperties();
-        }
-    }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Constructor
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  Constructor.
-     *
-     *  @param master The UIComponent instance that this AccImpl instance
-     *  is making accessible.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
-     */
-    public function TitleWindowAccImpl(master:UIComponent)
-    {
-        super(master);
-
+	//--------------------------------------------------------------------------
+	//
+	//  Class methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Enables accessibility in the TitleWindow class.
+	 *
+	 *
This method is called by application startup code
+	 *  that is autogenerated by the MXML compiler.
+	 *  Afterwards, when instances of TitleWindow are initialized,
+	 *  the accessibilityImplementation property
+	 *  of a special first child Sprite will be set to an instance
+	 *  of this class.
+	 *  If the TitleWindowAccImpl were attached to the TitleWindow itself
+	 *  the accessibility implementations of the TitleWindow's children
+	 *  would be ignored.

+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public static function enableAccessibility():void
+	{
+		TitleWindow.createAccessibilityImplementation =
+			createAccessibilityImplementation;
+	}
+
+	/**
+	 *  @private
+	 *  Creates a TitleWindow's AccessibilityImplementation object.
+	 *  This method is called from TitleWindow's
+	 *  initializeAccessibility() method.
+	 */
+	mx_internal static function createAccessibilityImplementation(
+								component:UIComponent):void
+	{
+		// The TitleWindowAccImpl is attached
+		// not to the TitleWindow but to a special child Sprite.
+		// If it were attached to the TitleWindow itself,
+		// the AccessibilityImplementations of the TitleWindow's
+		// children would be ignored.
+		var accImpl:TitleWindowAccImpl = new TitleWindowAccImpl(component);
+		var accImplSprite:Sprite = accImpl.attach();
+
+		Accessibility.sendEvent(accImplSprite, 0, AccConst.EVENT_OBJECT_CREATE);
+		Accessibility.updateProperties();
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *
+	 *  @param master The UIComponent instance that this AccImpl instance
+	 *  is making accessible.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public function TitleWindowAccImpl(master:UIComponent)
+	{
+		super(master);
+
         role = AccConst.ROLE_SYSTEM_PANE;
-
-        // TitleWindow has a titleDisplay and a closeButton as skin parts,
-        // and we need to listen to some of their events.
-        // They may or may not be present when this constructor is called.
-        // If they come or go later, we are notified via
-        // "partAdded" and "partRemoved" events.
-
-        var titleDisplay:TextBase = TitleWindow(master).titleDisplay;
-        if (titleDisplay)
-            titleDisplay.addEventListener(MouseEvent.MOUSE_UP, eventHandler);
-
-        var closeButton:Button = TitleWindow(master).closeButton;
-        if (closeButton)
-            closeButton.addEventListener(MouseEvent.MOUSE_UP, eventHandler);
-    }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Overridden properties: AccImpl
-    //
-    //--------------------------------------------------------------------------
-
-    //----------------------------------
-    //  eventsToHandle
-    //----------------------------------
-
-    /**
-     *  @private
-     *  Array of events that we should listen for from the master component.
-     */
-    override protected function get eventsToHandle():Array
-    {
-        return super.eventsToHandle.concat([ SkinPartEvent.PART_ADDED,
-                                             SkinPartEvent.PART_REMOVED ]);
-    }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Overridden methods: AccessibilityImplementation
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  IAccessible method for returning the state of the TitleWindow.
-     *  States are predefined for all the components in MSAA.
-     *  Values are assigned to each state.
-     *  Depending upon the TitleWindow being Focusable, Focused and Moveable,
-     *  a value is returned.
-     *
-     *  @param childID:uint
-     *
-     *  @return State:uint
-     */
-    override public function get_accState(childID:uint):uint
-    {
-        var accState:uint = getState(childID);
-
-        accState |= AccConst.STATE_SYSTEM_MOVEABLE;
-
-        return accState;
-    }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Overridden event handlers: AccImpl
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  Override the generic event handler.
-     *  All AccImpl must implement this
-     *  to listen for events from its master component.
-     */
-    override protected function eventHandler(event:Event):void
-    {
-        var titleDisplay:TextBase;
-        var closeButton:Button;
-
-        // Let AccImpl class handle the events
-        // that all accessible UIComponents understand.
-        $eventHandler(event);
-
-        switch (event.type)
-        {
-            case MouseEvent.MOUSE_UP:
-            {
-                if (event.target == TitleWindow(master).titleDisplay)
-                {
-                    Accessibility.sendEvent(TitleWindow(master).titleDisplay, 0,
-                                            AccConst.EVENT_OBJECT_LOCATIONCHANGE, true);
-                }
-
-                if (event.target == TitleWindow(master).closeButton)
-                {
-                    Accessibility.sendEvent(TitleWindow(master).titleDisplay, 0,
-                                            AccConst.EVENT_OBJECT_DESTROY, true);
-                }
-
-                Accessibility.updateProperties();
-                break;
-            }
-
-            case SkinPartEvent.PART_ADDED:
-            {
-                titleDisplay = TitleWindow(master).titleDisplay;
-                if (SkinPartEvent(event).instance == titleDisplay)
-                    titleDisplay.addEventListener(MouseEvent.MOUSE_UP, eventHandler);
-
-                closeButton = TitleWindow(master).closeButton;
-                if (SkinPartEvent(event).instance == closeButton)
-                    closeButton.addEventListener(MouseEvent.MOUSE_UP, eventHandler);
-
-                break;
-            }
-
-            case SkinPartEvent.PART_REMOVED:
-            {
-                titleDisplay = TitleWindow(master).titleDisplay;
-                if (SkinPartEvent(event).instance == titleDisplay)
-                    titleDisplay.removeEventListener(MouseEvent.MOUSE_UP, eventHandler);
-
-                closeButton = TitleWindow(master).closeButton;
-                if (SkinPartEvent(event).instance == closeButton)
-                    closeButton.removeEventListener(MouseEvent.MOUSE_UP, eventHandler);
-
-                break;
-            }
-        }
-    }
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden properties: AccImpl
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  eventsToHandle
+	//----------------------------------
+
+	/**
+	 *  @private
+	 *  Array of events that we should listen for from the master component.
+	 */
+	override protected function get eventsToHandle():Array
+	{
+		return super.eventsToHandle.concat(
+			[ TitleWindowBoundsEvent.WINDOW_MOVE_END, CloseEvent.CLOSE ]);
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods: AccessibilityImplementation
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the state of the TitleWindow.
+	 *  States are predefined for all the components in MSAA.
+	 *  Values are assigned to each state.
+	 *  Depending upon the TitleWindow being Focusable, Focused and Moveable,
+	 *  a value is returned.
+	 *
+	 *  @param childID:uint
+	 *
+	 *  @return State:uint
+	 */
+	override public function get_accState(childID:uint):uint
+	{
+		var accState:uint = getState(childID);
+
+		accState |= AccConst.STATE_SYSTEM_MOVEABLE;
+
+		return accState;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden event handlers: AccImpl
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Override the generic event handler.
+	 *  All AccImpl must implement this
+	 *  to listen for events from its master component.
+	 */
+	override protected function eventHandler(event:Event):void
+	{
+		super.eventHandler(event);
+
+		switch (event.type)
+		{
+			case TitleWindowBoundsEvent.WINDOW_MOVE_END:
+			{
+				Accessibility.sendEvent(accImplSprite, 0,
+					AccConst.EVENT_OBJECT_LOCATIONCHANGE, true);
+				Accessibility.updateProperties();
+				break;
+			}
+
+			case CloseEvent.CLOSE:
+			{
+				Accessibility.sendEvent(accImplSprite, 0,
+										AccConst.EVENT_OBJECT_DESTROY, true);
+				Accessibility.updateProperties();
+				break;
+			}
+		}
+	}
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1290593 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/olap/OLAPAxisPosition.as
+++ frameworks/projects/advancedgrids/src/mx/olap/OLAPAxisPosition.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2009 Adobe Systems Incorporated
-//  All Rights Reserved.
-//
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
-//
-////////////////////////////////////////////////////////////////////////////////

 package mx.olap
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 23247
Author:   cframpto@adobe.com
Date:     2011-12-20T19:21:13.134833Z

Log Message:
-----------
Remove ADOBE SYSTEMS license and replace with Apache license in headers - frameworks.  A 2nd pass will be needed to get the files not handled up by the scripts.

Modified Paths:
--------------
4959 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1260256 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/effects/IEffectTargetHost.as
+++ frameworks/projects/framework/src/mx/effects/IEffectTargetHost.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2007 Adobe Systems Incorporated
-//  All Rights Reserved.
+//  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
 //
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
+//      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.
 //
 ////////////////////////////////////////////////////////////////////////////////


Transferred from the Adobe Open Source Subversion Repository

Revision: 20384
Author:   chiedozi@adobe.com
Date:     2011-02-18T20:01:10.762180Z

Log Message:
-----------
Updated ViewNavigator focus management to use the FocusManager instead of directly manipulating Stage.focus

QE notes:
Doc notes:
Bugs:
Reviewer: Ryan
Tests run:
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/View.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ViewNavigatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1264187 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobilecomponents/src/spark/components/View.as
+++ frameworks/projects/mobilecomponents/src/spark/components/View.as
@@ -19,6 +19,7 @@
 import mx.core.mx_internal;
 import mx.events.FlexEvent;
 import mx.events.PropertyChangeEvent;
+import mx.managers.IFocusManagerComponent;
 import mx.managers.SystemManager;

 import spark.core.ContainerDestructionPolicy;
@@ -174,7 +175,7 @@
  *  @playerversion AIR 2.5
  *  @productversion Flex 4.5
  */
-public class View extends SkinnableContainer implements IDataRenderer
+public class View extends SkinnableContainer implements IDataRenderer, IFocusManagerComponent
 {
     //--------------------------------------------------------------------------
     //


Transferred from the Adobe Open Source Subversion Repository

Revision: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

Log Message:
-----------
Update action script files with asdoc version tags.

QE Notes: None.
Doc Notes: Please review and update as necessary.
tests: checkintests

Modified Paths:
--------------
663 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1269168 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/controls/videoClasses/VideoError.as
+++ frameworks/projects/mx/src/mx/controls/videoClasses/VideoError.as
@@ -24,6 +24,11 @@
  *  thrown by the VideoDisplay control.
  *
  *  @see mx.controls.VideoDisplay
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class VideoError extends Error
 {
@@ -43,41 +48,81 @@

     /**
      *  Unable to make connection to server or to find FLV on server.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const NO_CONNECTION:uint = 1000;

     /**
      *  No matching cue point found.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const NO_CUE_POINT_MATCH:uint = 1001;

     /**
      *  Illegal cue point.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const ILLEGAL_CUE_POINT:uint = 1002;

     /**
      *  Invalid seek.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const INVALID_SEEK:uint = 1003;

     /**
      *  Invalid content path.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const INVALID_CONTENT_PATH:uint = 1004;

     /**
      *  Invalid XML.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const INVALID_XML:uint = 1005;

     /**
      *  No bitrate match.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const NO_BITRATE_MATCH:uint = 1006;

     /**
      *  Cannot delete default VideoPlayer
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static const DELETE_DEFAULT_PLAYER:uint = 1007;

@@ -93,6 +138,11 @@
      *  @param The error code.
      *
      *  @param msg The error message.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function VideoError(errCode:uint, msg:String = null)
     {
@@ -141,6 +191,11 @@

     /**
      *  Contains the error code.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get code():uint
     {


FLEX-18746 Added the same test, but without using opening animation. (This way the bug cannot be reproduced, which is a good clue.)

--- frameworks/projects/mx/tests/mx/controls/Tree_FLEX_18746_Tests.as
+++ frameworks/projects/mx/tests/mx/controls/Tree_FLEX_18746_Tests.as
@@ -18,8 +18,8 @@

         private static var _sut:Tree;
         private static var child:Object = {label: "Item"};
-        private static var parent0:Object = {label: "Folder 0", children: new ArrayCollection()};
-        private static var parent1:Object = {label: "Folder 1", children: new ArrayCollection([child])};
+        private static var parent0:Object;
+        private static var parent1:Object;

         [Before]
@@ -28,6 +28,10 @@
             _sut = new Tree();
             _sut.width = 200;
             _sut.height = 200;
+
+            parent0 = {label: "Folder 0", children: new ArrayCollection()};
+            parent1 = {label: "Folder 1", children: new ArrayCollection([child])};
+
             UIImpersonator.addChild(_sut);
         }

@@ -46,7 +50,7 @@
         //--------------------------------------------------------------------------

         [Test(async, timeout=1000)]
-        public function test_closing_previously_opened_folder_with_0_children_does_not_throw_fatal():void
+        public function test_closing_previously_opened_folder_with_0_children_without_animation_does_not_throw_fatal():void
         {
             //given
             const dataProvider:ArrayCollection = new ArrayCollection();
@@ -59,19 +63,36 @@
             //then wait a few frames
             noEnterFramesToWait = 2;
             UIImpersonator.testDisplay.addEventListener(Event.ENTER_FRAME, onEnterFrame);
-            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_expand_second_folder, 300);
+            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_expand_second_folder, 300, {useAnimation:false});
+        }
+
+        [Test(async, timeout=1000)]
+        public function test_closing_previously_opened_folder_with_0_children_using_animation_does_not_throw_fatal():void
+        {
+            //given
+            const dataProvider:ArrayCollection = new ArrayCollection();
+            dataProvider.addItem(parent0);
+            dataProvider.addItem(parent1);
+
+            //when
+            _sut.dataProvider = dataProvider;
+
+            //then wait a few frames
+            noEnterFramesToWait = 2;
+            UIImpersonator.testDisplay.addEventListener(Event.ENTER_FRAME, onEnterFrame);
+            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_expand_second_folder, 300, {useAnimation:true});
         }

         private function then_expand_second_folder(event:Event, passThroughData:Object):void
         {
             //when
-            _sut.expandItem(parent1, true, true, true);
+            _sut.expandItem(parent1, true, passThroughData.useAnimation, true);

             //then wait a bit
             noEnterFramesToWait = 5;
             UIImpersonator.testDisplay.addEventListener(Event.ENTER_FRAME, onEnterFrame);
-            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_move_child_to_first_parent_and_expand_it, 500);
+            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_move_child_to_first_parent_and_expand_it, 500, passThroughData);
         }

         private function then_move_child_to_first_parent_and_expand_it(event:Event, passThroughData:Object):void
@@ -81,19 +102,19 @@

             //when
             ArrayCollection(parent1.children).removeItemAt(0);
-            _sut.expandItem(parent0, true, true, true);
+            _sut.expandItem(parent0, true, passThroughData.useAnimation, true);
             ArrayCollection(parent0.children).addItem(child);

             //then wait a bit
             noEnterFramesToWait = 1;
             UIImpersonator.testDisplay.addEventListener(Event.ENTER_FRAME, onEnterFrame);
-            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_contract_second_folder, 200);
+            Async.handleEvent(this, _finishNotifier, Event.COMPLETE, then_contract_second_folder, 200, passThroughData);
         }

         private static function then_contract_second_folder(event:Event, passThroughData:Object):void
         {
             //when
-            _sut.expandItem(parent1, false, true, true);
+            _sut.expandItem(parent1, false, passThroughData.useAnimation, true);

             //then no error was thrown
             assertThat(true);


Transferred from the Adobe Open Source Subversion Repository

Revision: 12291
Author:   smgilson@adobe.com
Date:     2009-11-30T20:05:25.519075Z

Log Message:
-----------
update old effects examples and add new ones. Add back the @includeExample tags to effects classes that had them removed for some reason.

QE notes: -
Doc notes: -
Bugs: -
Reviewer: -
Tests run: - checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing/examples</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing/examples/assets</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/MotionPath.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Power.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Sine.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/animation/examples</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/animation/examples/assets</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/Scale3DEffectExample.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/SimpleMotionPath.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing/examples/LinearEffectExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing/examples/SinePowerEffectExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/animation/examples/KeyFrameEffectExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing/examples/assets/logo.jpg</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Animate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/controls/treeClasses/MXTreeItemRenderer.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/AnimateFilterEffectExample.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/Rotate3DEffectExample.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Bounce.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Keyframe.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/easing/examples/BounceElasticEffectExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/ScaleEffectExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/SetActionEffectExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/animation/examples/assets/logo.jpg</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/animation</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/Move3DEffectExample.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Elastic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/effects/examples/RotateEffectExample.mxml</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1283943 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/effects/animation/Keyframe.as
+++ frameworks/projects/spark/src/spark/effects/animation/Keyframe.as
@@ -53,6 +53,8 @@
  *  </pre>
  *
  *  @see MotionPath
+ *
+ *  @includeExample examples/KeyFrameEffectExample.mxml
  *
  *  @langversion 3.0
  *  @playerversion Flash 10


Transferred from the Adobe Open Source Subversion Repository

Revision: 11171
Author:   egeorgie@adobe.com
Date:     2009-10-26T23:24:13.720443Z

Log Message:
-----------
Add overlay property to GroupBase. Note, names of class and APIs will change, since it's still in review.

QE notes: Ready testing, names will change after the APIs review.
Doc notes: None
Bugs: None
Reviewer: Deepa
Tests run: checkintests, mustella (all gumbo tests)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/DisplayPlane.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/OverlayDepth.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/ViewStack.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/events/DisplayPlaneObjectExistenceEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DataGroup.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1267532 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/containers/Accordion.as
+++ frameworks/projects/mx/src/mx/containers/Accordion.as
@@ -1430,7 +1430,7 @@
         if (!overlayChild)
             return;

-        overlayColor = color;
+        effectOverlayColor = color;
         overlayTargetArea = targetArea;

         if (selectedChild && selectedChild.deferredContentCreated == false) // No children have been created
@@ -1453,7 +1453,7 @@
      */
     private function initializeHandler(event:FlexEvent):void
     {
-        UIComponent(overlayChild).addOverlay(overlayColor, overlayTargetArea);
+        UIComponent(overlayChild).addOverlay(effectOverlayColor, overlayTargetArea);
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 10606
Author:   egeorgie@adobe.com
Date:     2009-09-25T23:01:50.455888Z

Log Message:
-----------
White space cleanup.

Doc notes: None
Bugs: None
Reviewer: Evtim
Tests run: build
Is noteworthy for integration: Nope

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/TransformOffsets.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/AddItems.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/OnDemandEventDispatcher.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/VideoDisplay.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/PopUpAnchor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/MatrixUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/Block.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/ViewStack.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ToggleButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/CompoundTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/LayoutElementUIComponentUtils.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/BitmapFill.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/ArrayList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/GradientBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/ListCollectionView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/Transform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/scrollClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LinearLayoutVector.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/Path.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/DescribeTypeCache.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/sparkTest/src/testWheel.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/SparkSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/AnimateTransformInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1267781 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/containers/ViewStack.as
+++ frameworks/projects/mx/src/mx/containers/ViewStack.as
@@ -1597,7 +1597,7 @@
     public function toArray():Array
     {
         var result:Array = [];
-        for(var i:int =0;i<numChildren;i++)
+        for (var i:int =0;i<numChildren;i++)
         {
             result.push(getChildAt(i));
         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 18174
Author:   cframpto@adobe.com
Date:     2010-10-15T18:39:26.941441Z

Log Message:
-----------
Make sure the text line validity is either INVALID or STATIC and the userData is cleared before handing the textLine to the TextLineRecycler.

QE notes:
Doc notes:
Bugs: SDK-27930
Reviewer: Alex
Tests run: cyclone
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/utils/TextUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/mx/core/FTETextField.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1277916 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/mx/core/FTETextField.as
+++ frameworks/projects/spark/src/mx/core/FTETextField.as
@@ -37,6 +37,7 @@
     import flash.text.engine.TextBlock;
     import flash.text.engine.TextElement;
     import flash.text.engine.TextLine;
+    import flash.text.engine.TextLineValidity;
     import flash.utils.Dictionary;

     import flashx.textLayout.compose.ISWFContext;
@@ -49,6 +50,8 @@

     import mx.managers.SystemManager;
     import mx.managers.SystemManagerGlobals;
+
+    import spark.utils.TextUtil;

     use namespace mx_internal;

@@ -2661,9 +2664,7 @@
                 // to be the fastest way to remove all children.
                 var textLine:TextLine = TextLine(removeChildAt(nextLineIndex));

-                // TLF provides a TextLine cache,
-                // for use with recreateTextLine().
-                TextLineRecycler.addLineForReuse(textLine);
+                TextUtil.recycleTextLine(textLine);
             }
         }


Fixes FLEX-33428

Fixes FLEX-33428

--- frameworks/projects/spark/src/mx/core/FTETextField.as
+++ frameworks/projects/spark/src/mx/core/FTETextField.as
@@ -179,7 +179,7 @@
          *  which control what work validateNow() needs to do.
          */
         private static const FLAG_TEXT_SET:uint = 1 << 6;
-        private static const FLAG_HTML_TEXT_SET:uint = 1 << 7;
+        public static const FLAG_HTML_TEXT_SET:uint = 1 << 7;
         private static const FLAG_TEXT_LINES_INVALID:uint = 1 << 8;
         private static const FLAG_GRAPHICS_INVALID:uint = 1 << 9;

@@ -2437,7 +2437,7 @@
         /**
          *  @private
          */
-        private function clearFlag(mask:uint):void
+        public function clearFlag(mask:uint):void
         {
             flags &= ~mask;
         }
@@ -3653,7 +3653,10 @@
         // and needs to be regenerated on demand,
         // because with htmlText what-you-set-is-not-what-you-get.
         if (!styleSheet)
+		{
             htmlText = null;
+			textfield.clearFlag(FTETextField.FLAG_HTML_TEXT_SET);
+		}

         if (!textFlow)
             return;


Transferred from the Adobe Open Source Subversion Repository

Revision: 19713
Author:   jasonsj@adobe.com
Date:     2011-01-11T21:26:11.477738Z

Log Message:
-----------
Marked spark Module and ModuleLoader discouraged for mobile.

QE notes: None
Doc notes:
Bugs:
SDK-29073 Module and ModuleLoader should be marked as discouraged for mobile use.
Reviewer: None
Tests run: checkintests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/modules/Module.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/modules/ModuleLoader.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1285544 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/modules/Module.as
+++ frameworks/projects/spark/src/spark/modules/Module.as
@@ -18,6 +18,15 @@
 import spark.components.SkinnableContainer;

 [Frame(factoryClass="mx.core.FlexModuleFactory")]
+
+//--------------------------------------
+//  Other metadata
+//--------------------------------------
+
+/**
+ *  Modules are not supported for AIR mobile applications.
+ */
+[DiscouragedForProfile("mobileDevice")]

 /**
  *  The Spark equivalent of mx:Module


Transferred from the Adobe Open Source Subversion Repository

Revision: 2743
Author:   jimurphy@adobe.com
Date:     2008-08-05T19:28:29.575474Z

Log Message:
-----------
Merged 3.0.x revisions [2649,2652,2670,2694,2699-2700,2713,2721-2723,2729,2731-2732] -> trunk

Modified Paths:
--------------
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/IFocusManagerBridge.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/oem/Configuration.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/swc/SwcLibrary.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/i18n/I18nUtils.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateChooser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools_en.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/FocusManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ISystemManager2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/Compc.java</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/modules/compiler/src/java/flex2/tools/SwcChecksums.java" copyfrom-rev="2732" action="A">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/SwcChecksums.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Alert.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/CalendarLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/XMLEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/PopUpManagerImpl.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/CompilerSwcContext.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerProxy.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/ShowAlertRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemChildrenList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/Mxmlc.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxBridgeRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/oem/Application.java</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1261931 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as
+++ frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as
@@ -97,8 +97,7 @@
         if (instance)
             throw new Error("Instance already exists.");

-		this.systemManager = ApplicationGlobals.application.systemManager as ISystemManager2;
-
+		this.systemManager = SystemManagerGlobals.topLevelSystemManagers[0] as ISystemManager2;
 		sandboxRoot = this.systemManager.getSandboxRoot();
 		sandboxRoot.addEventListener(MarshalEvent.TOOLTIP_MANAGER, marshalToolTipManagerHandler, false, 0, true);
 		var me:MarshalEvent = new MarshalEvent(MarshalEvent.TOOLTIP_MANAGER);


Transferred from the Adobe Open Source Subversion Repository

Revision: 12469
Author:   jimurphy@adobe.com
Date:     2009-12-03T22:04:16.560316Z

Log Message:
-----------
fix offsets for FB.  Convert line ending from lf to crlf in svn for the proects directory only.  When checking project files in, be sure to save you files this way.  Another update to make sure happens is set the svn properties svn:eol-style = native and svn:mime-type = text/plain (these have been updated on theses files as well)

QE notes: make sure the proper class is selected
Doc notes: no
Bugs: http://bugs.adobe.com/jira/browse/SDK-24498
Reviewer:
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
133 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1283964 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/effects/animation/MotionPath.as
+++ frameworks/projects/spark/src/spark/effects/animation/MotionPath.as
@@ -274,4 +274,4 @@
     }

 }
-}+}


IQ error callback patches finally in.

IQ error callback patches finally in.

--- src/org/igniterealtime/xiff/core/XMPPConnection.as
+++ src/org/igniterealtime/xiff/core/XMPPConnection.as
@@ -380,9 +380,9 @@
 				if ( o is IQ )
 				{
 					var iq:IQ = o as IQ;
-					if ((iq.callbackName != null && iq.callbackScope != null) || iq.callback != null)
+					if ((iq.callbackName != null && iq.callbackScope != null) || iq.callback != null || iq.errorCallback != null)
 					{
-						addIQCallbackToPending( iq.id, iq.callbackName, iq.callbackScope, iq.callback );
+						addIQCallbackToPending( iq.id, iq.callbackName, iq.callbackScope, iq.callback, iq.errorCallback );
 					}
 				}
 				var root:XMLNode = o.getNode().parentNode;
@@ -824,18 +824,31 @@
 			}

 			// If it's an error, handle it
-
+			var callbackInfo:*;
 			if ( iq.type == IQ.TYPE_ERROR)
 			{
 				dispatchError( iq.errorCondition, iq.errorMessage, iq.errorType, iq.errorCode );
-			}
-			else
-			{

 				// Start the callback for this IQ if one exists
 				if ( pendingIQs[iq.id] !== undefined )
 				{
 					var callbackInfo:* = pendingIQs[iq.id];
+
+					if (callbackInfo.errorFunc != null)
+					{
+						callbackInfo.errorFunc( iq );
+					}
+					pendingIQs[iq.id] = null;
+					delete pendingIQs[iq.id];
+				}
+			}
+			else
+			{
+
+				// Start the callback for this IQ if one exists
+				if ( pendingIQs[iq.id] !== undefined )
+				{
+					callbackInfo = pendingIQs[iq.id];

 					if (callbackInfo.methodScope && callbackInfo.methodName)
 					{
@@ -1189,6 +1202,7 @@

 			bindIQ.callback = handleBindResponse;
 			bindIQ.callbackScope = this;
+			bindIQ.errorCallback = handleBindError;

 			send(bindIQ);
 		}
@@ -1208,6 +1222,15 @@

 			establishSession();
 		}
+
+		/**
+		 * Error handler callback
+		 * @param	packet
+		 */
+		protected function handleBindError(packet:IQ):void
+		{
+
+		}

 		/**
 		 * @private
@@ -1220,6 +1243,7 @@

 			sessionIQ.callback = handleSessionResponse;
 			sessionIQ.callbackScope = this;
+			sessionIQ.errorCallback = handleSessionError;

 			send(sessionIQ);
 		}
@@ -1231,13 +1255,22 @@
 		{
 			dispatchEvent(new LoginEvent());
 		}
-
-		/**
-		 * @private
-		 */
-		protected function addIQCallbackToPending( id:String, callbackName:String, callbackScope:Object, callbackFunc:Function ):void
-		{
-			pendingIQs[id] = {methodName:callbackName, methodScope:callbackScope, func:callbackFunc};
+
+		/**
+		 *
+		 * @param	packet
+		 */
+		private function handleSessionError(packet:IQ):void
+		{
+
+		}
+
+		/**
+		 * @private
+		 */
+		protected function addIQCallbackToPending( id:String, callbackName:String, callbackScope:Object, callbackFunc:Function, errorCallbackFunc:Function ):void
+		{
+			pendingIQs[id] = { methodName:callbackName, methodScope:callbackScope, func:callbackFunc, errorFunc:errorCallbackFunc };
 		}

 		/**


Transferred from the Adobe Open Source Subversion Repository

Revision: 14435
Author:   cframpto@adobe.com
Date:     2010-02-25T22:01:59.361644Z

Log Message:
-----------
Merge DataGrid changes for mirroring from 4.x to trunk. Rev 14289 and 14355.

QE notes:
Doc notes:
Bugs:
Reviewer:
Tests run: checkintests
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UITextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridDragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/core/UIFTETextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/DataGridHeaderSeparatorSkin.mxml</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1260073 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/core/UITextField.as
+++ frameworks/projects/framework/src/mx/core/UITextField.as
@@ -2142,9 +2142,10 @@
         // be called again when parentChanged is called.
         if (!parent)
             return;
-
+
+        // If mirroring, setting width can change the transform matrix.
         if (!isNaN(explicitWidth) && super.width != explicitWidth)
-            super.width = (explicitWidth > 4) ? explicitWidth : 4;
+            width = (explicitWidth > 4) ? explicitWidth : 4;

         if (!isNaN(explicitHeight) && super.height != explicitHeight)
             super.height = explicitHeight;


Transferred from the Adobe Open Source Subversion Repository

Revision: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

Log Message:
-----------
Update action script files with asdoc version tags.

QE Notes: None.
Doc Notes: Please review and update as necessary.
tests: checkintests

Modified Paths:
--------------
663 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1260278 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/effects/Parallel.as
+++ frameworks/projects/framework/src/mx/effects/Parallel.as
@@ -71,6 +71,11 @@
  *  @see mx.effects.effectClasses.ParallelInstance
  *
  *  @includeExample examples/ParallelEffectExample.mxml
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class Parallel extends CompositeEffect
 {
@@ -87,6 +92,11 @@
 	 *
 	 *  @param target This argument is ignored for Parallel effects.
 	 *  It is included only for consistency with other types of effects.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function Parallel(target:Object = null)
 	{
@@ -103,6 +113,11 @@
      * will be equal to the duration of the child effect with the
      * longest duration (including the startDelay and repetition data
      * of that effect).
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     override public function get compositeDuration():Number
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1267564 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/containers/BoxDirection.as
+++ frameworks/projects/mx/src/mx/containers/BoxDirection.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2005-2006 Adobe Systems Incorporated
-//  All Rights Reserved.
-//
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
-//
-////////////////////////////////////////////////////////////////////////////////

 package mx.containers
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 5841
Author:   rfrishbe@adobe.com
Date:     2009-04-01T18:06:53.546424Z

Log Message:
-----------
Changing the lifecycle of the layout object in GroupBase.  Before, we’d always instantiate one in GroupBase’s constructor.  Now, we wait until createChildren() time to instantiate the default.  This means if people set the layout object, we won’t be creating this extra BasicLayout we don’t need.  There was an assumption in GroupBase around some of the proxied properties that the layout object was always going to be present.  These are cleaned up for when the layout object doesn’t always exist.  Also, now when the layout object is swapped at runtime, the verticalScrollPosition and horizontalScrollPosition don’t get pushed into the new layout object, as they may not translate correctly.  We discussed the possibility of sending in a “first item in view” for when the layout object is swapped, but for now, we don’t do anything like that.

Also fixing a bug in components.properties and some spelling errors in SkinnableDataContainer.

QE Notes: Fix the tests that were failing and re-include them
Doc Notes: -
Bugs: SDK-19769, SDK-20163
Reviewer: Hans
tests: checkintests, mustella core and layout tests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/bundles/en_US/components.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/HGroup.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1281066 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/VGroup.as
+++ frameworks/projects/spark/src/spark/components/VGroup.as
@@ -12,8 +12,8 @@
 package spark.components
 {
 import flash.events.Event;
-import spark.components.Group;
 import spark.layout.VerticalLayout;
+import spark.layout.supportClasses.LayoutBase;

 [IconFile("VGroup.png")]

@@ -50,11 +50,12 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-	public function VGroup():void
-	{
-		super(new VerticalLayout());
-	}
-
+    public function VGroup():void
+    {
+        super();
+        super.layout = new VerticalLayout();
+    }
+
     private function get verticalLayout():VerticalLayout
     {
         return VerticalLayout(layout);
@@ -250,7 +251,25 @@
     public function get lastIndexInView():int
     {
         return verticalLayout.lastIndexInView;
-    }
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden Properties
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    //  layout
+    //----------------------------------
+
+    /**
+     *  @private
+     */
+    override public function set layout(value:LayoutBase):void
+    {
+        throw(new Error(resourceManager.getString("components", "layoutReadOnly")));
+    }

     //--------------------------------------------------------------------------
     //


fixed VertexNormalShader to display world space normals

--- src/aerys/minko/render/effect/vertex/VertexNormalShader.as
+++ src/aerys/minko/render/effect/vertex/VertexNormalShader.as
@@ -4,24 +4,28 @@
 	import aerys.minko.render.effect.basic.BasicShader;
 	import aerys.minko.render.shader.SFloat;

-	public final class VertexNormalShader extends BasicShader
+	public class VertexNormalShader extends BasicShader
 	{
+		private var _normal	: SFloat	= null;
+
 		public function VertexNormalShader(target	: RenderTarget	= null,
-									  priority	: Number		= 0.)
+										   priority	: Number		= 0.)
 		{
 			super(target, priority);
 		}

+		override protected function getVertexPosition() : SFloat
+		{
+			_normal = deltaLocalToWorld(vertexAnimation.getAnimatedVertexNormal());
+			_normal = normalize(_normal);
+			_normal = divide(add(_normal, 1), 2);
+
+			return super.getVertexPosition();
+		}
+
 		override protected function getPixelColor() : SFloat
 		{
-			var normal : SFloat = interpolate(
-				vertexAnimation.getAnimatedVertexNormal()
-			);
-
-			normal = normalize(normal);
-			normal = divide(add(normal, 1), 2);
-
-			return float4(normal.xyz, 1);
+			return float4(normalize(interpolate(_normal.xyz)), 1);
 		}
 	}
 }


Remove verbose emulator flag

Remove verbose emulator flag

--- Makefile.as
+++ Makefile.as
@@ -27,7 +27,7 @@
 N64CKSUM = $(TOOLS_DIR)/n64cksum
 N64GRAPHICS = $(TOOLS_DIR)/n64graphics
 EMULATOR = mupen64plus
-EMU_FLAGS = --noosd --verbose
+EMU_FLAGS = --noosd

 ######################## Targets #############################


fix movie publishing

fix movie publishing

--- exporter/src/main/as/flump/xfl/XflLibrary.as
+++ exporter/src/main/as/flump/xfl/XflLibrary.as
@@ -54,7 +54,7 @@

     public function get publishedMovies () :Vector.<MovieMold> {
         const result :Vector.<MovieMold> = new Vector.<MovieMold>();
-        for each (var movie :MovieMold in _toPublish.toArray) result.push(movie);
+        for each (var movie :MovieMold in _toPublish.toArray()) result.push(movie);
         return result;
     }


Fix off-by-1 in empty keyframe creation

Fix off-by-1 in empty keyframe creation

--- exporter/src/main/as/flump/xfl/XflLibrary.as
+++ exporter/src/main/as/flump/xfl/XflLibrary.as
@@ -103,7 +103,7 @@
                     layer.keyframes[layer.keyframes.length - 1] : null);
                 if (lastKeyframe == null || !lastKeyframe.isEmpty) {
                     var emptyKeyframe :KeyframeMold = new KeyframeMold();
-                    emptyKeyframe.index = layer.frames + 1;
+                    emptyKeyframe.index = layer.frames;
                     emptyKeyframe.duration = 1;
                     layer.keyframes.push(emptyKeyframe);
                 }


fixed bug with dataType metadata

fixed bug with dataType metadata

Change-Id: I09dc5ea89abe95df8bed3a29047f94495917dfd0

--- WeaveData/src/weave/data/AttributeColumns/SecondaryKeyNumColumn.as
+++ WeaveData/src/weave/data/AttributeColumns/SecondaryKeyNumColumn.as
@@ -79,6 +79,8 @@
 					if (secondaryKeyFilter.value == null)
 						return value + TYPE_SUFFIX
 					break;
+				case ColumnMetadata.DATA_TYPE:
+					return _dataType == String ? DataTypes.STRING : DataTypes.NUMBER;
 			}

 			return value;
@@ -161,7 +163,7 @@
 			_keyToNumericDataMapping = new Dictionary();

 			//if it's string data - create list of unique strings
-			var dataType:String = getMetadata(ColumnMetadata.DATA_TYPE);
+			var dataType:String = _metadata.attribute(ColumnMetadata.DATA_TYPE);
 			if (data[0] is String || (dataType && dataType != DataTypes.NUMBER))
 			{
 				if (!dataType)
@@ -185,7 +187,7 @@
 				_maxNumber = NaN;
 			}
 			_metadata.attribute(ColumnMetadata.DATA_TYPE).setChildren(dataType);
-			_dataType = dataType == DataTypes.NUMBER ? Number : String;
+			_dataType = dataType == DataTypes.STRING ? String : Number;

 			// save a mapping from keys to data
 			for (index = 0; index < keysA.length; index++)
@@ -201,20 +203,25 @@
 					_uniqueSecondaryKeys.push(keyB);
 				if (! _keyToNumericDataMapping[qkeyA])
 					_keyToNumericDataMapping[qkeyA] = new Dictionary();
-				if (_dataType == String)
+				if (dataObject is String)
 				{
-					var iString:int = _uniqueStrings.indexOf(dataObject);
+					var iString:int = _uniqueStrings.indexOf(dataObject as String);
+					if (iString < 0)
+					{
+						//iString = _uniqueStrings.push(dataObject as String) - 1;
+						iString = _uniqueStrings.length;
+						_uniqueStrings[iString] = dataObject as String;
+					}
 					_keyToNumericDataMapping[qkeyA][keyB] = iString;
 					_keyToNumericDataMappingAB[qkeyAB] = iString;
 				}
 				else
 				{
-					var number:Number = StandardLib.asNumber(dataObject);
-					_keyToNumericDataMapping[qkeyA][keyB] = number;
-					_keyToNumericDataMappingAB[qkeyAB] = number;
+					_keyToNumericDataMapping[qkeyA][keyB] = dataObject;//Number(dataObject);
+					_keyToNumericDataMappingAB[qkeyAB] = dataObject;//Number(dataObject);

-					_minNumber = isNaN(_minNumber) ? number : Math.min(_minNumber, number);
-					_maxNumber = isNaN(_maxNumber) ? number : Math.max(_maxNumber, number);
+					_minNumber = isNaN(_minNumber) ? dataObject : Math.min(_minNumber, dataObject);
+					_maxNumber = isNaN(_maxNumber) ? dataObject : Math.max(_maxNumber, dataObject);
 				}
 			}


Transferred from the Adobe Open Source Subversion Repository

Revision: 18946
Author:   dloverin@adobe.com
Date:     2010-12-02T13:13:37.605831Z

Log Message:
-----------
Run a Spark WindowedApplication with "Spark Only" libraries

There are two parts to the fix:

1.      WindowedApplication: Soft link to mx.controls.HTML. Flash Builder and others who want View Source functionality in AIR applications must compile with “-includes mx.controls:HTML”.
2.      Moved IMenuDataDescriptor.as from mx.swc back to framework.swc.

QE notes: None.
Doc notes: None.
Bugs: SDK-28168
Reviewer: Corey
Tests run: cyclone by Joan
Is noteworthy for integration: Yes.

Modified Paths:
--------------
<path kind="file" copyfrom-path="/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/menuClasses/IMenuDataDescriptor.as" copyfrom-rev="18481" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/controls/menuClasses/IMenuDataDescriptor.as</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/menuClasses/IMenuDataDescriptor.as</path>
<path kind="dir" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/controls/menuClasses</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/airspark/src/spark/components/WindowedApplication.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/FrameworkClasses.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1250612 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/airspark/src/spark/components/WindowedApplication.as
+++ frameworks/projects/airspark/src/spark/components/WindowedApplication.as
@@ -30,10 +30,10 @@
 import flash.filesystem.File;
 import flash.geom.Point;
 import flash.geom.Rectangle;
+import flash.system.ApplicationDomain;

 import mx.controls.Alert;
 import mx.controls.FlexNativeMenu;
-import mx.controls.HTML;
 import mx.core.IVisualElement;
 import mx.core.IWindow;
 import mx.core.mx_internal;
@@ -1858,6 +1858,21 @@
      */
     override protected function menuItemSelectHandler(event:Event):void
     {
+        const applicationDomain:ApplicationDomain = ApplicationDomain.currentDomain;
+        var htmlClass:Class = null;
+
+        if (applicationDomain.hasDefinition("mx.controls::HTML"))
+            htmlClass = applicationDomain.getDefinition("mx.controls::HTML") as Class;
+
+        // If the HTML component is not compiled into this application, then
+        // fallback to the Spark Application behavior. The Spark Application
+        // launches view source in the browser.
+        if (!htmlClass)
+        {
+            super.menuItemSelectHandler(event);
+            return;
+        }
+
         const vsLoc:File = File.applicationDirectory.resolvePath(viewSourceURL);
         if (vsLoc.exists)
         {
@@ -1873,8 +1888,9 @@

             const winX:int = (screenWidth - winWidth) / 2;
             const winY:int = (screenHeight - winHeight) / 2;
-
-            const html:HTML = new HTML();
+
+
+            const html:Object = new htmlClass;
             {
                 html.width  = winWidth;
                 html.height = winHeight;
@@ -1904,7 +1920,7 @@

             // make it so
             win.open();
-            win.contentGroup.addElement(html);
+            win.contentGroup.addElement(IVisualElement(html));

             // links should open in the system web browser (e.g. the .zip links)
             html.htmlLoader.navigateInSystemBrowser = true;
@@ -2754,7 +2770,7 @@
      *  @private
      *  Returns a Function handler that resizes the view source HTML component with the stage.
      */
-    private function viewSourceResizeHandler(html:HTML):Function
+    private function viewSourceResizeHandler(html:Object):Function
     {
         return function (e:FlexNativeWindowBoundsEvent):void
         {


Transferred from the Adobe Open Source Subversion Repository

Revision: 16658
Author:   smgilson@adobe.com
Date:     2010-06-24T18:55:42.130688Z

Log Message:
-----------
update ASDoc comment for sortCompareFunction based on user feedback

QE notes:
Doc notes:
Bugs:
Reviewer:
Tests run: checkintests
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/dataGridClasses/DataGridColumn.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/datavisualization/src/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1268735 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/controls/dataGridClasses/DataGridColumn.as
+++ frameworks/projects/mx/src/mx/controls/dataGridClasses/DataGridColumn.as
@@ -195,7 +195,7 @@
     //  embeddedFontRegistry
     //----------------------------------

-	private static var noEmbeddedFonts:Boolean;
+    private static var noEmbeddedFonts:Boolean;

     /**
      *  @private
@@ -216,15 +216,15 @@
     {
         if (!_embeddedFontRegistry && !noEmbeddedFonts)
         {
-			try
-			{
-				_embeddedFontRegistry = IEmbeddedFontRegistry(
-					Singleton.getInstance("mx.core::IEmbeddedFontRegistry"));
-			}
-			catch (e:Error)
-			{
-				noEmbeddedFonts = true;
-			}
+            try
+            {
+                _embeddedFontRegistry = IEmbeddedFontRegistry(
+                    Singleton.getInstance("mx.core::IEmbeddedFontRegistry"));
+            }
+            catch (e:Error)
+            {
+                noEmbeddedFonts = true;
+            }
         }

         return _embeddedFontRegistry;
@@ -1301,8 +1301,10 @@
      *  property is not a valid property of the data provider, the sort does
      *  not work or will generate an exception.
      *  If you specify a value of the labelFunction property,
-     *  you must also provide a function to the sortCompareFunction property,
-     *  unless sorting is not allowed on this column.
+     *  you typically also provide a function to the sortCompareFunction property,
+     *  unless sorting is not allowed on this column.
+     *  That means you specify a function when the value from the column's dataField
+     *  does not sort in the same way as the computed value from the labelFunction property.
      *
      *
The DataGrid control uses this function to sort the elements of the data
      *  provider collection. The function signature of
@@ -1871,11 +1873,11 @@
             rendererFactory = owner.itemRenderer;

         if (rendererFactory is ClassFactory) {
-	        var contextualClassFactory: ContextualClassFactory =
-		        new ContextualClassFactory(ClassFactory(rendererFactory).generator,
-		                                   forHeader ? oldHeaderEmbeddedFontContext : oldEmbeddedFontContext);
-	        contextualClassFactory.properties = ClassFactory(rendererFactory).properties;
-	        return contextualClassFactory;
+            var contextualClassFactory: ContextualClassFactory =
+                new ContextualClassFactory(ClassFactory(rendererFactory).generator,
+                                           forHeader ? oldHeaderEmbeddedFontContext : oldEmbeddedFontContext);
+            contextualClassFactory.properties = ClassFactory(rendererFactory).properties;
+            return contextualClassFactory;
         }

         return rendererFactory;
@@ -1938,7 +1940,7 @@
         var italic:Boolean = fontStyle == "italic";

         embeddedFontContext = (noEmbeddedFonts || !embeddedFontRegistry) ?
-			null :
+            null :
             embeddedFontRegistry.getAssociatedModuleFactory(
                 fontName, bold, italic, this, owner.moduleFactory,
                 owner.systemManager);
@@ -2001,7 +2003,7 @@
         }

         embeddedFontContext = (noEmbeddedFonts || !embeddedFontRegistry) ?
-			null :
+            null :
             embeddedFontRegistry.getAssociatedModuleFactory(
                 fontName, bold, italic, this, owner.moduleFactory,
                 owner.systemManager);