Transferred from the Adobe Open Source Subversion Repository

Revision: 20644
Author:   mhorn@adobe.com
Date:     2011-03-07T18:49:20.181589Z

Log Message:
-----------
ASDoc updates

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/BeveledActionButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/MobileSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorTabBarFirstTabSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorTabBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaVScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaVScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/SkinnableContainerSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/TextSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TransparentNavigationButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorTabBarLastTabSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuItemSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ButtonBarButtonClassFactory.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/DefaultButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/BeveledBackButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/SelectableButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/CheckBoxSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaHScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaHScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/RadioButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as</path>

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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonBarSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonBarSkin.as
@@ -37,7 +37,8 @@
     //--------------------------------------------------------------------------

     /**
-     *
+     * Constructor.
+     *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 2.5


Adjustments to ContainerView to handle layout changes to the host and contentArea, enabling the Container to size itself properly and to have its border and background beads be sent size change events.

--- frameworks/projects/HTML/as/src/org/apache/flex/html/beads/ContainerView.as
+++ frameworks/projects/HTML/as/src/org/apache/flex/html/beads/ContainerView.as
@@ -98,7 +98,7 @@

             var host:UIBase = value as UIBase;

-            if (host.isWidthSizedToContent() && host.isHeightSizedToContent())
+            if (host.isWidthSizedToContent() || host.isHeightSizedToContent())
             {
                 // if both dimensions are sized to content, then only draw the
                 // borders, etc, after a child is added.  The children in an MXML
@@ -117,11 +117,13 @@
                 host.addEventListener("widthChanged", changeHandler);
                 host.addEventListener("heightChanged", changeHandler);
                 host.addEventListener("sizeChanged", sizeChangeHandler);
-                // if we have fixed size in both dimensions, wait for children
-                // to be added then run a layout pass right then as the
-                // parent won't kick off any other event in the child
-                if (!isNaN(host.explicitWidth) && !isNaN(host.explicitHeight))
+                // if we have fixed size in both dimensions, listen for children
+				// being added, but also force an initial display to get the
+				// background, border, etc.
+                if (!isNaN(host.explicitWidth) && !isNaN(host.explicitHeight)) {
                     host.addEventListener("childrenAdded", changeHandler);
+					displayBackgroundAndBorder(host);
+				}
             }
             checkActualParent();
         }
@@ -173,6 +175,8 @@
             inChangeHandler = true;

             var host:UIBase = UIBase(_strand);
+			var originalHostWidth:Number = host.width;
+			var originalHostHeight:Number = host.height;

             if (layout == null)
             {
@@ -201,6 +205,9 @@
             var pr:Number = padding.paddingRight;
             if (isNaN(pr))
                 pr = 0;
+
+			var sizeChangedByLayout:Boolean;
+
             // if the width is dictated by the parent
             if (!host.isWidthSizedToContent())
             {
@@ -210,7 +217,7 @@
                     actualParent.setWidth(host.width - padding.paddingLeft - pr);
                 }
                 // run the layout
-                layout.layout();
+                sizeChangedByLayout = layout.layout();
             }
             else
             {
@@ -223,7 +230,7 @@
                         actualParent.setHeight(host.height - padding.paddingTop - pb);
                     }
                 }
-                layout.layout();
+                sizeChangedByLayout = layout.layout();
                 if (actualParent != host)
                 {
                     // actualParent.width should be the new width after layout.
@@ -234,19 +241,36 @@
             }
             // and if the height is sized to content, set the height now as well.
             if (host != actualParent)
-            {
-                if (host.isHeightSizedToContent())
+	        {
+                if (host.isHeightSizedToContent()) {
                     host.setHeight(padding.paddingTop + pb + actualParent.height);
+				}
                 else
                     actualParent.setHeight(host.height - padding.paddingTop - pb);
-            }
-
+		    }
+			// if host and actualParent are the same, determine if the layout changed
+			// the size and if, dispatch events based on what changed
+			else if (sizeChangedByLayout)
+			{
+				if (originalHostWidth != host.width)
+					host.dispatchEvent(new Event("widthChanged"));
+				if (originalHostHeight != host.height)
+					host.dispatchEvent(new Event("heightChanged"));
+			}
+
+			displayBackgroundAndBorder(host);
+
+            inChangeHandler = false;
+		}
+
+		protected function displayBackgroundAndBorder(host:UIBase) : void
+		{
 			var backgroundColor:Object = ValuesManager.valuesImpl.getValue(host, "background-color");
 			var backgroundImage:Object = ValuesManager.valuesImpl.getValue(host, "background-image");
 			if (backgroundColor != null || backgroundImage != null)
 			{
 				if (host.getBeadByType(IBackgroundBead) == null)
-                    host.addBead(new (ValuesManager.valuesImpl.getValue(host, "iBackgroundBead")) as IBead);
+					host.addBead(new (ValuesManager.valuesImpl.getValue(host, "iBackgroundBead")) as IBead);
 			}

 			var borderStyle:String;
@@ -262,10 +286,8 @@
 			if (borderStyle != null && borderStyle != "none")
 			{
 				if (host.getBeadByType(IBorderBead) == null)
-                    host.addBead(new (ValuesManager.valuesImpl.getValue(host, "iBorderBead")) as IBead);
-			}
-
-            inChangeHandler = false;
+					host.addBead(new (ValuesManager.valuesImpl.getValue(host, "iBorderBead")) as IBead);
+			}
 		}

 		/**


Transferred from the Adobe Open Source Subversion Repository

Revision: 6975
Author:   gruehle@adobe.com
Date:     2009-05-15T22:18:14.749727Z

Log Message:
-----------
A collection of skinning and styling bug fixes.

Bugs:
SDK-21061 - borderColor style appears when color is set to red (or 0xFF0000) for Halo Button with Spark skin
SDK-20818 - When the SparkDownloadProgressBar shows an error, the bar should be visible.
SDK-20735 - The documentation for the protected property initProgressHandler mentions the label of a Spark DownloadProgressBar even though it has no label.
SDK-20732 - The backgroundImage property does nothing for the SparkDownloadProgressBar
SDK-20101 - Halo ColorPicker with Spark skin doesnt look very good after setting scaleX or scaleY
SDK-20150 - Emphasized FxButton needs wireframe theme skin
SDK-19584 - When an item is disabled in a Menu, the branch icon does not look disabled.
SDK-19563 - FxSpinner doesnt scale well

QA: The errorColor has changed slightly (0xFF0000 to 0xFE0000), so new bitmaps need to be generated
Doc: None
Checkintests: Pass

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/src/WireframeClasses.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/SpinnerIncrButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/preloaders/SparkDownloadProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/SpinnerDecrButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/defaults.css</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/wireframe/src/spark/skins/wireframe/DefaultButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/SwatchSkin.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/sparkskins/assets/MenuArrow_disabled.png</path>

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

--- frameworks/projects/framework/src/mx/preloaders/SparkDownloadProgressBar.as
+++ frameworks/projects/framework/src/mx/preloaders/SparkDownloadProgressBar.as
@@ -13,7 +13,6 @@
 {

 import flash.display.DisplayObject;
-import flash.display.GradientType;
 import flash.display.Graphics;
 import flash.display.Loader;
 import flash.display.LoaderInfo;
@@ -21,24 +20,19 @@
 import flash.events.Event;
 import flash.events.IOErrorEvent;
 import flash.events.ProgressEvent;
-import flash.events.TimerEvent;
 import flash.geom.ColorTransform;
 import flash.geom.Matrix;
-import flash.geom.Rectangle;
 import flash.net.URLRequest;
 import flash.system.ApplicationDomain;
 import flash.system.LoaderContext;
 import flash.text.TextField;
 import flash.text.TextFormat;
-import flash.utils.Timer;
 import flash.utils.getDefinitionByName;
 import flash.utils.getTimer;

-import mx.core.FlexVersion;
 import mx.events.FlexEvent;
 import mx.events.RSLEvent;
 import mx.graphics.RectangularDropShadow;
-import mx.graphics.RoundedRectangle;
 import mx.managers.ISystemManager;

 /**
@@ -290,6 +284,12 @@
 	//  backgroundImage
 	//----------------------------------

+    /**
+     *  @private
+     *  Storage for the backgroundImage property.
+     */
+    private var _backgroundImage:Object;
+
 	/**
 	 *  The background image of the application,
 	 *  which is passed in by the preloader.
@@ -312,7 +312,7 @@
 	 */
 	public function get backgroundImage():Object
 	{
-		return null;
+		return _backgroundImage;
 	}

 	/**
@@ -320,12 +320,18 @@
 	 */
 	public function set backgroundImage(value:Object):void
 	{
-		// noop
+		_backgroundImage = value;
 	}

 	//----------------------------------
 	//  backgroundSize
 	//----------------------------------
