Transferred from the Adobe Open Source Subversion Repository

Revision: 3035
Author:   jvroom@adobe.com
Date:     2008-08-29T06:18:11.275196Z

Log Message:
-----------
* Added HTTPMultiService component - refactored the guts of HTTPService into a new
class AbstractOperation which HTTPService now wraps.

* Moved concurrency and showBusyCursor classes up to the mx.rpc level from mx.rpc.mxml.
Partly this improves consistency and partly because it is awkward to implement them
with the wrapping design in the subclass.  This does introduce a new dependency on
CursorManager in mx.rpc.HTTPService, though I think that should turn into a "runtime binding"
so we remove the compile time binding altogether.

* Added managers, operationManager, resultType, resultElementType, properties to the
AbstractService and AbstractInvoker classes.  These are used to improve the metadata information
on these operations for better tooling in the future, and to allow management services to
tie into the service infrastructure.

* AsyncToken gets a default parameter for its constructor so it can be used in MXML.

* Moved endpoint property up from the MXML to the regular mx.rpc version to improve consistency

The blazeds RPC tests passed unfortunately I had problems getting the RPC tests in the sdk branch
to build and run so let me know if you see any problems on those.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/remoting/mxml/RemoteObject.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AbstractOperation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AbstractService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/remoting/Operation.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/HTTPMultiService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/mxml/HTTPService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AbstractInvoker.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/SerializationFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/Operation.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/AbstractOperation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/remoting/RemoteObject.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/mxml/WebService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AsyncToken.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/HTTPService.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/Operation.as</path>

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

--- frameworks/projects/rpc/src/mx/rpc/remoting/RemoteObject.as
+++ frameworks/projects/rpc/src/mx/rpc/remoting/RemoteObject.as
@@ -46,6 +46,8 @@
     //
     //--------------------------------------------------------------------------

+    private var _endpoint:String;
+
     /**
      *  @private
      */
@@ -61,7 +63,39 @@
     // Properties
     //
     //--------------------------------------------------------------------------
-
+
+	//----------------------------------
+	//  endpoint
+	//----------------------------------
+
+    [Inspectable(category="General")]
+    /**
+     * This property allows the developer to quickly specify an endpoint for a RemoteObject
+     * destination without referring to a services configuration file at compile time or programmatically creating
+     * a ChannelSet. It also overrides an existing ChannelSet if one has been set for the RemoteObject service.
+     *
+     *
If the endpoint url starts with "https" a SecureAMFChannel will be used, otherwise an AMFChannel will
+     * be used. Two special tokens, {server.name} and {server.port}, can be used in the endpoint url to specify
+     * that the channel should use the server name and port that was used to load the SWF.

+     *
+     *
Note: This property is required when creating AIR applications.

+     */
+    public function get endpoint():String
+    {
+        return _endpoint;
+    }
+
+    public function set endpoint(url:String):void
+    {
+        // If endpoint has changed, null out channelSet to force it
+        // to be re-initialized on the next Operation send
+        if (_endpoint != url || url == null)
+        {
+            _endpoint = url;
+            channelSet = null;
+        }
+    }
+
 	//----------------------------------
 	//  makeObjectsBindable
 	//----------------------------------


:coffee:

:coffee:

--- src/app/flash/partials/jinx.as
+++ src/app/flash/partials/jinx.as
@@ -587,38 +587,6 @@
 	return this;
 }

-/* ERROR HANDLE */
-if(loaderInfo.hasOwnProperty("uncaughtErrorEvents")) loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR, function uncaughtErrorHandler( event:UncaughtErrorEvent ):void {
-	var deepDir = 2;
-	var maxStack = 3; // 0 for infinite;
-	var errorText:String;
-	var errorObj:Object = {};
-	var stack:String;
-	if( event.error is Error ) {
-		errorText = (event.error as Error).message;
-		errorObj.msg = errorText;
-		stack = (event.error as Error).getStackTrace();
-		errorObj.stack = stack;
-		if(stack != null){ errorText += stack; }
-	} else if( event.error is ErrorEvent ) {
-		errorText = (event.error as ErrorEvent).text;
-	} else {
-		errorText = event.text;
-	}
-	event.preventDefault();
-
-	var resp = [];
-	var asSplit = errorText.split(".as:");
-	for(var i=1;i<asSplit.length;i++){
-		var dir = [];
-		for(var k=deepDir;k>0;--k) dir.push(asSplit[i-1].split('\\').slice(k*-1)[0]);
-		resp.push(dir.join("/")+".as:"+asSplit[i].split("]")[0]);
-		if(maxStack && i>=maxStack) break;
-	}
-
-	console.log(errorObj.msg+"\n\n"+resp.join('\n'));
-});
-
 /* EXTERNAL FUNCS */
 var $js = function(js){
 	ExternalInterface.call(js);


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

--- frameworks/projects/mx/src/mx/skins/halo/ButtonSkin.as
+++ frameworks/projects/mx/src/mx/skins/halo/ButtonSkin.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2003-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: 15679
Author:   chaase@adobe.com
Date:     2010-04-23T23:33:44.107719Z

Log Message:
-----------
Made layout constraint animation actually work. Animating constraints (left, right, etc.) with the Animate effect worked previously, but only if the animation values were explicitly specified or, in a transition, if both states had valid values for the constraint. But if you attempted to run a transition animating "left" where the constraint was cleared in either state, the animation would fail.
The fix checks for invalid values in the states and, when they occur, animates other related properties instead, or in addition. For example, an animation on "left" may turn into an animation on "x".

QE notes: None (added new checkintest AnimateConstraintsTest; might be interesting to see for further Mustella test development)
Doc notes: None
Bugs: None
Reviewer: Jason
Tests run: checkintests (with new test), Mustella spark/effects
Is noteworthy for integration: Yes. Downstream teams asked for this functionality.

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/effects/Animate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Resize.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/tests/basicTests/spark/scripts/AnimateConstraintsTestScript.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/tests/basicTests/BasicTests.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/tests/basicTests/spark/views/AnimateConstraintsTests.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/tests/basicTests/BasicTests-config.xml</path>

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

--- frameworks/projects/spark/src/spark/effects/Animate.as
+++ frameworks/projects/spark/src/spark/effects/Animate.as
@@ -362,11 +362,60 @@
         {
             if (motionPaths)
             {
+                var horizontalMove:Boolean;
+                var verticalMove:Boolean;
                 affectedProperties = new Array(motionPaths.length);
                 for (var i:int = 0; i < motionPaths.length; ++i)
                 {
                     var effectHolder:MotionPath = MotionPath(motionPaths[i]);
-                    affectedProperties[i] = effectHolder.property;
+                    affectedProperties.push(effectHolder.property);
+                    // Some properties side-affect others: add them to the list
+                    switch (effectHolder.property)
+                    {
+                        // left/right/top/bottom side-effect x/y/width/height
+                        case "left":
+                        case "right":
+                        case "horizontalCenter":
+                            horizontalMove = true;
+                            break;
+                        case "top":
+                        case "bottom":
+                        case "verticalCenter":
+                            verticalMove = true;
+                            break;
+                        // The next two let us capture the explicit values, so that we
+                        // can restore them if necessary when the effect ends
+                        case "width":
+                            if (affectedProperties.indexOf("explicitWidth") < 0)
+                                affectedProperties.push("explicitWidth");
+                            if (affectedProperties.indexOf("percentWidth") < 0)
+                                affectedProperties.push("percentWidth");
+                            break;
+                        case "height":
+                            if (affectedProperties.indexOf("explicitHeight") < 0)
+                                affectedProperties.push("explicitHeight");
+                            if (affectedProperties.indexOf("percentHeight") < 0)
+                                affectedProperties.push("percentHeight");
+                            break;
+                    }
+                }
+                if (horizontalMove)
+                {
+                    if (affectedProperties.indexOf("x") < 0)
+                        affectedProperties.push("x");
+                    if (affectedProperties.indexOf("width") < 0)
+                        affectedProperties.push("width");
+                    if (affectedProperties.indexOf("explicitWidth") < 0)
+                        affectedProperties.push("explicitWidth");
+                }
+                if (verticalMove)
+                {
+                    if (affectedProperties.indexOf("y") < 0)
+                        affectedProperties.push("y");
+                    if (affectedProperties.indexOf("height") < 0)
+                        affectedProperties.push("height");
+                    if (affectedProperties.indexOf("explicitHeight") < 0)
+                        affectedProperties.push("explicitHeight");
                 }
             }
             else
@@ -501,5 +550,128 @@
     {
         dispatchEvent(event);
     }
+
+    /**
+     * @private
+     * Tell the propertyChanges array to keep all values, unchanged or not.
+     * This enables us to check later, when the effect is finished, whether
+     * we need to restore explicit height/width values.
+     */
+    override mx_internal function captureValues(propChanges:Array,
+                                                setStartValues:Boolean,
+                                                targetsToCapture:Array = null):Array
+    {
+        var propertyChanges:Array =
+            super.captureValues(propChanges, setStartValues, targetsToCapture);
+
+        // If we're capturing explicitWidth/Height values, don't strip unchanging
+        // values from propertyChanges; we want to know whether these values should
+        // be restored when the effect ends
+        var explicitValuesCaptured:Boolean =
+            getAffectedProperties().indexOf("explicitWidth") >= 0 ||
+            getAffectedProperties().indexOf("explicitHeight") >= 0;
+        if (explicitValuesCaptured && setStartValues)
+        {
+            var n:int = propertyChanges.length;
+            for (var i:int = 0; i < n; i++)
+            {
+                if (targetsToCapture == null || targetsToCapture.length == 0 ||
+                    targetsToCapture.indexOf(propertyChanges[i].target) >= 0)
+                {
+                    propertyChanges[i].stripUnchangedValues = false;
+                }
+            }
+        }
+        return propertyChanges;
+    }
+
+    /**
+     *  @private
+     *  After applying start values, check to see whether the values
+     *  contain percentWidth/percentHeight, which should be applied
+     *  after any width/height/explicitWidth/explicitHeight values.
+     */
+    override mx_internal function applyStartValues(propChanges:Array,
+                                                   targets:Array):void
+    {
+        super.applyStartValues(propChanges, targets);
+        // Special case for percentWidth/Height properties. If we are watching
+        // width/explicitWidth or height/explicitHeight values and also
+        // percentWidth/Height values, we have to make sure to apply the
+        // percent values last to avoid having them get clobbered by
+        // applying the width/height values. We could either sort the
+        // propChanges array or just make sure the re-apply the percent
+        // values here, after we're done with the rest.
+        if (propChanges)
+        {
+            var n:int = propChanges.length;
+            for (var i:int = 0; i < n; i++)
+            {
+                var target:Object = propChanges[i].target;
+                if (propChanges[i].start["percentWidth"] !== undefined &&
+                    "percentWidth" in target)
+                {
+                    target.percentWidth = propChanges[i].start["percentWidth"];
+                }
+                if (propChanges[i].start["percentHeight"] !== undefined &&
+                    "percentHeight" in target)
+                {
+                    target.percentWidth = propChanges[i].start["percentWidth"];
+                }
+            }
+        }
+    }
+
+    /**
+     * @private
+     * When we're done, check to see whether explicitWidth/Height values
+     * for the target are NaN in the end state. If so, we should restore
+     * them to that value. This ensures that the target will be sized by
+     * its layout manager instead of by the width/height set during
+     * the effect.
+     */
+    override mx_internal function applyEndValues(propChanges:Array,
+                                                 targets:Array):void
+    {
+        super.applyEndValues(propChanges, targets);
+        // Special case for animating width/height during a transition, because
+        // we may have clobbered the explicitWidth/Height values which otherwise
+        // would not have been set. We need to restore these values plus any
+        // associated layout constraint values (percentWidth/Height)
+        if (propChanges)
+        {
+            var n:int = propChanges.length;
+            for (var i:int = 0; i < n; i++)
+            {
+                var target:Object = propChanges[i].target;
+                if (propChanges[i].end["explicitWidth"] !== undefined)
+                {
+                    if (isNaN(propChanges[i].end["explicitWidth"]) &&
+                        "explicitWidth" in target)
+                    {
+                        target.explicitWidth = NaN;
+                        if (propChanges[i].end["percentWidth"] !== undefined &&
+                            "percentWidth" in target)
+                        {
+                            target.percentWidth = propChanges[i].end["percentWidth"];
+                        }
+                    }
+                }
+                if (propChanges[i].end["explicitHeight"] !== undefined)
+                {
+                    if (isNaN(propChanges[i].end["explicitHeight"]) &&
+                        "explicitHeight" in target)
+                    {
+                        target.explicitHeight = NaN;
+                        if (propChanges[i].end["percentHeight"] !== undefined &&
+                            "percentHeight" in target)
+                        {
+                            target.percentHeight = propChanges[i].end["percentHeight"];
+                        }
+                    }
+                }
+            }
+        }
+    }
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 5770
Author:   gruehle@adobe.com
Date:     2009-03-30T20:58:54.529722Z

Log Message:
-----------
Add [Alternative] metadata to the Halo components that have a Gumbo replacement.

Bugs: SDK-20190
QA notes: none
Doc notes: Additional ASDoc comments added for many of the classes. These should all be reviewed.
Reviewer: Chet

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TileList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/RadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/HSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Zoom.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ToggleButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/HBox.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/framework/src/mx/controls/RadioButtonGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/ControlBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Cubic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/VSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Fade.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/RemoveChildAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/TweenEffect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeRight.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Sine.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/VBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Glow.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/CheckBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Quartic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Box.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeLeft.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/HScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/ApplicationControlBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Quintic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Tween.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Tile.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Quadratic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/AddChildAction.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/framework/src/mx/effects/WipeDown.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Rotate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/SetPropertyAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Canvas.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Resize.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Blur.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/LinkBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Move.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Text.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/HorizontalList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeUp.as</path>

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

--- frameworks/projects/framework/src/mx/effects/Zoom.as
+++ frameworks/projects/framework/src/mx/effects/Zoom.as
@@ -16,6 +16,8 @@
 import mx.effects.effectClasses.ZoomInstance;

 use namespace mx_internal;
+
+[Alternative(replacement="spark.effects.Scale", since="4.0")]

 /**
  *  The Zoom effect zooms the object in or out on a center point.


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

--- frameworks/projects/framework/src/mx/effects/Zoom.as
+++ frameworks/projects/framework/src/mx/effects/Zoom.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2003-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.effects
 {


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

--- frameworks/projects/mx/src/mx/controls/LinkButton.as
+++ frameworks/projects/mx/src/mx/controls/LinkButton.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2003-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.controls
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 7766
Author:   dloverin@adobe.com
Date:     2009-06-11T23:14:47.510089Z

Log Message:
-----------
WindowedApplication and Window bug fixes.

QE Notes: None.
Doc Notes: Changed some ASDoc comments.
Bugs: SDK-21672, SDK-21625, SDK-21628
Reviewer: Glenn
tests: checkintests

On 6/11/09 6:54 AM, "Darrell Loverin" <dloverin@adobe.com> wrote:
http://bugs.adobe.com/jira/browse/SDK-21672 When using system chrome, setting height to 0 moves the status bar to the top of the app. and does not resize the app.

Modified commitProperties(). This looks like an AIR bug. I worked around the problem by first setting the nativeWindow to the correct size and then setting the stage.stageHeight.

http://bugs.adobe.com/jira/browse/SDK-21625 minWidth and minHeight default to incorrect values.
Modified ASDoc @default comment for minWidth, minHeight, maxWidth, and maxHeight.

http://bugs.adobe.com/jira/browse/SDK-21628 minWidth and minHeight override the width and height when set in MXML.

The height and width are set by the auto generated code before the application window is created. The problem was that maxHeight is initialized to zero and is used if there is no nativeWindow. So when the height property is set to 500 and the autogenerated code sets it before the nativeWindow is created, the height setting will see the height is greater than maxHeight and set it to zero.

I fixed the problem by initializing _maxHeight and _maxWidth to 2880 (the documented maximum width and height of an AIR window).

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/WindowedApplication.as</path>

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

--- frameworks/projects/airframework/src/mx/core/Window.as
+++ frameworks/projects/airframework/src/mx/core/Window.as
@@ -19,6 +19,7 @@
 import flash.display.NativeWindowDisplayState;
 import flash.display.NativeWindowInitOptions;
 import flash.display.NativeWindowResize;
+import flash.display.NativeWindowSystemChrome;
 import flash.display.Sprite;
 import flash.events.Event;
 import flash.events.MouseEvent;
@@ -884,7 +885,7 @@
      *  @private
      *  Storage for the maxHeight property.
      */
-    private var _maxHeight:Number = 10000;
+    private var _maxHeight:Number = 2880;

     /**
      *  @private
@@ -910,6 +911,8 @@
     /**
      *  Specifies the maximum height of the application's window.
      *
+     *  @default dependent on the operating system and the AIR systemChrome setting.
+     *
      *  @langversion 3.0
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
@@ -929,7 +932,7 @@
      *  @private
      *  Storage for the maxWidth property.
      */
-    private var _maxWidth:Number = 10000;
+    private var _maxWidth:Number = 2880;

     /**
      *  @private
@@ -955,6 +958,8 @@
     /**
      *  Specifies the maximum width of the application's window.
      *
+     *  @default dependent on the operating system and the AIR systemChrome setting.
+     *
      *  @langversion 3.0
      *  @playerversion AIR 1.1
      *  @productversion Flex 3
@@ -987,6 +992,8 @@

     /**
      *  Specifies the minimum height of the application's window.
+     *
+     *  @default dependent on the operating system and the AIR systemChrome setting.
      *
      *  @langversion 3.0
      *  @playerversion AIR 1.1
@@ -1032,6 +1039,8 @@

     /**
      *  Specifies the minimum width of the application's window.
+     *
+     *  @default dependent on the operating system and the AIR systemChrome setting.
      *
      *  @langversion 3.0
      *  @playerversion AIR 1.1
@@ -1812,7 +1821,7 @@
      *  @private
      *  Storage for the systemChrome property.
      */
-    private var _systemChrome:String = "standard";
+    private var _systemChrome:String = NativeWindowSystemChrome.STANDARD;

     /**
      *  Specifies the type of system chrome (if any) the window has.
@@ -2323,6 +2332,12 @@

         if (boundsChanged)
         {
+            // Work around an AIR issue setting the stageHeight to zero when
+            // using system chrome. The set of the stage.stageHeight property
+            // is rejected unless the nativeWindow is first set to the proper height.
+            if (_bounds.height == 0 && systemChrome == NativeWindowSystemChrome.STANDARD)
+                nativeWindow.height = chromeHeight() + _bounds.height;
+
             // We use temporary variables because when we set stageWidth or
             // stageHeight _bounds will be overwritten when we receive
             // a RESIZE event.


Transferred from the Adobe Open Source Subversion Repository

Revision: 18468
Author:   hmuller@adobe.com
Date:     2010-11-05T16:37:07.571913Z

Log Message:
-----------
Removed GridLayout "hacks" that invalidated columnHeaderGroup during GridLayout/updateDisplayList().  Grid/partAdded() now resets (all IDataGridElements) columnHeaderGroup's nestLevel to force it to layout after the grid.

QE notes: Failing tests have been excluded
Doc notes:
Bugs: SDK-27862
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/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/IDataGridElement.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/gridClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DefaultGridHeaderRenderer.mxml</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@1279003 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/Grid.as
+++ frameworks/projects/spark/src/spark/components/Grid.as
@@ -3121,11 +3121,19 @@
      *  During virtual layout updateDisplayList() eagerly validates lazily
      *  created (or recycled) IRs.   We don't want changes to those IRs to
      *  invalidate the size of the grid.
+     *
+     *  This method also dispatches an invalidateSize event that's used
+     *  by the DataGrid to invalidate IDataGridElements.
      */
     override public function invalidateSize():void
     {
         if (!inUpdateDisplayList)
+        {
+            const notifyListeners:Boolean = !invalidateSizeFlag;
             super.invalidateSize();
+            if (notifyListeners)
+                dispatchChangeEvent("invalidateSize");
+        }
     }

     /**
@@ -3133,11 +3141,19 @@
      *  During virtual layout updateDisplayList() eagerly validates lazily
      *  created (or recycled) IRs.  Calls to invalidateDisplayList() eventually
      *  short-circuit but doing so early saves a few percent.
+     *
+     *  This method also dispatches an invalidateDisplayList event that's used
+     *  by the DataGrid to invalidate IDataGridElements.
      */
     override public function invalidateDisplayList():void
     {
         if (!inUpdateDisplayList)
+        {
+            const notifyListeners:Boolean = !invalidateDisplayListFlag;
             super.invalidateDisplayList();
+            if (notifyListeners)
+                dispatchChangeEvent("invalidateDisplayList");
+        }
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 10242
Author:   chaase@adobe.com
Date:     2009-09-14T21:06:01.494781Z

Log Message:
-----------
Fix/workaround for use of suspendBackgroundProcessing on Flex 4 effects. The new effects depend on layout validation running to update the properties of the target objects, but this flag specifically suppresses layout validation. The 'fix' is to disable setting this flag for the new effects. A longer-term fix is in the works, but in the meantime, it will at least be possible for the new effects to work if this flag has been set.

QE notes: None
Doc notes: None
Bugs: sdk-22974
Reviewer: Corey
Tests run: checkintests, Mustella spark effects
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/effects/Animate.as</path>

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

--- frameworks/projects/spark/src/spark/effects/Animate.as
+++ frameworks/projects/spark/src/spark/effects/Animate.as
@@ -24,6 +24,15 @@
 import spark.effects.supportClasses.AnimateInstance;

 use namespace mx_internal;
+
+//--------------------------------------
+//  Excluded APIs
+//--------------------------------------
+
+// Exclude suspendBackgroundProcessing for now because the Flex 4
+// effects depend on the layout validation work that the flag suppresses
+[Exclude(name="suspendBackgroundProcessing", kind="property")]
+

 [DefaultProperty("motionPaths")]


Transferred from the Adobe Open Source Subversion Repository

Revision: 4335
Author:   jszeto@adobe.com
Date:     2008-12-17T00:52:56.919040Z

Log Message:
-----------
GraphicElement Optimization

- Changed how a shared displayObject is positioned in a GraphicElement. Previously, it was always placed at (x,y). Now, it is placed at (0,0) if the displayObject can be shared (ie. it has no transforms). This solves the problem of a sharedDisplayObject getting repositioned without the GraphicElement being aware of it.

- Optimized Group.updateDisplayList so that we only redraw the GraphicElement's that share a displayObject that needs to be updated. Added a new class called InvalidatingSprite which has a single property called "invalid". If a GraphicElement needs to be redrawn, it marks its shared or unshared displayObject as invalid. Group will then only update the GraphicElements whose displayObject is marked invalid. Added invalidateDisplayList calls in a few missing places.

QE Notes: Some of the mustella bitmaps need to be regenerated. The player renders differently two transformed sprites that draw the same visuals. For example, a rotated sprite at (0,0) with a drawRect at (20,20) will look from a rotated sprite at (20,20) with a drawRect at (0,0).
Doc Notes: None
Bugs: SDK-18053
Reviewer: Evtim

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Line.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/core/InvalidatingSprite.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTrackBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Path.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVSliderSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>

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

--- frameworks/projects/spark/src/spark/primitives/Path.as
+++ frameworks/projects/spark/src/spark/primitives/Path.as
@@ -670,6 +670,7 @@
         clearBounds();
         _data = null;
         invalidateSize();
+        invalidateDisplayList();
     }

     /**


Add licensing header

Add licensing header

--- src/com/jonas/net/Multipart.as
+++ src/com/jonas/net/Multipart.as
@@ -1,3 +1,20 @@
+/*
+ *  Copyright 2017 Jonas Monnier
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
 package com.jonas.net
 {
 	import flash.net.URLRequest;


Removed useless whitespace

Removed useless whitespace

--- src/org/mangui/hls/controller/AudioTrackController.as
+++ src/org/mangui/hls/controller/AudioTrackController.as
@@ -33,7 +33,7 @@
             // Prevents crash when reading hls.audioTracks.length before audio tracks are initialized
             _audioTracks = new Vector.<AudioTrack>();
         }
-
+
         public function dispose() : void {
             _hls.removeEventListener(HLSEvent.MANIFEST_LOADED, _manifestLoadedHandler);
             _hls.removeEventListener(HLSEvent.LEVEL_LOADED, _levelLoadedHandler);


Change change.BGFgJ2908.txt by hqm@IBM-AA473F7AA76 /home/hqm/src/svn/openlaszlo/trunk/WEB-INF/lps/lfc/ on 2006-09-25 13:04:28 EDT

Summary: fix bug 2732, load checker in media loader leaves idle tasks running

New Features:

Bugs Fixed: LPP-2732 load tester delegate doesn't get removed

Technical Reviewer: adam (pending)
QA Reviewer: (pending)
Doc Reviewer: (pending)

Documentation:

Release Notes:

Details:

This bug doesn't happen in legals, so I back-ported the LzMediaLoader load checker code
from legals to trunk.

Tests:

test case in bug report

git-svn-id: d62bde4b5aa582fdf07c8d403e53e0399a7ed285@1916 fa20e4f9-1d0a-0410-b5f3-dc9c16b8b17c

--- WEB-INF/lps/lfc/data/LzMediaLoader.as
+++ WEB-INF/lps/lfc/data/LzMediaLoader.as
@@ -100,7 +100,10 @@
     }
     if (resc) {
         mc.attachMovie( resc , "lmc", this.LOADERDEPTH );
-        if (this.mc.loading == true) LzLoadQueue.loadFinished( mc );
+        if (this.mc.loading == true) {
+            Debug.error('already loading', this.mc);
+            LzLoadQueue.loadFinished( mc );
+        }
     } else {
         Debug.error('%w.attachMovie(%w)', this, resc);
     }
@@ -109,9 +112,11 @@
 //==============================================================================
 // @keywords private
 //==============================================================================
+
 LzMediaLoader.prototype.startingLoad = function ( loadmc ){
     this.checkonce = false;
-    this.loadChecker.register( _root.LzIdle, "onidle" );
+    this.loadChecker.register( LzIdle, "onidle" );
+    this.removeLoadCheckerDel.register( this, "onloaddone" );
 }

 //=============================================================================
@@ -202,14 +207,20 @@
     //getBytesTotal is wrong before the header of the movie has loaded

     /*
-    _root.Debug.write('%w %w %w %w %w %w %w %w %w', this.mc.lmc, typeof(this.mc.lmc.getBytesTotal),
+    Debug.write('%w %w %w %w %w %w %w %w %w', this.mc.lmc, typeof(this.mc.lmc.getBytesTotal),
                       this.mc.lmc.getBytesLoaded(), typeof(this.mc.lmc.getBytesLoaded()),
                       this.mc.lmc.getBytesTotal(), typeof(this.mc.lmc.getBytesTotal()),
                       this.mc.lmc._currentframe, this.mc.lmc._framesloaded, this.mc.lmc._totalframes);
-*/
+    */
+
+    if ( this.isjpeg && this.mc.lmc._height <= 0) {
+        //Debug.error('skipping 0 height jpeg');
+        return;
+    }
+
     if ( this.checkonce ){
         var lr = this.mc.lmc.getBytesLoaded() / this.mc.lmc.getBytesTotal();
-        if (lr != this.owner["loadratio"]) {
+        if (lr != this.owner["loadratio"] && !isNaN(lr)) {
             this.owner.setAttribute("loadratio" , lr);
             //reset timeout for media which is streaming
             this.mc.loadtime = getTimer();
@@ -230,9 +241,9 @@
              var nlp = this.mc.lmc._framesloaded /
              this.mc.lmc._totalframes;

-             if ( nlp > this.owner.loadperc ){
+             if ( nlp >= this.owner.loadperc ){
                  //reset timeout for media which is streaming
-                 //_root.Debug.write( "here" , this.mc.lmc._framesloaded ,
+                 //Debug.write( "here" , this.mc.lmc._framesloaded ,
                  //this.mc.lmc._totalframes );

                  if (this.mc.lmc._totalframes > 0) {


added a way to change the export url

added a way to change the export url

--- WeaveUI/src/weave/menus/ExportMenu.as
+++ WeaveUI/src/weave/menus/ExportMenu.as
@@ -16,6 +16,7 @@
 package weave.menus
 {
 	import weave.Weave;
+	import weave.compiler.Compiler;
 	import weave.core.LinkableCallbackScript;
 	import weave.core.LinkableFunction;
 	import weave.visualization.tools.ExternalTool;
@@ -72,6 +73,8 @@
 			);
 		}

+		public static var url:String = "/weave-html5/";
+
 		public static function export():void
 		{
 			if (lastHtml5WindowName)
@@ -80,14 +83,18 @@
 					'var obj = window[WEAVE_EXTERNAL_TOOLS][windowName];',
 					'obj.window.close();'
 				);
-			var url:String = '/pdo/pdo.html';
 			ExternalTool.launch(WeaveAPI.globalHashMap, url, lastHtml5WindowName = ExternalTool.generateWindowName());
 		}

-		public static function disableScripts():void
+		public static function disableScripts(exportUrl:String = null):void
 		{
 			LinkableFunction.enabled = false;
 			LinkableCallbackScript.enabled = false;
+
+			if (exportUrl)
+				ExportMenu.url = exportUrl;
+			else
+				exportUrl = ExportMenu.url;

 			var names:Array = WeaveAPI.globalHashMap.getNames();
 			var lcs:LinkableCallbackScript = WeaveAPI.globalHashMap.requestObject("_disableFlashScripts", LinkableCallbackScript, false);
@@ -95,7 +102,7 @@
 			WeaveAPI.globalHashMap.setNameOrder(names);
 			lcs.groupedCallback.value = false;
 			lcs.script.value = "if (typeof ExportMenu != 'undefined') {\n" +
-				"\tExportMenu.disableScripts();\n" +
+				"\tExportMenu.disableScripts(" + Compiler.stringify(exportUrl) + ");\n" +
 				"\tExportMenu.export();\n" +
 				"\tSessionStateEditor.openDefaultEditor();\n" +
 				"}";


Transferred from the Adobe Open Source Subversion Repository

Revision: 12934
Author:   rfrishbe@adobe.com
Date:     2009-12-15T01:54:22.402049Z

Log Message:
-----------
Cleaning up some FIXMEs in the code and fixing up some ASDocs.  Also fixing VSlider/HSlider dataTip positioning so that the thumb doesn't have to be in the same coordinate system as the Slider itself.

QE notes: -
Doc notes: -
Bugs: -
Reviewer: Kevin for part of it--otherwise just doc fixes
Tests run: checkintests, mustella Slider
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HSlider.as</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/VideoPlayer.as</path>

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

--- frameworks/projects/spark/src/spark/components/VSlider.as
+++ frameworks/projects/spark/src/spark/components/VSlider.as
@@ -160,7 +160,7 @@
             var relY:Number = thumb.getLayoutBoundsY() +
                             (thumb.getLayoutBoundsHeight() - tipAsDisplayObject.height) / 2;
             var o:Point = new Point(initialPosition.x, relY);
-            var r:Point = localToGlobal(o);
+            var r:Point = thumb.parent.localToGlobal(o);

             // Get the screen bounds
             var screenBounds:Rectangle = systemManager.getVisibleApplicationRect();


Transferred from the Adobe Open Source Subversion Repository

Revision: 12850
Author:   jimurphy@adobe.com
Date:     2009-12-11T14:57:14.623098Z

Log Message:
-----------
add 6 new DMV projects to the SDK:
automation
automation_air
automation_dmv
automation_flashflexkit
automation_spark
datavisualization

These projects are setup to build in an ant main call.  There are currently several warnings in the datavisualization project that will be cleaned up.  No checkintests exist for these projects as of yet.

I also modified the exisitng projects build files for easier management of the localization targets, bundle and fat-swc. If the projects that I updated:airframework,airspark,framework,playerglobal,rpc,and spark.  All the new projects have been implemented this same way.

QE notes: DMV folks should run through their tests
Doc notes: probably
Bugs: nope
Reviewer:
Tests run: ran the following targets: compile,checkintests,other.locales and doc
Is noteworthy for integration: no

Modified Paths:
--------------
1404 paths were modified

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

--- frameworks/projects/automation_air/src/AutomationAirClasses.as
+++ frameworks/projects/automation_air/src/AutomationAirClasses.as
@@ -0,0 +1,42 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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
+{
+
+/**
+ *  @private
+ *  In some projects, this class is used to link additional classes
+ *  into the SWC beyond those that are found by dependency analysis
+ *  starting from the classes specified in manifest.xml.
+ *  This project has no manifest file (because there are no MXML tags
+ *  corresponding to any classes in it) so all the classes linked into
+ *  the SWC are found by a dependency analysis starting from the classes
+ *  listed here.
+ */
+internal class AutomationAirClasses
+{
+
+	import mx.automation.air.AirDragManagerAutomationHandler;AirDragManagerAutomationHandler;
+	import mx.automation.air.AirFunctionsHelper;AirFunctionsHelper;
+	import mx.automation.delegates.containers.WindowedApplicationAutomationImpl;WindowedApplicationAutomationImpl;
+	import mx.automation.delegates.containers.WindowsAutomationImpl;WindowsAutomationImpl;
+	import mx.automation.delegates.controls.fileSystemClasses.FileSystemDataGridNameColumnRendererAutomationImpl;FileSystemDataGridNameColumnRendererAutomationImpl;
+	import mx.automation.delegates.controls.FileSystemTreeAutomationImpl;FileSystemTreeAutomationImpl;
+	import mx.automation.delegates.controls.FlexNativeMenuAutomationImpl;FlexNativeMenuAutomationImpl;
+	import spark.automation.delegates.components.SparkWindowedApplicationAutomationImpl;SparkWindowedApplicationAutomationImpl;
+	import spark.automation.delegates.components.SparkWindowAutomationImpl;SparkWindowAutomationImpl;
+	//Maintain alphabetical order
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 12850
Author:   jimurphy@adobe.com
Date:     2009-12-11T14:57:14.623098Z

Log Message:
-----------
add 6 new DMV projects to the SDK:
automation
automation_air
automation_dmv
automation_flashflexkit
automation_spark
datavisualization

These projects are setup to build in an ant main call.  There are currently several warnings in the datavisualization project that will be cleaned up.  No checkintests exist for these projects as of yet.

I also modified the exisitng projects build files for easier management of the localization targets, bundle and fat-swc. If the projects that I updated:airframework,airspark,framework,playerglobal,rpc,and spark.  All the new projects have been implemented this same way.

QE notes: DMV folks should run through their tests
Doc notes: probably
Bugs: nope
Reviewer:
Tests run: ran the following targets: compile,checkintests,other.locales and doc
Is noteworthy for integration: no

Modified Paths:
--------------
1404 paths were modified

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

--- frameworks/projects/automation_spark/src/spark/core/Version.as
+++ frameworks/projects/automation_spark/src/spark/core/Version.as
@@ -0,0 +1,18 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+import mx.core.mx_internal;
+
+/**
+ *  @private
+ *  Version string for this class.
+ */
+mx_internal static const VERSION:String = "4.0.0.0";


Transferred from the Adobe Open Source Subversion Repository

Revision: 7163
Author:   aharui@adobe.com
Date:     2009-05-21T02:19:55.813792Z

Log Message:
-----------
Initial checkin of frame 1 cleanup.  In an RSL linkage, more classes will now come from the RSL because they are no longer needed in frame 1, and the size of the application SWF will be smaller.

QE Notes: None
Doc Notes: Maybe.  All new classes should be undocumented, but it might be worth checking that and any changes to interfaces
Bugs:
Reviewer: darrell
tests: checkintests mustella/MarshallPlan

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/ActiveWindowManager.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/LayoutManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/RSLEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Menu.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses/MarshalPopUpData.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IEmbeddedFontRegistry.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/PopUpManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/lang/StandardDefs.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/EventProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UITextFormat.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</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/core/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridColumn.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/EmbeddedFontRegistry.as</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/flex4/src/spark/primitives/RichText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/EmbeddedFont.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/modules/compiler/src/java/flex2/tools/PreLink.java</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/preloaders/Preloader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/resources/ResourceManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ResourceModuleRSLItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/FrameworkClasses.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ISWFBridgeProvider.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses/FocusManagerMarshalMixin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/resources/ResourceManager.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/IMarshalSystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/EventListenerRequest.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses/ToolTipManagerMarshalMixin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/frameworkSwcExceptionsList.txt</path>
<path kind="file" action="M">/flex/sdk/trunk/mustella/MustellaResultsParser.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Alert.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/ChildManager.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/MarshallPlan.as</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/managers/SystemManagerGlobals.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/SWFBridgeGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/alertClasses/AlertForm.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/TreeItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ISystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework_textLayout/src/mx/core/UITLFTextField.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses/DragManagerMarshalMixin.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/frameworks/projects/framework/src/mx/controls/MenuBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/Request.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSStyleDeclaration.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/FlexEvent.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/IActiveWindowManager.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/airframework/src/mx/managers/WindowedSystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/SimpleText.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses/PopUpManagerMarshalMixin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/messaging/config/LoaderConfig.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/IFocusManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/preloaders/DownloadProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ISystemManagerChildManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/marshalClasses/CursorManagerMarshalMixin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/PopUpData.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ISWFBridgeGroup.as</path>

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

--- frameworks/projects/framework/src/mx/managers/IFocusManager.as
+++ frameworks/projects/framework/src/mx/managers/IFocusManager.as
@@ -31,7 +31,7 @@
  *  @playerversion AIR 1.1
  *  @productversion Flex 3
  */
-public interface IFocusManager
+public interface IFocusManager extends IEventDispatcher
 {
     //--------------------------------------------------------------------------
     //
@@ -287,67 +287,6 @@
     function getNextFocusManagerComponent(
                             backward:Boolean = false):IFocusManagerComponent;

-    /**
-     *  Move focus from the current control
-     *  to the previous or next control in the tab order.
-     *  The direction of the move is specified
-     *  with the direction argument.
-     *
-     *  @param direction FocusRequestDirection.FORWARD moves to
-     *  from the control that currently has focus to controls with a higher tab index.
-     *  If more than one control has the same index, the next control
-     *  in the flow of the document is visited.
-     *  FocusRequestDirection.BACKWARD moves to controls with
-     *  a lower tab index.
-     *  FocusRequestDirection.TOP move the focus to the control
-     *  with the lowest tab index. If more than one control has the same index,
-     *  focus is moved to the first control in the flow of the document.
-     *  FocusRequestDirection.BOTTOM move the focus to the control
-     *  with the highest tab index. If more than one control has the same index,
-     *  focus is moved to the last control in the flow of the document.
-     *
-     *  @param fromDisplayObject The starting point from which focus is moved.
-     *  If an object is provided, this overrides the default behavior
-     *  where focus is moved from the object that currently has focus.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
-     */
-    function moveFocus(direction:String,
-                       fromDisplayObject:DisplayObject = null):void;
-
-    /**
-     *  Adds a SWF bridge to this focus manager.
-     *
-     *  Adding the SWF bridge is required to get focus
-     *  to transfer seamlessly between focus managers in other sandboxes
-     *  or using different versions of a focus manager.
-     *
-     *  @param bridge The bridge to another focus manager.
-     *  @param owner The display object that owns the bridge.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
-     */
-    function addSWFBridge(bridge:IEventDispatcher, owner:DisplayObject):void
-
-    /**
-     *  Removes a focus manager.
-     *  This must be called when a bridge added by calling
-     *  addSWFBridge is removed.
-     *
-     *  @param bridge The bridge to remove.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
-     */
-    function removeSWFBridge(bridge:IEventDispatcher):void

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 6957
Author:   jimurphy@adobe.com
Date:     2009-05-15T16:11:59.737851Z

Log Message:
-----------
Merged beta1 revisions 6898,6906,6913,6915,6917,6926,6930 -> trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/ImageHelper.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Scroller.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/TrackBase.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/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/VRule.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/flash-integration/FlexComponentKit.mxp</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/fxg/swf/FXG2SWFTranscoder.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/ShapeHelper.java</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/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/HRule.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/dom/filters/GlowFilterNode.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flash-integration/FlexComponentKit.mxi</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/TypeHelper.java</path>

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

--- frameworks/projects/framework/src/mx/managers/SystemManager.as
+++ frameworks/projects/framework/src/mx/managers/SystemManager.as
@@ -3229,6 +3229,7 @@
             // This listener is intended to run before any other KeyboardEvent listeners
             // so that it can redispatch a cancelable=true copy of the event.
             addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true, 1000);
+            addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelHandler, true, 1000);
         }

         var docFrame:int = (totalFrames == 1)? 0 : 1;
@@ -3438,6 +3439,18 @@
                 }
             }
         }
+    }
+
+    private function mouseWheelHandler(e:MouseEvent):void
+    {
+    	if (!e.cancelable)
+    	{
+    		e.stopImmediatePropagation();
+    		var cancelableEvent:MouseEvent =
+    			new MouseEvent(e.type, e.bubbles, true, e.localX, e.localY, e.relatedObject,
+    						   e.ctrlKey, e.altKey, e.shiftKey, e.buttonDown, e.delta);
+    		e.target.dispatchEvent(cancelableEvent);
+    	}
     }

     private function installCompiledResourceBundles():void


Transferred from the Adobe Open Source Subversion Repository

Revision: 8031
Author:   egeorgie@adobe.com
Date:     2009-06-20T01:10:03.288554Z

Log Message:
-----------
Scrub the TODOs in the framework, convert to FIXMEs in the new convention and assigning an owner.

Doc Notes: N/A
Bugs: N/A
Reviewer: Deepa
tests: build, checkintests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/StrokedElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/layouts/WheelLayout.as</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/framework/src/mx/controls/DateChooser.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/flex4/src/spark/effects/supportClasses/FadeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/Slider.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/effects/animation/Timeline.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Scale.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/Rotate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/mediaClasses/VolumeBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/HSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/ModifiedCollectionView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/spark/ErrorSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Move.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/HorizontalLayout.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/effects/AnimateTransform.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/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.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/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/framework/src/mx/effects/EffectTargetFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableComponent.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/RemoveAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/utils/BitmapUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/spark/FocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/GraphicElement.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/framework/src/mx/effects/CompositeEffect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/MotionPath.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/flex4/src/spark/layouts/supportClasses/LayoutElementHelper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</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/flex4/src/spark/components/PopUpAnchor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/mediaClasses/StreamingVideoSource.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/PropertyChanges.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ToggleButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/RemoveActionInstance.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/flex4/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/pathSegments/LineSegment.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/flex4/src/spark/components/VideoPlayer.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/AnimateTransitionShaderInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.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/utils/ObjectUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AddActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ListBase.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/flex4/src/spark/primitives/Path.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/Rect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/SimpleText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableContainer.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/framework/src/mx/managers/CursorManagerImpl.as</path>

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

--- frameworks/projects/mx/src/mx/controls/listClasses/ListBase.as
+++ frameworks/projects/mx/src/mx/controls/listClasses/ListBase.as
@@ -4263,7 +4263,7 @@
         // re-key the item renderers in visibleData
         reKeyVisibleData();

-        // TODO This code seems redundant with the code in cleanupAfterDataChangeEffect();
+        // FIXME (aharui): This code seems redundant with the code in cleanupAfterDataChangeEffect();
         // need to investigate what's actually needed & where.
         var index:int = scrollPositionToIndex(horizontalScrollPosition - offscreenExtraColumnsLeft, verticalScrollPosition - offscreenExtraRowsTop);
         iterator.seek(CursorBookmark.FIRST,index);


Transferred from the Adobe Open Source Subversion Repository

Revision: 51
Author:   open-source-svn-admin@adobe.com
Date:     2007-12-20T19:15:59.594849Z

Log Message:
-----------
Perforce Change 191636 by aharui@aharui-pc2 on 2007/12/20 14:14:49 verticalScrollPos could go negative Bugs: SDK-13540 QA: Doc:

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as

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

--- frameworks/projects/mx/src/mx/controls/listClasses/ListBase.as
+++ frameworks/projects/mx/src/mx/controls/listClasses/ListBase.as
@@ -5962,7 +5962,7 @@
                     if ((caretIndex == verticalScrollPosition) &&
                          (onscreenRowCount - partialRow <= 1))
                         caretIndex++;
-                    newVerticalScrollPosition = Math.min(caretIndex, maxVerticalScrollPosition);
+                    newVerticalScrollPosition = Math.max(Math.min(caretIndex, maxVerticalScrollPosition), 0);
                 }
                 bSelectItem = true;
                 break;
@@ -6001,7 +6001,7 @@
                     newVerticalScrollPosition = Math.min(maxVerticalScrollPosition, caretIndex - onscreenRowCount + partialRow + 1);
             }
             else if (caretIndex < verticalScrollPosition)
-                newVerticalScrollPosition = caretIndex;
+                newVerticalScrollPosition = Math.max(caretIndex, 0);
         }

         if (!isNaN(newVerticalScrollPosition))