+
+    /**
+     *  @private
+     *  Storage for the backgroundSize property.
+     */
+    private var _backgroundSize:String = "";

 	/**
      *  Scales the image specified by backgroundImage
@@ -343,18 +349,18 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
 	 */
-	public function get backgroundSize():String
-	{
-		return null;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set backgroundSize(value:String):void
-	{
-		// noop
-	}
+    public function get backgroundSize():String
+    {
+        return _backgroundSize;
+    }
+
+    /**
+     *  @private
+     */
+    public function set backgroundSize(value:String):void
+    {
+        _backgroundSize = value;
+    }

 	//----------------------------------
 	//  preloader
@@ -501,6 +507,9 @@
 			g.beginFill(backgroundColor, backgroundAlpha);
 			g.drawRect(0, 0, stageWidth, stageHeight);
 		}
+
+        if (backgroundImage != null)
+            loadBackgroundImage(backgroundImage);

 		// Determine the size
 		var totalWidth:Number = Math.min(stageWidth - 10, 207);
@@ -731,6 +740,115 @@
 		return elapsedTime > 300 && count == 2;
 	}

+
+    /**
+     *  @private
+     */
+    private function loadBackgroundImage(classOrString:Object):void
+    {
+        var cls:Class;
+
+        // The "as" operator checks to see if classOrString
+        // can be coerced to a Class
+        if (classOrString && classOrString as Class)
+        {
+            // Load background image given a class pointer
+            cls = Class(classOrString);
+            initBackgroundImage(new cls());
+        }
+        else if (classOrString && classOrString is String)
+        {
+            try
+            {
+                cls = Class(getDefinitionByName(String(classOrString)));
+            }
+            catch(e:Error)
+            {
+                // ignore
+            }
+
+            if (cls)
+            {
+                var newStyleObj:DisplayObject = new cls();
+                initBackgroundImage(newStyleObj);
+            }
+            else
+            {
+                // Loading the image is slightly different
+                // than in Loader.loadContent()... is this on purpose?
+
+                // Load background image from external URL
+                var loader:Loader = new Loader();
+                loader.contentLoaderInfo.addEventListener(
+                    Event.COMPLETE, loader_completeHandler);
+                loader.contentLoaderInfo.addEventListener(
+                    IOErrorEvent.IO_ERROR, loader_ioErrorHandler);
+                var loaderContext:LoaderContext = new LoaderContext();
+                loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
+                loader.load(new URLRequest(String(classOrString)), loaderContext);
+            }
+        }
+    }
+
+    /**
+     *  @private
+     */
+    private function initBackgroundImage(image:DisplayObject):void
+    {
+        addChildAt(image,0);
+
+        var backgroundImageWidth:Number = image.width;
+        var backgroundImageHeight:Number = image.height;
+
+        // Scale according to backgroundSize
+        var percentage:Number = calcBackgroundSize();
+        if (isNaN(percentage))
+        {
+            var sX:Number = 1.0;
+            var sY:Number = 1.0;
+        }
+        else
+        {
+            var scale:Number = percentage * 0.01;
+            sX = scale * stageWidth / backgroundImageWidth;
+            sY = scale * stageHeight / backgroundImageHeight;
+        }
+
+        image.scaleX = sX;
+        image.scaleY = sY;
+
+        // Center everything.
+        // Use a scrollRect to position and clip the image.
+        var offsetX:Number =
+            Math.round(0.5 * (stageWidth - backgroundImageWidth * sX));
+        var offsetY:Number =
+            Math.round(0.5 * (stageHeight - backgroundImageHeight * sY));
+
+        image.x = offsetX;
+        image.y = offsetY;
+
+        // Adjust alpha to match backgroundAlpha
+        if (!isNaN(backgroundAlpha))
+            image.alpha = backgroundAlpha;
+    }
+
+    /**
+     *  @private
+     */
+    private function calcBackgroundSize():Number
+    {
+        var percentage:Number = NaN;
+
+        if (backgroundSize)
+        {
+            var index:int = backgroundSize.indexOf("%");
+            if (index != -1)
+                percentage = Number(backgroundSize.substr(0, index));
+        }
+
+        return percentage;
+    }
+
 	//--------------------------------------------------------------------------
 	//
 	//  Event handlers
@@ -843,7 +961,12 @@
 									   initCompleteHandler);

 		if (!_showingDisplay)
+		{
 			show();
+			// Call setDownloadProgress here to draw
+			// the progress bar background.
+			setDownloadProgress(100, 100);
+		}

 		var errorField:ErrorField = new ErrorField(this);
 		errorField.show(event.errorText);