Transferred from the Adobe Open Source Subversion Repository

Revision: 10943
Author:   egeorgie@adobe.com
Date:     2009-10-08T22:46:27.680372Z

Log Message:
-----------
Fix to dragging from List with multiple-selection

- The fix is to postpone the selection commit until we make sure the user has not started a drag gesture.
- Exclude the dragEnabled, dropEnabled, dragMoveEnabled properties for DropDownList

QE notes: None
Doc notes: None
Bugs: None
Reviewer: Deepa
Tests run: checkintests, mustella List, DropDownList
Is noteworthy for integration: No

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/spark/src/spark/components/List.as</path>

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

--- frameworks/projects/spark/src/spark/components/DropDownList.as
+++ frameworks/projects/spark/src/spark/components/DropDownList.as
@@ -120,6 +120,9 @@
 //--------------------------------------

 [Exclude(name="allowMultipleSelection", kind="property")]
+[Exclude(name="dragEnabled", kind="property")]
+[Exclude(name="dragMoveEnabled", kind="property")]
+[Exclude(name="dropEnabled", kind="property")]
 [Exclude(name="selectedIndices", kind="property")]
 [Exclude(name="selectedItems", kind="property")]

@@ -402,6 +405,42 @@
     }

     //----------------------------------
+    //  dragEnabled
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Excluded property
+     */
+    override public function set dragEnabled(value:Boolean):void
+    {
+    }
+
+    //----------------------------------
+    //  dragMoveEnabled
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Excluded property
+     */
+    override public function set dragMoveEnabled(value:Boolean):void
+    {
+    }
+
+    //----------------------------------
+    //  dropEnabled
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Excluded property
+     */
+    override public function set dropEnabled(value:Boolean):void
+    {
+    }
+
+    //----------------------------------
     //  labelField
     //----------------------------------


- fixed bug in opacity setting in UIComponent::applyStyles
- small optimizations to value setting in UIComponent::applyStyles

git-svn-id: e38e7cdd6ace00d8230583a2d3b43e9a55f5c011@127 bc4816be-ef27-423a-9c4d-fc420be121a2

--- src/reprise/ui/UIComponent.as
+++ src/reprise/ui/UIComponent.as
@@ -1345,8 +1345,15 @@
 				m_visible = visible = true;
 			}

-			rotation = m_currentStyles.rotation || 0;
-			opacity = m_currentStyles.opacity || 1;
+			super.rotation = m_currentStyles.rotation || 0;
+			if (m_currentStyles.opacity != null)
+			{
+				super.alpha = m_currentStyles.opacity;
+			}
+			else
+			{
+				super.alpha = 1;
+			}

 			if (!m_currentStyles.outerWidth)
 			{


Match change to java class.

Match change to java class.

git-svn-id: a1a4b28b82a3276cc491891159dd9963a0a72fae@4357 542714f4-19e9-0310-aa3c-eee0fc999fb1

--- src/as/com/threerings/presents/net/AuthRequest.as
+++ src/as/com/threerings/presents/net/AuthRequest.as
@@ -9,6 +9,17 @@
     {
         _creds = creds;
         _version = version;
+
+        // magic up a timezone in the format "GMT+XX:XX"
+        // Of course, the sign returned from getTimezoneOffset() is wrong
+        var minsOffset :int = -1 * new Date().getTimezoneOffset();
+        var hoursFromUTC :int = Math.abs(minsOffset) / 60;
+        var minsFromUTC :int = Math.abs(minsOffset) % 60;
+
+        minsFromUTC %= 60;
+        _zone = "GMT" + ((minsOffset < 0) ? "-" : "+") +
+            ((hoursFromUTC < 10) ? "0" : "") + hoursFromUTC + ":" +
+            ((minsFromUTC < 10) ? "0" : "") + minsFromUTC;
     }

     // documentation inherited
@@ -18,6 +29,7 @@

         out.writeObject(_creds);
         out.writeField(_version);
+        out.writeField(_zone);
     }

     // documentation inherited