@@ -852,7 +975,7 @@
 	/**
 	 *  Event listener for the FlexEvent.INIT_PROGRESS event.
 	 *  This implementation updates the progress bar
-	 *  each time the event is dispatched, and changes the text of the label.
+	 *  each time the event is dispatched.
 	 *
 	 *  @param event The event object.
 	 *
@@ -899,6 +1022,24 @@
 	{
 		dispatchEvent(new Event(Event.COMPLETE));
 	}
+
+    /**
+     *  @private
+     */
+    private function loader_completeHandler(event:Event):void
+    {
+        var target:DisplayObject = DisplayObject(LoaderInfo(event.target).loader);
+
+        initBackgroundImage(target);
+    }
+
+    /**
+     *  @private
+     */
+    private function loader_ioErrorHandler(event:IOErrorEvent):void
+    {
+        // Swallow the error
+    }

 }


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@1280994 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/TextSelectionHighlighting.as
+++ frameworks/projects/spark/src/spark/components/TextSelectionHighlighting.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2008 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 spark.components
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 7115
Author:   jszeto@adobe.com
Date:     2009-05-20T05:39:23.225806Z

Log Message:
-----------
Changed how components are disabled

SDK-20196 Re-work disabled logic in Spark components
SDK-20197 Remove enableSkinParts() from TrackBase and Spinner

Changed the way that components, in particular, composite components, are disabled. Moved the enabled/disabled logic from SkinnableContainerBase down to SkinnableComponent. Disabled components now prevent mouse interaction with the component and its children. The skin handles the appearance of the component in the disabled state. The Spark skins currently set their alpha to .5.

Composite components like Spinner, and TrackBase no longer disabled their component skin parts.

QE Notes: None
Doc Notes: None
Bugs: SDK-20196, 20197
Reviewer: Ryan

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/TrackBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableContainerBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VideoPlayerVolumeBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableComponent.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as
@@ -391,18 +391,6 @@
             removeSystemMouseHandlers();
     }

-    /**
-     *  @private
-     */
-    override public function set enabled(value:Boolean):void
-    {
-        if (enabled == value)
-            return;
-
-        super.enabled = value;
-        invalidateButtonState();
-    }
-
     //----------------------------------
     //  keyboardPressed
     //----------------------------------


Transferred from the Adobe Open Source Subversion Repository

Revision: 4356
Author:   rfrishbe@adobe.com
Date:     2008-12-18T23:50:17.435515Z

Log Message:
-----------
UIMovieClip needs to implement IVisualElement.  These are mostly some old changes I tried to make earlier before I understood the complexities of the different sizing models in UIMC vs UIC.  However, the important thing here really isn’t that the implementation for IVisualElement on UIMC be correct—it’s that it now compiles and we can continue to support UIMC in Gumbo.  Later, I’ll be taking a look at the different sizing models, and how we should correctly deal with transformations.

As part of this change, utilities.swc will use the files located in the flash-integration project rather than a pre-compiled SWC that was checked in.

This change will allow us to strongly type addElement, getElementAt, etc... to only work on IVisualElements.  That change will be coming a little later.

QE Notes: None
Doc Notes: None
Bugs: -
Reviewer: Glenn
tests: checkintests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/utilities/src/FlashContainerPlaceholder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/utilities/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flash-integration/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as</path>
<path kind="dir" action="D">/flex/sdk/trunk/frameworks/projects/utilities/libs</path>

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

--- frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as
+++ frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as
@@ -10,6 +10,8 @@
 ////////////////////////////////////////////////////////////////////////////////
 package mx.core
 {
+	import __AS3__.vec.Vector;
+
 	import flash.events.Event;
 	import flash.geom.Matrix;
 	import flash.geom.Matrix3D;
@@ -18,6 +20,7 @@

 	import mx.geom.CompoundTransform;
 	import mx.geom.TransformOffsets;
+
 	use namespace mx_internal;

 	/**


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@1267818 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/containers/gridClasses/GridRowInfo.as
+++ frameworks/projects/mx/src/mx/containers/gridClasses/GridRowInfo.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2005-2006 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: 6122
Author:   chaase@adobe.com
Date:     2009-04-10T14:30:17.762458Z

Log Message:
-----------
Various refactorings/renamings/changes from effects PARB review.

QE Notes: mx/effects and spark/effects currently broken (and disabled) due to these API changes. Matt is fixing.
Doc Notes: None
Bugs:
Reviewer: Hans
tests: checkintests, mustella tests/ListDataEffects

Modified Paths:
--------------
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/easing/EaseInOut.as" copyfrom-rev="5944" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/easing/EaseInOutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/CompositeEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/easing/EaseInOut.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/easing/EasingFraction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/easing/Power.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/EffectEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/ParallelInstance.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/effects/effectClasses/TweenEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/FadeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Animate.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/RepeatBehavior.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/spark-manifest.xml</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/interpolation/NumberArrayInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/IEffect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/Animate3DInstance.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimationProperty.as" copyfrom-rev="5944" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/SimpleMotionPath.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateColorInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateShaderTransitionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Resize.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateFilterInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/easing/Sine.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/Rotate3DInstance.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/events/AnimationEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/interpolation/ArrayInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/IEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/RotateInstance.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/IAnimationTarget.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/ResizeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/MotionPath.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimationProperty.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/MoveInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SequenceInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateTransformInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformRotate.as</path>

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

--- frameworks/projects/spark/src/spark/effects/easing/EaseInOutBase.as
+++ frameworks/projects/spark/src/spark/effects/easing/EaseInOutBase.as
@@ -15,68 +15,31 @@
  * is an easing-in portion of the animation followed by an easing-out portion.
  * The default behavior of this class will simply return a linear
  * interpolation for both easing phases; developers should create a subclass
- * of EaseInOut to get more interestion behavior.
+ * of EaseInOutBase to get more interestion behavior.
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-public class EaseInOut implements IEaser
+public class EaseInOutBase implements IEaser
 {
+
     /**
-     * A utility constant which, when supplied as the
-     * easeInFraction, will create an easing instance
-     * that spends the entire animation easing in. This is equivalent
-     * to simply using the easeInFraction = 1.
+     * Constructs an EaseInOutBase instance with an optional easeInFraction
+     * parameter.
+     *
+     * @param easeInFraction Optional parameter that sets the value of
+     * the easeInFraction property. The default value is
+     * EasingFraction.IN_OUT, which eases in for the first half
+     * of the time and eases out for the remainder.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public static const IN:Number = 1;
-
-    /**
-     * A utility constant which, when supplied as the
-     * easeInFraction, will create an easing instance
-     * that spends the entire animation easing out. This is equivalent
-     * to simply using the easeInFraction = 0.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    public static const OUT:Number = 0;
-
-    /**
-     * A utility constant which, when supplied as the
-     * easeInFraction, will create an easing instance
-     * that eases in for the first half and eases out for the
-     * remainder. This is equivalent
-     * to simply using the easeInFraction = .5.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    public static const IN_OUT:Number = .5;
-
-    /**
-     * Constructs an EaseInOut instance with an optional easeInFraction
-     * parameter.
-     *
-     * @param easeInFraction Optional parameter that sets the value of
-     * the easeInFraction property.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    public function EaseInOut(easeInFraction:Number = EaseInOut.IN_OUT)
+    public function EaseInOutBase(easeInFraction:Number = EasingFraction.IN_OUT)
     {
         this.easeInFraction = easeInFraction;
     }
@@ -153,7 +116,7 @@
      * ease-in part of the curve. The value returned by this class
      * is simply the fraction itself, which represents a linear
      * interpolation of the fraction. More interesting behavior is
-     * implemented by subclasses of EaseInOut.
+     * implemented by subclasses of EaseInOutBase.
      *
      * @param fraction The fraction elapsed of the easing-in portion
      * of the animation.
@@ -175,7 +138,7 @@
      * ease-out part of the curve. The value returned by this class
      * is simply the fraction itself, which represents a linear
      * interpolation of the fraction. More interesting behavior is
-     * implemented by subclasses of EaseInOut.
+     * implemented by subclasses of EaseInOutBase.
      *
      * @param fraction The fraction elapsed of the easing-out portion
      * of the animation.


Friendlier toString for StartupMessage (prints all parameters).

--- driver/src/main/flex/org/postgresql/febe/message/StartupMessage.as
+++ driver/src/main/flex/org/postgresql/febe/message/StartupMessage.as
@@ -40,5 +40,14 @@
             out.writeByte(0x00);
         }

+        public override function toString():String {
+            var items:Array = [];
+            for (var key:String in _parameters) {
+                items.push(key + ': ' + _parameters[key]);
+            }
+            return super.toString() + '[' + items.join(', ') + ']';
+        }
+
+
     }
 }


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@1269135 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/controls/treeClasses/TreeListData.as
+++ frameworks/projects/mx/src/mx/controls/treeClasses/TreeListData.as
@@ -26,6 +26,11 @@
  *  or item editor. Changing these values can lead to unexpected results.

  *
  *  @see mx.controls.listClasses.IDropInListItemRenderer
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class TreeListData extends BaseListData
 {
@@ -51,6 +56,11 @@
 	 *  @param columnIndex The index of the column in the currently visible columns of the
      *  control.
 	 *
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function TreeListData(text:String, uid:String,
 								 owner:ListBase, rowIndex:int = 0,
@@ -71,6 +81,11 @@

 	/**
 	 *  The level of the item in the tree. The top level is 1.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var depth:int;

@@ -80,6 +95,11 @@

 	/**
 	 *  A Class representing the disclosure icon for the item in the Tree control.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var disclosureIcon:Class;

@@ -89,6 +109,11 @@

 	/**
 	 *  Contains true if the node has children.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var hasChildren:Boolean;

@@ -98,6 +123,11 @@

 	/**
 	 *  A Class representing the icon for the item in the Tree control.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var icon:Class;

@@ -107,6 +137,11 @@

 	/**
 	 *  The default indentation for this row of the Tree control.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var indent:int;

@@ -116,6 +151,11 @@

 	/**
 	 *  The data for this item in the Tree control.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var item:Object;

@@ -125,6 +165,11 @@

 	/**
 	 *  Contains true if the node is open.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var open:Boolean;
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 5123
Author:   cframpto@adobe.com
Date:     2009-03-02T12:58:35.957680Z

Log Message:
-----------
Add support for importing text as XML.

QE Notes: need test cases for XML that's wrapped and not wrapped with <TextFlow> tag.  If we don't already have those cases for String that should be added as well.
Doc Notes:
Bugs: SDK-19026
Reviewers: Gordon

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>

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

--- frameworks/projects/spark/src/spark/components/RichEditableText.as
+++ frameworks/projects/spark/src/spark/components/RichEditableText.as
@@ -29,6 +29,7 @@
 import flashx.textLayout.container.DisplayObjectContainerController;
 import flashx.textLayout.container.IContainerController;
 import flashx.textLayout.conversion.ConversionType;
+import flashx.textLayout.conversion.ITextImporter;
 import flashx.textLayout.conversion.TextFilter;
 import flashx.textLayout.edit.EditManager;
 import flashx.textLayout.edit.EditingMode;
@@ -1566,7 +1567,7 @@
         staticConfiguration.textFlowInitialFormat =
             staticTextLayoutFormat;

-        if (markup is String)
+        if (markup is XML || markup is String)
         {
             // We need to wrap the markup in a <TextFlow> tag
             // unless it already has one.
@@ -1577,7 +1578,7 @@
             // we use the markup in XML form rather than
             // having TLF reconvert it to XML.
             var wrap:Boolean = true;
-            if (markup.indexOf("TextFlow") != -1)
+            if (markup is XML || markup.indexOf("TextFlow") != -1)
             {
                 try
                 {
@@ -1595,14 +1596,39 @@

             if (wrap)
             {
-                markup = '<TextFlow xmlns="http://ns.adobe.com/textLayout/2008">' +
-                         markup +
-                         '</TextFlow>';
-            }
-        }
-
-        return TextFilter.importToFlow(markup, TextFilter.TEXT_LAYOUT_FORMAT,
-                                       staticConfiguration);
+                if (markup is String)
+                {
+                    markup =
+                        '<TextFlow xmlns="http://ns.adobe.com/textLayout/2008">' +
+                        markup +
+                        '</TextFlow>';
+                }
+                else
+                {
+                    // It is XML.  Create a root element and add the markup
+                    // as it's child.
+                    var ns:Namespace =
+                        new Namespace("http://ns.adobe.com/textLayout/2008");
+
+                    xmlMarkup = <TextFlow />;
+                    xmlMarkup.setNamespace(ns);
+                    xmlMarkup.setChildren(markup);
+
+                    // The namespace of the root node is not inherited by
+                    // the children so it needs to be explicitly set on
+                    // every element, at every level.  If this is not done
+                    // the import will fail with an "Unexpected namespace"
+                    // error.
+                    for each (var element:XML in xmlMarkup..*::*)
+                       element.setNamespace(ns);
+
+                    markup = xmlMarkup;
+                }
+            }
+        }
+
+        return importToFlow(markup, TextFilter.TEXT_LAYOUT_FORMAT,
+                            staticConfiguration);
     }

     /**
@@ -1669,7 +1695,7 @@
             var t:String = _text;
             if (t != null && t != "")
             {
-                textFlow = TextFilter.importToFlow(t, TextFilter.PLAIN_TEXT_FORMAT);
+                textFlow = importToFlow(t, TextFilter.PLAIN_TEXT_FORMAT);
             }
             else
             {
@@ -1699,6 +1725,23 @@
         return textFlow;
     }

+    /**
+     *  @private
+     *
+     *  This will throw on import error.
+     */
+    private function importToFlow(source:Object, format:String,
+                                  config:Configuration = null):TextFlow
+    {
+        var importer:ITextImporter = TextFilter.getImporter(format);
+
+        // Throw import errors rather than return a null textFlow.
+        // Alternatively, the error strings are in the Vector, importer.errors.
+        importer.throwOnError = true;
+
+        return importer.importToFlow(source);
+    }
+
      /**
      *  @private
      *  Is this a style associated with the SelectionFormat?
@@ -2057,9 +2100,7 @@
         {
             names = [];
             for (p in description)
-            {
                 names.push(p);
-            };

             needContainerFormat = true;
             needParagraphFormat = true;


Minor Logic Improvements Responded to PR nits with some logic improvements, specifically involving variable protection.

--- HLSPlugin/src/com/kaltura/hls/HLSIndexHandler.as
+++ HLSPlugin/src/com/kaltura/hls/HLSIndexHandler.as
@@ -75,10 +75,20 @@
 			var man:HLSManifestParser = getManifestForQuality(lastQuality);
 			if (man && !man.streamEnds && man.segments.length > 0)
 			{
-				reloadTimer = new Timer(man.segments[man.segments.length-1].duration * 1000);
-				reloadTimer.addEventListener(TimerEvent.TIMER, onReloadTimer);
-				reloadTimer.start();
-			}
+				if (!reloadTimer)
+					setUpReloadTimer(man.segments[man.segments.length-1].duration * 1000);
+			}
+
+			// Reset our recovery variables just in case
+			isRecovering = false;
+			backupStreamNumber = 0;
+		}
+
+		private function setUpReloadTimer(initialDelay:int):void
+		{
+			reloadTimer = new Timer(initialDelay);
+			reloadTimer.addEventListener(TimerEvent.TIMER, onReloadTimer);
+			reloadTimer.start();
 		}

 		private function onReloadTimer(event:TimerEvent):void
@@ -114,12 +124,10 @@
 			isRecovering = true;
 			lastBadManifestUri = (event as IOErrorEvent).text;

-			// Create our timer if it hasn't been created yet
+			// Create our timer if it hasn't been created yet and set the delay to our delay time
 			if (!reloadTimer)
-				reloadTimer = new Timer(HLSHTTPNetStream.reloadDelayTime + 1);
-
-			// First set the timer to the error recovery interval set in HLSHTTPNetStream
-			if (reloadTimer.delay != HLSHTTPNetStream.reloadDelayTime)
+				setUpReloadTimer(HLSHTTPNetStream.reloadDelayTime);
+			else if (reloadTimer.delay != HLSHTTPNetStream.reloadDelayTime)
 			{
 				reloadTimer.reset();
 				reloadTimer.delay = HLSHTTPNetStream.reloadDelayTime;
@@ -256,10 +264,9 @@
 				}
 				else if (reloadingQuality == targetQuality || reloadingQuality == -1)
 				{
-					if (!updateNewManifestSegments(newManifest, reloadingQuality) && reloadTimer != null)
-						reloadTimer.delay = timerOnErrorDelay;
-				}
-
+					if (!updateNewManifestSegments(newManifest, reloadingQuality) && reloadTimer)
+						reloadTimer.delay = timerOnErrorDelay;
+				}
 			}

 			dispatchDVRStreamInfo();


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@1273974 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/rpc/src/mx/messaging/messages/MessagePerformanceUtils.as
+++ frameworks/projects/rpc/src/mx/messaging/messages/MessagePerformanceUtils.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2007 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.messaging.messages
 {


FLEX-33559 Fixed horizontal scrolling for data grid with no data.

--- frameworks/projects/spark/src/spark/components/gridClasses/GridDimensions.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridDimensions.as
@@ -951,13 +951,17 @@
         if ((col < 0) || (col >= _columnCount))
             return null;

-        if (_columnCount == 0 || _rowCount == 0)
+        if (_columnCount == 0)
             return new Rectangle(0, 0, 0, 0);

         const x:Number = getCellX(0, col);
         const y:Number = getCellY(0, col);
         const colWidth:Number = getColumnWidth(col);
-        const colHeight:Number = getCellY(_rowCount - 1, col) + getRowHeight(_rowCount - 1) - y;
+        var colHeight:Number = 0;
+
+		if (_rowCount > 0)
+			colHeight = getCellY(_rowCount - 1, col) + getRowHeight(_rowCount - 1) - y;
+
         return new Rectangle(x, y, colWidth, colHeight);
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 8723
Author:   chaase@adobe.com
Date:     2009-07-21T23:19:39.441122Z

Log Message:
-----------
Fixed 2 areas of effects bugs (playheadTime and transform effects shared instances). Also fixed bug in GraphicElement.localToGlobal(). Fixes remaining transform effects bugs prior to feature signoff.

QE Notes: None
Doc Notes: None
Bugs: SDK-22315, sdk-22304, sdk-22302, sdk-21931, sdk-21068, sdk-20179, sdk-21069
Reviewer: Hans, Jason (GraphicElement), Glenn (SharedObjectDepot)
API Change: None
Is noteworthy for integration: No
tests: checkintests mustella spark/effects,mx/effects (run locally and in cyclone by Matt)

Modified Paths:
--------------
<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/spark/src/spark/effects/supportClasses/AnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/CompositeEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Fade.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/interpolation/NumberInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/interpolation/RGBInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/interpolation/HSBInterpolator.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/SharedObjectDepot.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/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/ParallelInstance.as</path>

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

--- frameworks/projects/spark/src/spark/effects/interpolation/HSBInterpolator.as
+++ frameworks/projects/spark/src/spark/effects/interpolation/HSBInterpolator.as
@@ -114,6 +114,10 @@
     public function interpolate(fraction:Number, startValue:Object,
         endValue:Object):Object
     {
+        if (fraction == 0)
+            return startValue;
+        else if (fraction == 1)
+            return endValue;
         var start:HSBColor = startHSB;
         var end:HSBColor = endHSB;
         // If we have not converted start/end values at construction time,


Fix xpath for hasProperty command

Fix xpath for hasProperty command

--- src/aerys/minko/type/xpath/XPathEvaluator.as
+++ src/aerys/minko/type/xpath/XPathEvaluator.as
@@ -346,7 +346,8 @@

 			while (operator == '.')
 			{
-				chunks.push(operator);
+				//chunks.push(operator);
+				chunks.push(lexer.getToken(true));
 				operator = lexer.getToken(true);
 			}

@@ -358,7 +359,8 @@
 			{
 				try
 				{
-					getValueObject(selection[i], chunks);
+					if (getValueObject(selection[i], chunks) == null)
+						removeFromSelection(i);
 				}
 				catch (e : Error)
 				{


fixed display bug when dragging mouse over menu item but not over item label

--- WeaveUI/src/weave/ui/CustomMenu.as
+++ WeaveUI/src/weave/ui/CustomMenu.as
@@ -72,6 +72,7 @@
 				// init auto scroll
 				menu.addEventListener(MouseEvent.MOUSE_MOVE, autoScroll);
 				menu.addEventListener(MenuEvent.MENU_SHOW, handleMenuShow);
+				menu.addEventListener(MouseEvent.MOUSE_OVER, handleMouseOver, false, 1);

 				// add a sprite for a shadow to indicate when there are more menu items below or above
 				shadowSprites[menu] = shadowSprite = new Sprite();
@@ -80,6 +81,13 @@
 			}
 			menu.scrollRect = null;
 			menu.callLater(autoScroll, [menu]);
+		}
+
+		private static function handleMouseOver(event:MouseEvent):void
+		{
+			// fixes display bug when dragging mouse over menu item but not over item label
+			if (!(event.target is Menu))
+				event.buttonDown = false;
 		}

 		private static function handleMenuShow(event:MenuEvent):void


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@1248436 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/collections/HierarchicalData.as
+++ frameworks/projects/advancedgrids/src/mx/collections/HierarchicalData.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.collections
 {


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@1253219 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/charts/src/mx/charts/renderers/ShadowLineRenderer.as
+++ frameworks/projects/charts/src/mx/charts/renderers/ShadowLineRenderer.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2009 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: 10338
Author:   aharui@adobe.com
Date:     2009-09-17T01:09:56.099906Z

Log Message:
-----------
Couple of DataGrid mouse handling bugs

QE Notes: None
Doc Notes: None
Bugs: SDK-16687, SDK-16025
Reviewer: Corey
API Change: No
Is noteworthy for integration: No
tests: checkintests mustella/components/SWFLoader

Modified Paths:
--------------
<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/controls/dataGridClasses/DataGridHeader.as</path>

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

--- frameworks/projects/mx/src/mx/controls/dataGridClasses/DataGridHeader.as
+++ frameworks/projects/mx/src/mx/controls/dataGridClasses/DataGridHeader.as
@@ -74,7 +74,6 @@
         addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
         addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);
         addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
-        addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
     }

     /**
@@ -1239,6 +1238,9 @@
         var s:Sprite;
         var i:int;

+        systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true, 0, true);
+        systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler, false, 0, true);
+
         // find out if we hit the sort arrow
         s = Sprite(getChildByName("sortArrowHitArea"));

@@ -1320,6 +1322,9 @@
         var n:int;
         var i:int;

+        systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true);
+        systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler);
+
         // find out if we hit the sort arrow
         s = Sprite(getChildByName("sortArrowHitArea"));

@@ -1373,6 +1378,12 @@
                 }
             }
         }
+    }
+
+    private function mouseLeaveHandler(event:Event):void
+    {
+        systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler, true);
+        systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_UP_SOMEWHERE, mouseLeaveHandler);
     }

     mx_internal function _placeSortArrow():void


Transferred from the Adobe Open Source Subversion Repository

Revision: 17668
Author:   hmuller@adobe.com
Date:     2010-09-10T22:52:09.156291Z

Log Message:
-----------
Grid layers are now defined as type GridLayer (a private class), instead of Group.

GridLayer type no longer extends Group, it's now an object that has Group valued root property.   This makes the type's API relatively tiny - only two methods - and makes it possible for GridLayer to encapsulate the Grid itself as a layer (the item renderer layer).

Grid item renders are now consistently typed as IGridItemRenderer, rather than IVisualElement.

DefaultGridItemRenderer is now a UIFTETextField subclass and no longer supports the "textFieldClass" style.  A new UITextField based item renderer has been added, it's UITextFieldGridItemRenderer.

Support for the module implications of embedded fonts is now GridColumn's responsiblity.  GridColumn/itemToRenderer() now wraps item renderer ClassFactory item renders with a local ClassFactory subclass that delegates the newInstance() operation to the grid's moduleFactory.

QE notes:
Doc notes:
Bugs:
Reviewer: Carol, Kevin
Tests run: checkin, mustella 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/IGridItemRenderer.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/UITextFieldGridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/TextFieldGridItemRendererInclude.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ColumnHeaderBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridColumn.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/IGridItemRendererOwner.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DefaultGridItemRenderer.as</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as
@@ -14,8 +14,10 @@
 import flash.events.Event;
 import flash.events.EventDispatcher;

+import mx.core.ClassFactory;
 import mx.core.IFactory;
 import mx.core.mx_internal;
+import mx.core.Singleton;

 import spark.components.Grid;

@@ -305,6 +307,7 @@
     //----------------------------------

     private var _itemRenderer:IFactory = null;
+    private var rendererClassFactory:GridItemRendererClassFactory = null;

     [Bindable("itemRendererChanged")]

@@ -791,6 +794,35 @@
     }

     /**
+     *  @private
+     *  The static embeddedFonts property is initialized lazily.
+     */
+    private static var  _embeddedFontRegistryExists:Boolean = false;
+    private static var embeddedFontRegistryExistsInitialized:Boolean = false;
+
+    /**
+     *  @private
+     *  True if an embedded font registry singleton exists.
+     */
+    private static function get embeddedFontRegistryExists():Boolean
+    {
+        if (!embeddedFontRegistryExistsInitialized)
+        {
+            embeddedFontRegistryExistsInitialized = true;
+            try
+            {
+                _embeddedFontRegistryExists = Singleton.getInstance("mx.core::IEmbeddedFontRegistry") != null;
+            }
+            catch (e:Error)
+            {
+                _embeddedFontRegistryExists = false;
+            }
+        }
+
+        return _embeddedFontRegistryExists;
+    }
+
+    /**
      *  Convert the specified dataProvider item to a column-specific item renderer factory.
      *  By default this method calls the itemRendererFunction if it's
      *  non-null, otherwise it just returns the value of the column's itemRenderer
@@ -805,7 +837,19 @@
         const itemRendererFunction:Function = itemRendererFunction;
         var factory:IFactory = (itemRendererFunction != null) ? itemRendererFunction(item, this) : itemRenderer;

-        return factory;
+        // If this app might have embedded fonts then item renderers must be created with the Grid's
+        // module factory.  To enable that we wrap the real item renderer factory with
+        // a GridItemRendererClassFactory.
+
+        if (embeddedFontRegistryExists && (factory is ClassFactory))
+        {
+            if (!rendererClassFactory || (rendererClassFactory.factory != factory))
+                rendererClassFactory = new GridItemRendererClassFactory(grid, ClassFactory(factory));
+        }
+        else
+            rendererClassFactory = null;
+
+        return (rendererClassFactory) ? rendererClassFactory : factory;
     }

     /**
@@ -829,4 +873,52 @@
         }
     }
 }
-}+}
+
+import flash.utils.getQualifiedClassName;
+
+import mx.core.ClassFactory;
+import mx.core.IFactory;
+import mx.core.IFlexModuleFactory;
+
+import spark.components.Grid;
+
+
+/**
+ *  @private
+ *  A wrapper class for item renderers that creates the renderer instance with the grid's
+ *  module factory.
+ *
+ *  This is necessary for applications that use embedded fonts.   The module factory creates
+ *  the renderer instance in the correct "font context" in the same way as ContextualClassFactory
+ *  does.   More about this in the  ContextualClassFactory  ASDoc.
+ */
+class GridItemRendererClassFactory extends ClassFactory
+{
+    public var grid:Grid;
+    public var factory:ClassFactory;
+
+    public function GridItemRendererClassFactory(grid:Grid, factory:ClassFactory)
+    {
+        super(factory.generator);
+        this.grid = grid;
+        this.factory = factory;
+    }
+
+    override public function newInstance():*
+    {
+        const factoryGenerator:Class = factory.generator;
+        const moduleFactory:IFlexModuleFactory = grid.moduleFactory;
+        const instance:Object =
+            (moduleFactory) ? moduleFactory.create(getQualifiedClassName(factoryGenerator)) : new factoryGenerator();
+
+        const factoryProperties:Object = factory.properties;
+        if (factoryProperties)
+        {
+            for (var p:String in factoryProperties)
+                instance[p] = factoryProperties[p];
+        }
+
+        return instance;
+    }
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 19631
Author:   hmuller@adobe.com
Date:     2011-01-06T22:09:10.284970Z

Log Message:
-----------
Performance optimization for the DataGrid "Christmas Tree" scenario.   Revised Grid/invalidateCell(), added GridLayout/invalidateCell().

QE notes: One failing test was excluded, bitmap needs to be updated.
Doc notes:
Bugs:
Reviewer: Carol
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/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
@@ -1059,7 +1059,7 @@
         var cellX:Number = startCellX;
         var cellY:Number = startCellY;
         var availableHeight:Number = height;
-
+
         for (rowIndex = startRowIndex; (availableHeight > 0) && (rowIndex >= 0) && (rowIndex < rowCount); rowIndex++)
         {
             newVisibleRowIndices.push(rowIndex);
@@ -1156,6 +1156,38 @@
         visibleRowIndices = newVisibleRowIndices;
         visibleColumnIndices = newVisibleColumnIndices;
     }
+
+    /**
+     *  Reinitialize and layout the visible renderer at rowIndex, columnIndex.  If the cell's preferred
+     *  height changes and the Grid has been configured with variableRowHeight=true, the entire grid is
+     *  invalidated.
+     *
+     *
If row,columnIndex do not correspond to a visible cell, nothing is done.

+     *
+     *  @param rowIndex The 0-based row index of the cell that changed.
+     *  @param columnIndex The 0-based column index of the cell that changed.
+     */
+    public function invalidateCell(rowIndex:int, columnIndex:int):void
+    {
+        const renderer:IGridItemRenderer = getVisibleItemRenderer(rowIndex, columnIndex);
+        if (!renderer)
+            return;
+
+        initializeItemRenderer(renderer, rowIndex, columnIndex);
+
+        // We're using layoutBoundsX,Y,Width,Height instead of x,y,width,height because
+        // the IUITextField item renderers pad their x,y,width,height properties
+
+        const rendererX:Number = renderer.getLayoutBoundsX();
+        const rendererY:Number = renderer.getLayoutBoundsY();
+        const rendererWidth:Number = renderer.getLayoutBoundsWidth();
+        const rendererHeight:Number = renderer.getLayoutBoundsHeight();
+
+        layoutItemRenderer(renderer, rendererX, rendererY, rendererWidth, rendererHeight);
+
+        if (gridDimensions.variableRowHeight && (rendererHeight != renderer.getPreferredBoundsHeight()))
+            grid.invalidateDisplayList();
+    }

     /**
      *  @private
@@ -1171,7 +1203,7 @@
         const colOffset:int = visibleColumnIndices.indexOf(columnIndex);
         if ((rowOffset == -1) || (colOffset == -1))
             return -1;
-
+
         const index:int = (rowOffset * visibleColumnIndices.length) + colOffset;
         return index;
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 12651
Author:   smgilson@adobe.com
Date:     2009-12-08T15:04:12.651288Z

Log Message:
-----------
ASDoc prep for L10N, and add a few new examples

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/mediaClasses/VolumeBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/components/examples/VideoDisplayExample.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoDisplay.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/mediaClasses/ScrubBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/mediaClasses/DynamicStreamingVideoItem.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/components/examples/VideoPlayerExample.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/components/mediaClasses/examples/DynamicStreamingVideoSourceExample.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/mediaClasses/DynamicStreamingVideoSource.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/mediaClasses/MuteButton.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/components/mediaClasses/examples</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/spark/asdoc/en_US/spark/components/mediaClasses</path>

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

--- frameworks/projects/spark/src/spark/components/mediaClasses/VolumeBar.as
+++ frameworks/projects/spark/src/spark/components/mediaClasses/VolumeBar.as
@@ -43,11 +43,11 @@
 //--------------------------------------

 /**
- *  Dispatched when the dropDown is dismissed for any reason such when
- *  the user:
+ *  Dispatched when the volume drop-down slider is dismissed for any reason,
+ *  such as when the user:
  *

- *
selects an item in the dropDown

- *
mouses outside outside of the dropDown

+ *
Selects an item in the drop-down slider

+ *
Clicks outside of the drop-down slider

  *

  *
  *  @eventType spark.events.DropDownEvent.CLOSE
@@ -60,9 +60,9 @@
 [Event(name="close", type="spark.events.DropDownEvent")]

 /**
- *  Dispatched when the mouses over the dropDown button
- *  to display the dropDown.  It is also dispatched if the user
- *  uses the keyboard and types Ctrl-Down to open the dropDown.
+ *  Dispatched when the user mouses over the drop-down slider
+ *  to display it. It is also dispatched if the user
+ *  uses the keyboard and types Ctrl-Down to open the drop-down slider.
  *
  *  @eventType spark.events.DropDownEvent.OPEN
  *
@@ -74,8 +74,7 @@
 [Event(name="open", type="spark.events.DropDownEvent")]

 /**
- *  Dispatched when the video mutes or unmutes the volume
- *  from user-interaction.
+ *  Dispatched when the user mutes or unmutes the volume.
  *
  *  @eventType mx.events.FlexEvent.MUTED_CHANGE
  *
@@ -91,8 +90,9 @@
 //--------------------------------------

 /**
- *  The delay, in milliseconds, to wait before opening the volume slider,
- *  while the anchor button is hovered.
+ *  The delay, in milliseconds, before opening the volume slider
+ *  after the user moves the mouse over the volume icon in
+ *  the VideoDisplay control.
  *
  *  @default 200
  *
@@ -108,7 +108,7 @@
 //--------------------------------------

 /**
- *  Open State of the DropDown component
+ *  Open state of the drop-down slider.
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
@@ -118,12 +118,13 @@
 [SkinState("open")]

 /**
- *  The VolumeBar is a drop-down slider to control
- *  the volume of the video player.  By default it pops up when the
- *  muteButton is rolled over (with a delay of 200 milliseconds).  The
- *  muteButton functions as a mute/unmute button when clicked.
+ *  The VolumeBar class defines a drop-down slider to control
+ *  the volume of the VideoDisplay control.
+ *  By default, the drop-down slider opens when the user moves the mouse
+ *  over the volume icon of the VideoDisplay control.
+ *  The rollOverOpenDelay style defines a delay of 200 milliseconds
+ *  before opening the drop-down slider.
  *
- *  @see spark.components.VideoPlayer
  *  @see spark.components.VideoDisplay
  *
  *  @langversion 3.0
@@ -179,9 +180,10 @@

     /**
-     *  A skin part that defines the dropDown area. When the volume slider
-     *  dropdown is open, clicking anywhere outside of the dropDown skin
-     *  part will close the  video slider dropdown.
+     *  A skin part that defines the drop-down area of the volume drop-down slider.
+     *  When the volume slider drop down is open,
+     *  clicking anywhere outside of the dropDown skin part
+     *  closes the drop-down slider.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -204,7 +206,7 @@
     private var _dropDownController:DropDownController;

     /**
-     *  Instance of the helper class that handles all of the mouse, keyboard
+     *  Instance of the DropDownController class that handles all of the mouse, keyboard
      *  and focus user interactions.
      *
      *  @langversion 3.0
@@ -217,6 +219,9 @@
         return _dropDownController;
     }

+    /**
+     *  @private
+     */
     protected function set dropDownController(value:DropDownController):void
     {
         if (_dropDownController == value)
@@ -267,8 +272,8 @@
     [Bindable("mutedChange")]

     /**
-     *  true if the volume of the video is muted;
-     *  false otherwise.
+     *  Contains true if the volume of the video is muted,
+     *  and false if not.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -465,7 +470,7 @@
     //--------------------------------------------------------------------------

     /**
-     *  Opens the dropDown.
+     *  Opens the drop-down slider.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -478,10 +483,10 @@
     }

      /**
-     *  Closes the dropDown.
-     *
-     *  @param commit Flag indicating if the component should commit the selected
-     *  data from the dropDown.
+     *  Closes the drop-down slider.
+     *
+     *  @param commit Set to true if the component should commit the value
+     *  from the drop-down slider.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


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@1249714 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/airframework/src/mx/controls/FileSystemSizeDisplayMode.as
+++ frameworks/projects/airframework/src/mx/controls/FileSystemSizeDisplayMode.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2006-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: 5545
Author:   jimurphy@adobe.com
Date:     2009-03-25T19:00:52.330680Z

Log Message:
-----------
1st pass of rename according to the spec http://opensource.adobe.com/wiki/display/flexsdk/Dropping+the+Fx+Prefix

Flex now requires CSS Style declarations to declare @namespace rules and disambiguate between halo and spark components using CSS 3 namespace prefixes on type selectors. At compile time, this namespace information will be used to map type names to qualified ActionScript class names. At runtime, type selectors are matched on qualified ActionScript class name (for example mx.controls.Button rather than just Button). Flex 3 applications must be compiled with -compatibility-version=3.0.0 to get unqualified CSS type selector behavior.

QE: Yes, this build may help in updating test cases to use the new namespaces and class names.
Dev: Not yet
Doc: Not yet

Modified Paths:
--------------
748 paths were modified

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ItemRenderer.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ItemRenderer.as
@@ -9,7 +9,7 @@
 //
 ////////////////////////////////////////////////////////////////////////////////

-package mx.components
+package spark.components.supportClasses
 {
 import flash.display.DisplayObjectContainer;
 import flash.events.Event;
@@ -17,7 +17,11 @@
 import flash.geom.Point;

 import mx.core.mx_internal;
-import mx.graphics.baseClasses.TextGraphicElement;
+import spark.components.DataGroup;
+import spark.components.Group;
+import spark.components.IItemRenderer;
+import spark.components.MXMLComponent;
+import spark.primitives.supportClasses.TextGraphicElement;
 import mx.styles.StyleManager;

 /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 3512
Author:   jimurphy@adobe.com
Date:     2008-10-07T20:28:56.871176Z

Log Message:
-----------
rename flex4 mx.effects.easing to mx.effects.fxEasing to avoid a name conflict in the framework

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing/Constant.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing/EaseInOut.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing/Power.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="dir" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/easing" copyfrom-rev="3509" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing/Sine.as</path>
<path kind="dir" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/easing</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/gumbo-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxAnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/FxAnimate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing/IEaser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/fxEasing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/FxAnimateFilter.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/CallAction.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
@@ -17,7 +17,7 @@
 import mx.components.Group;
 import mx.effects.Animation;
 import mx.effects.PropertyValuesHolder;
-import mx.effects.easing.IEaser;
+import mx.effects.fxEasing.IEaser;
 import mx.effects.interpolation.IInterpolator;
 import mx.events.AnimationEvent;


Transferred from the Adobe Open Source Subversion Repository

Revision: 12969
Author:   egeorgie@adobe.com
Date:     2009-12-15T21:56:35.581732Z

Log Message:
-----------
Cleanup FIXMEs.

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<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/LayoutElementHelper.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/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.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/spark/src/spark/primitives/Rect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ListItemDragProxy.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
@@ -910,7 +910,6 @@
         // there must have been no constraints to worry about
         if (constraintsHolder)
         {
-            // FIXME (egeorgie): add support for 'baseline' constraint, when the new layouts support it.
             var left:* = reenableConstraint("left");
             var right:* = reenableConstraint("right");
             var top:* = reenableConstraint("top");


Fixes.

Fixes.

	* build-aux/wine-ld-library-path.as (create_wine_directory):
	Beware of var name clashes.

--- build-aux/wine-ld-library-path.as
+++ build-aux/wine-ld-library-path.as
@@ -83,20 +83,20 @@
   local winehome=$HOME/.wine
   cp -a $winehome/dosdevices $winehome/*.reg $winehome/config "$dir"
   # Symlink everything from the .wine directory just in case.
+  local f
   for f in $winehome/*
   do
-    if ! test -a "$dir/$bf"; then
+    test -a "$dir/$(basename $f)" ||
       ln -s $f "$dir"
-    fi
   done

   # Convert the directories into a format that windows like.
   local windirs=
-  local dir
-  for dir in $dirs
+  local d
+  for d in $dirs
   do
-    test ! -d "$dir" ||
-      windirs+=";$(winepath -w "$dir")"
+    test ! -d "$d" ||
+      windirs+=";$(winepath -w "$d")"
   done

   # Add all the added path to the Path variable in user.reg config