@@ -27,9 +39,11 @@

         _creds = (ins.readObject() as Credentials);
         _version = (ins.readField(String) as String);
+        _zone = (ins.readField(String) as String);
     }

     protected var _creds :Credentials;
     protected var _version :String;
+    protected var _zone :String;
 }
 }


Issue #153: Fix widget resizing when left panel is open

--- src/com/esri/viewer/WidgetTemplate.as
+++ src/com/esri/viewer/WidgetTemplate.as
@@ -512,8 +512,8 @@
         if ((stage.mouseX < stage.width - 20) && (stage.mouseY < stage.height - 20))
         {
             if ((stage.mouseX - parent.x) > minimumResizeWidth)
-            {
-                width = (stage.mouseX - parent.x);
+            {
+                width = (stage.mouseX - (stage.stageWidth - parent.parent.width + parent.x));
             }
             if ((stage.mouseY - parent.y) > minimumResizeHeight)
             {


Transferred from the Adobe Open Source Subversion Repository

Revision: 19060
Author:   harishs@adobe.com
Date:     2010-12-06T17:34:15.020965Z

Log Message:
-----------
QE notes: Did checkintests, performed full cyclone run. There were 19 failures in mustella report. QE Judy (Mingzhou Gao and Joann Chung Anderson) confirmed that they are known problems.
Doc notes: As part of Sort and Sortfield updates, the asdoc comments were updated to reflect globalization changes.
Bugs: Fixed sdk-28493, 28691,28494, 28345, 28320, 28387, 28314, 28145
Reviewer: Gordon Smith
Tests run: cyclone, checkintests, bugs testfiles
Is noteworthy for integration: Sort and Sortfield updated with globalization support using the new spark globalization sort classes.
Number and CurrencyValidators support national digits and unicode minus symbols.
groupingPattern property dropped for Number and Currency Validators.

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/BasicTests-config.xml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/SortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/NumberValidatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ICollectionView.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ISort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/spark-manifest.xml</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ISortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/BasicTests.mxml</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="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections/Sort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/NumberValidator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/olap/OLAPCube.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/CurrencyValidator.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections/SortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/bundles/en_US/validators.properties</path>
<path kind="dir" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/treeClasses/HierarchicalCollectionView.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ListCollectionView.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/GlobalizationUtils.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/olap/DefaultCubeImpl.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/spark/scripts/SortTestScript.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionView.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/Sort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ModifiedCollectionView.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/spark/views/SortTests.mxml</path>

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

--- frameworks/projects/advancedgrids/src/mx/olap/OLAPCube.as
+++ frameworks/projects/advancedgrids/src/mx/olap/OLAPCube.as
@@ -24,7 +24,7 @@
 import mx.collections.ArrayCollection;
 import mx.collections.ICollectionView;
 import mx.collections.IList;
-import mx.collections.Sort;
+import mx.collections.ISort;
 import mx.core.mx_internal;
 import mx.events.CubeEvent;
 import mx.resources.ResourceManager;
@@ -156,7 +156,7 @@
     private var prepare:Boolean = false;

     //saved sort property of the source dataProvider.
-    private var oldSort:Sort;
+    private var oldSort:ISort;

     // index of the dimension being processed.
     private var dimIndex:int = 0;


Transferred from the Adobe Open Source Subversion Repository

Revision: 3605
Author:   shodgson@adobe.com
Date:     2008-10-13T22:51:11.374492Z

Log Message:
-----------
Removed [ExcludeClass] metadata from several classes per doc request.

Bug: LCDS-386 - Remove [ExcludeClass] from several classes
QA: No
Doc: Yes
Checkintests Pass: Yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/ISOAPDecoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/XMLLoadEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/IXMLEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/ISOAPEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/WSDLLoadEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/IXMLDecoder.as</path>

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

--- frameworks/projects/rpc/src/mx/rpc/events/XMLLoadEvent.as
+++ frameworks/projects/rpc/src/mx/rpc/events/XMLLoadEvent.as
@@ -13,8 +13,6 @@
 {

 import flash.events.Event;
-
-[ExcludeClass]

 /**
  * The XMLLoadEvent class is a base class for events that are dispatched when an RPC service


Transferred from the Adobe Open Source Subversion Repository

Revision: 11954
Author:   klin@adobe.com
Date:     2009-11-18T21:21:21.571419Z

Log Message:
-----------
Fix for https://bugs.adobe.com/jira/browse/SDK-24177. ScrollBar and Slider implementations were not taking into account the case of when the thumb and track had different parents. I've added logic to convert the position from the track's coordinates to global coordinates and then to the thumb's parent's coordinates.

QE notes: No
Doc notes: No
Bugs: SDK-24177
Reviewer: Glenn
Tests run: checkintests, ScrollBar, Slider
Is noteworthy for integration: Yes, ScrollBars should work correctly if thumb and track are in separate groups

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HScrollBar.as</path>

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

--- frameworks/projects/spark/src/spark/components/HSlider.as
+++ frameworks/projects/spark/src/spark/components/HSlider.as
@@ -137,8 +137,15 @@

         var thumbRange:Number = track.getLayoutBoundsWidth() - thumb.getLayoutBoundsWidth();
         var range:Number = maximum - minimum;
-        var thumbPos:Number = (range > 0) ? ((pendingValue - minimum) / range) * thumbRange : 0;
-        thumb.setLayoutBoundsPosition(Math.round(track.getLayoutBoundsX() + thumbPos), thumb.getLayoutBoundsY());
+
+        // calculate new thumb position.
+        var thumbPosTrackX:Number = (range > 0) ? ((pendingValue - minimum) / range) * thumbRange : 0;
+
+        // convert to parent's coordinates.
+        var thumbPos:Point = track.localToGlobal(new Point(thumbPosTrackX, 0));
+        var thumbPosParentX:Number = thumb.parent.globalToLocal(thumbPos).x;
+
+        thumb.setLayoutBoundsPosition(Math.round(thumbPosParentX), thumb.getLayoutBoundsY());
     }