FLEX-20370 Check min and max year before setting selected date

--- frameworks/projects/mx/src/mx/controls/DateField.as
+++ frameworks/projects/mx/src/mx/controls/DateField.as
@@ -1860,7 +1860,7 @@
             return;

         selectedDateSet = true;
-        _selectedDate = scrubTimeValue(value) as Date;
+        checkYearSetSelectedDate(scrubTimeValue(value) as Date);
         updateDateFiller = true;
         selectedDateChanged = true;

@@ -2336,6 +2336,20 @@
     {
         displayDropdown(false);
     }
+
+	private function checkYearSetSelectedDate(value:Date):void {
+		if (value != null)
+		{
+			var year:int = value.getFullYear();
+
+			if (year >= _minYear && year <= _maxYear)
+				_selectedDate = value;
+		}
+		else
+		{
+			_selectedDate = null;
+		}
+	}

     /**
      *  @private
@@ -2371,7 +2385,7 @@
         if (show)
         {
             if (_parseFunction != null)
-                _selectedDate = _parseFunction(text, formatString);
+                checkYearSetSelectedDate(_parseFunction(text, formatString));
             lastSelectedDate = _selectedDate;
             selectedDate_changeHandler(triggerEvent);

@@ -2569,7 +2583,7 @@
         super.focusOutHandler(event);

         if (_parseFunction != null)
-            _selectedDate = _parseFunction(text, formatString);
+            checkYearSetSelectedDate(_parseFunction(text, formatString));

         selectedDate_changeHandler(event);
     }
@@ -2606,14 +2620,14 @@
         {
             if (showingDropdown)
             {
-                _selectedDate = _dropdown.selectedDate;
+               checkYearSetSelectedDate(_dropdown.selectedDate);
                 displayDropdown(false, event);
                 event.stopPropagation();
             }
             else if (editable)
             {
                 if (_parseFunction != null)
-                    _selectedDate = _parseFunction(text, formatString);
+                  checkYearSetSelectedDate(_parseFunction(text, formatString));
             }
             selectedDate_changeHandler(event);
         }
@@ -2675,7 +2689,7 @@

         var inputDate:Date = _parseFunction(text, formatString);
         if (inputDate)
-            _selectedDate = inputDate;
+           checkYearSetSelectedDate(inputDate);
     }

     //--------------------------------------------------------------------------
@@ -2714,7 +2728,7 @@
         if (ObjectUtil.dateCompare(_selectedDate, dropdown.selectedDate) == 0)
             return;

-        _selectedDate = dropdown.selectedDate;
+        checkYearSetSelectedDate(dropdown.selectedDate);

         if (_selectedDate)
             dateFiller(_selectedDate);


Premature Termination of Livestream Fix Fixed an issue that would cause livestreams to prematurely end if a request for a segment near the end of the current livestream manifest returned a 404 error. Though I may have fixed this with the last commit, but I was mistaken.

--- HLSPlugin/src/com/kaltura/hls/HLSIndexHandler.as
+++ HLSPlugin/src/com/kaltura/hls/HLSIndexHandler.as
@@ -480,6 +480,9 @@
 			fileHandler.segmentId = lastSegmentIndex;
 			fileHandler.key = getKeyForIndex( i );

+			if (!resource.manifest.streamEnds)
+				return new HTTPStreamRequest (HTTPStreamRequestKind.LIVE_STALL);
+
 			return new HTTPStreamRequest(HTTPStreamRequestKind.DONE);
 		}


XIFF-94: Recommended Order of Stream Feature Negotiation

--- src/org/igniterealtime/xiff/core/XMPPConnection.as
+++ src/org/igniterealtime/xiff/core/XMPPConnection.as
@@ -120,19 +120,15 @@
 		public static const STREAM_TYPE_FLASH_TERMINATED:uint = 3;

 		/**
-		 * @private
-		 *
 		 * The types of SASL mechanisms available.
+		 *
+		 *
By default, only Anonymous and DigestMD5 are enabled.

 		 * @see org.igniterealtime.xiff.auth.Anonymous
 		 * @see org.igniterealtime.xiff.auth.DigestMD5
-		 * @see org.igniterealtime.xiff.auth.External
-		 * @see org.igniterealtime.xiff.auth.Plain
-		 */
-		protected static const SASL_MECHANISMS:Object = {
+		 */
+		protected const saslMechanisms:Object = {
 			"ANONYMOUS": Anonymous,
-			"DIGEST-MD5": DigestMD5,
-			"EXTERNAL": External,
-			"PLAIN": Plain
+			"DIGEST-MD5": DigestMD5
 		};

 		/**
@@ -151,7 +147,6 @@
 		protected var openingStreamTag:String;

 		/**
-		 * @private
 		 * Depending of the STREAM_TYPE_* used in the connect() method,
 		 * this variable will contain a matching closing element for it.
 		 * parseDataReceived() method will use this value.
@@ -371,29 +366,24 @@
 		}

 		/**
-		 * Remove a SASL mechanism.
-		 *
-		 * TODO: Combine to extension disabling..
-		 *
-		 *
-		 * @param	name
-		 */
-		public static function disableSASLMechanism( name:String ):void
-		{
-			SASL_MECHANISMS[ name ] = null;
-		}
-
-		/**
-		 * Add a SASL mechanism.
-		 *
-		 * TODO: Combine to extension enabling..
+		 * Add a SASL mechanism available for this connection
 		 *
 		 * @param	name
 		 * @param	authClass
 		 */
-		public static function registerSASLMechanism( name:String, authClass:Class ):void
-		{
-			SASL_MECHANISMS[ name ] = authClass;
+		public function enableSASLMechanism( name:String, authClass:Class ):void
+		{
+			saslMechanisms[ name.toUpperCase() ] = authClass;
+		}
+
+		/**
+		 * Remove a SASL mechanism from this connection
+		 *
+		 * @param	name
+		 */
+		public function disableSASLMechanism( name:String ):void
+		{
+			saslMechanisms[ name.toUpperCase() ] = null;
 		}

 		/**
@@ -684,11 +674,10 @@
 		}

 		/**
-		 * @private
-		 * Use the authentication which is first in the list (SASL_MECHANISMS) if possible.
+		 * Use the authentication which is first in the list (saslMechanisms) if possible.
 		 *
 		 * @param	mechanisms
-		 * @see #SASL_MECHANISMS
+		 * @see #saslMechanisms
 		 */
 		protected function configureAuthMechanisms( mechanisms:XML ):void
 		{
@@ -698,7 +687,7 @@
 			{
 				var authName:String = mechanism.toString();

-				AuthClass = SASL_MECHANISMS[ authName ];
+				AuthClass = saslMechanisms[ authName ] as Class;

 				if ( useAnonymousLogin )
 				{
@@ -727,6 +716,9 @@
 		}

 		/**
+		 * Zlib is the most common and the one which is required to be implemented in case
+		 * Stream Compression is used.
+		 *
 		 *
Ask the server to enable Zlib compression of the stream.

 		 *
Supported types in XMPP are zlib and lzw.

 		 *
XIFF however only supports zlib and only after the Adler32 checksum is somehow implemented.

@@ -763,7 +755,7 @@
 		}

 		/**
-		 * @private
+		 * Runs after binding
 		 */
 		protected function establishSession():void
 		{
@@ -920,10 +912,10 @@
 		protected function serviceDiscoveryResponce(to:EscapedJID, id:String):void
 		{
 			var iq:IQ = new IQ(to, IQ.TYPE_RESULT, id);
-			// now get NS from each enabled extension...
 			var names:Array = ExtensionClassRegistry.getNamespaces();
 			var ext:InfoDiscoExtension = new InfoDiscoExtension();
 			ext.addFeatures(names);
+			iq.addExtension(ext);
 			send(iq);

 			// Two kind of error might be needed to send:
@@ -962,18 +954,6 @@

 		/**
 		 * Calls a appropriate parser base on the nodeName.
-		 *
-		 *
The XMPP RFCs define an ordering for the features defined therein, namely:

-		 *

-		 *
TLS

-		 *
In-band registration, if registration needed

-		 *
SASL

-		 *
Stream compression, if used

-		 *
Resource binding

-		 *

-		 *
-		 * @param	node
-		 * @see http://xmpp.org/extensions/xep-0170.html
 		 */
 		protected function handleNodeType( node:XML ):void
 		{
@@ -1221,64 +1201,66 @@
 		 *

 		 *

 		 *
+		 *
The XMPP RFCs define an ordering for the features defined therein, namely:

+		 *

+		 *
TLS, requires the use of XMPPTLSConnection

+		 *
In-band registration, if registration needed

+		 *
SASL

+		 *
Stream compression, if used

+		 *
Resource binding

+		 *

+		 *
 		 * @param	node
-		 *
 		 * @see http://xmpp.org/registrar/stream-features.html
+		 * @see http://xmpp.org/extensions/xep-0170.html
 		 */
 		protected function handleStreamFeatures( node:XML ):void
 		{
-			if ( !loggedIn )
-			{
-				for each ( var feature:XML in node.children() )
+			for each ( var feature:XML in node.children() )
+			{
+				var localName:String = feature.localName();
+
+				switch (localName)
 				{
-					var localName:String = feature.localName();
-
-					switch (localName)
-					{
-						case "amp":
-							break;
-						case "compression":
-							// zlib is the most common and the one which is required to be implemented.
-							if ( _compress )
-							{
-								configureStreamCompression();
-							}
-							break;
-						case "auth":
-							break;
-						case "register":
-							break;
-						case "bind":
-							break;
-						case "mechanisms":
+					case "starttls":
+						handleStreamTLS( feature ); // Checks for 'required'
+						break;
+					case "register":
+						// In Band Registration, if enabled.... TODO
+						break;
+					case "mechanisms":
+						if ( !loggedIn )
+						{
 							configureAuthMechanisms( feature );
-							break;
-						case "session":
-							break;
-						case "starttls":
-							handleStreamTLS( feature );
-							break;
-						case "sm":
-							break;
-					}
+							beginAuthentication();
+						}
+						break;
+					case "compression":
+						if ( (_compress && !compressionNegotiated) && loggedIn )
+						{
+							configureStreamCompression();
+						}
+						break;
+					case "bind":
+						// compression needed, done? else auth done?
+						if ( ((_compress && compressionNegotiated) || !_compress) && loggedIn )
+						{
+							bindConnection();
+						}
+						break;
+					case "amp":
+						// Advanced Message Processing. Coming in XIFF 3.2.0
+						break;
+					case "auth":
+						// Non-SASL Authentication. Not supported
+						break;
+					case "session":
+						// Session Establishment. Done after successful bind
+						break;
+					case "sm":
+						// Stream Management. Not supported
+						break;
 				}
-
-				if ( authenticationReady )
-				{
-					// TODO: Why is the username required here but it is not used at the backend?
-					if ( useAnonymousLogin || ( username != null && username.length > 0 ) )
-					{
-						beginAuthentication();
-					}
-					else
-					{
-						// How to inform the user of the need for in-band registration?
-					}
-				}
-			}
-			else
-			{
-				bindConnection();
 			}
 		}

@@ -1291,23 +1273,21 @@
 		{
 			if ( node.hasOwnProperty("required") )
 			{
-				// No TLS support yet
-				// policy-violation might be more proper condition...
-				dispatchError( "tls-required", "The server requires TLS. Please use XMPPTLSConnection.", "cancel", 501 );
+				// No TLS support in this class
+				dispatchError( "policy-violation", "The server requires TLS. Please use XMPPTLSConnection.", "cancel", 501 );
 				disconnect();
 				return;
 			}
 		}

 		/**
-		 * @private
-		 * This fires the standard dispatchError method. need to add the appropriate error code
+		 * This fires the standard dispatchError method
 		 *
 		 * @param	event
 		 */
 		protected function onIOError( event:IOErrorEvent ):void
 		{
-			dispatchError( "service-unavailable", "Service Unavailable", "cancel", 503 );
+			dispatchError( "service-unavailable", "Service Unavailable", "cancel" );
 		}

 		/**
@@ -1385,8 +1365,6 @@

 			if ( xmlData != null )
 			{
-
-
 				// Add default namespace which is not usually included in XML from the server
 				xmlData.setNamespace( XMLStanza.DEFAULT_NS );
 				xmlData.normalize();
@@ -1612,7 +1590,7 @@

 		/**
 		 * Get the total count of the received bytes in the current session.
-		 * Mainly useful for tracking network traffic.
+		 *
Mainly useful for tracking network traffic.

 		 */
 		public function get incomingBytes():uint
 		{
@@ -1621,8 +1599,8 @@

 		/**
 		 * Gets the fully qualified unescaped JID of the user.
-		 * A fully-qualified JID includes the resource. A bare JID does not.
-		 * To get the bare JID, use the bareJID property of the UnescapedJID.
+		 *
A fully-qualified JID includes the resource. A bare JID does not.
+		 * To get the bare JID, use the bareJID property of the UnescapedJID.

 		 *
 		 * @return The fully qualified unescaped JID
 		 * @see	org.igniterealtime.xiff.core.UnescapedJID#bareJID
@@ -1654,7 +1632,8 @@
 		}

 		/**
-		 * The port to use when connecting. The default XMPP port is 5222.
+		 * The port to use when connecting.
+		 * @default 5222
 		 */
 		public function get port():uint
 		{
@@ -1774,6 +1753,7 @@

 		/**
 		 * Connection is ready to authenticate
+		 * Should not be used as this does not comply with correct Feature Handling Order
 		 */
 		protected function get authenticationReady():Boolean
 		{


Sanity check added

Sanity check added

--- Arguments/src/classes/UserData.as
+++ Arguments/src/classes/UserData.as
@@ -98,6 +98,7 @@
 			request.url = Configure.lookup("baseURL") + "login.php";
 			request.data = new URLVariables("username="+userName+"&pass_hash="+ com.adobe.crypto.MD5.hash(passHash + RegisterPanel.salt));
 			passHashStr = MD5.hash(passHash + RegisterPanel.salt);
+			trace("SANITY CHECK- before: " + passHash + " after: " + passHashStr);
 			request.method = URLRequestMethod.GET;
 			urlLoader.addEventListener(Event.COMPLETE,function(event:Event):void{verifyUser(event,object)});
 			urlLoader.addEventListener(IOErrorEvent.IO_ERROR,function(event:IOErrorEvent):void{errorHandler(event,object)});


normalize keyframe rotations

normalize keyframe rotations

We want to rotate the shortest distance between two angles (i.e.
rotation <= PI)

--- exporter/src/main/as/flump/xfl/XflLayer.as
+++ exporter/src/main/as/flump/xfl/XflLayer.as
@@ -3,6 +3,7 @@

 package flump.xfl {

+import flump.mold.KeyframeMold;
 import flump.mold.LayerMold;

 import com.threerings.util.XmlUtil;
@@ -20,6 +21,19 @@
             layer.keyframes.push(XflKeyframe.parse(lib, layer.location, frameEl, flipbook));
         }
         if (layer.keyframes.length == 0) lib.addError(layer, ParseError.INFO, "No keyframes on layer");
+
+        // normalize rotations, so that we always rotate the shortest distance between
+        // two angles (we don't want to rotate more than Math.PI)
+        // TODO: support keyframes with rotations >= TWO_PI
+        for (var ii :int = 0; ii < layer.keyframes.length - 1; ++ii) {
+            var kf :KeyframeMold = layer.keyframes[ii];
+            var nextKf :KeyframeMold = layer.keyframes[ii+1];
+            if (kf.rotation + Math.PI < nextKf.rotation) {
+                nextKf.rotation -= Math.PI * 2;
+            } else if (kf.rotation - Math.PI > nextKf.rotation) {
+                nextKf.rotation += Math.PI * 2;
+            }
+        }
         return layer;
     }


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as
@@ -131,6 +131,9 @@
     //
     //--------------------------------------------------------------------------

+    /**
+     * @private
+     */
     override protected function drawBackground(unscaledWidth:Number, unscaledHeight:Number):void
     {
         // omit super.drawBackground() to drawRect instead


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

--- frameworks/projects/charts/src/mx/core/Version.as
+++ frameworks/projects/charts/src/mx/core/Version.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2009 Adobe Systems Incorporated
-//  All Rights Reserved.
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
 //
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////


Transferred from the Adobe Open Source Subversion Repository

Revision: 22448
Author:   build@adobe.com
Date:     2011-09-08T19:26:12.465737Z

Log Message:
-----------
Version update to 4.6.0

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/airspark/src/spark/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/automation_air/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/automation_spark/src/spark/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/flex-config.xml</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/automation_spark/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/automation/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark_dmv/src/spark/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/rpc/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mx/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/automation_flashflexkit/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/automation_dmv/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/build.properties</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/modules/compiler/src/java/flex2/tools/VersionInfo.java</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/airframework/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/framework/src/mx/core/Version.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/advancedgrids/src/mx/core/Version.as</path>

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

--- frameworks/projects/charts/src/mx/core/Version.as
+++ frameworks/projects/charts/src/mx/core/Version.as
@@ -15,4 +15,4 @@
  *  @private
  *  Version string for this class.
  */
-mx_internal static const VERSION:String = "4.5.2.0";
+mx_internal static const VERSION:String = "4.6.0.0";


Transferred from the Adobe Open Source Subversion Repository

Revision: 144
Author:   proberts@adobe.com
Date:     2008-01-09T22:14:23.214621Z

Log Message:
-----------
Severity: ignore
Description: Docs updates. Added class description for WindowedSystemManager; small change to WindowBackground skin. This is a partial fix for FLEXDOCS-262: Several classes missing class descriptions.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/WindowBackground.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as</path>

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

--- frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as
+++ frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as
@@ -49,6 +49,20 @@

 use namespace mx_internal;

+/**
+ *  The WindowedSystemManager class manages any non-Application windows in a
+ *  Flex-based AIR application. This includes all windows that are instances of
+ *  the Window component or a Window subclass, but not a WindowedApplication
+ *  window. For those windows, the WindowedSystemManager serves the same role
+ *  that a SystemManager serves for a WindowedApplication instance or an
+ *  Application instance in a browser-based Flex application.
+ *
+ *
As this comparison suggests, the WindowedSystemManager class serves
+ *  many roles. For instance, it is the root display object of a Window, and
+ *  manages tooltips, cursors, popups, and other content for the Window.

+ *
+ *  @see mx.managers.SystemManager
+ */
 public class WindowedSystemManager extends MovieClip implements ISystemManager
 {


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

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

 package mx.managers
 {


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

 package spark.automation.tabularData
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 6599
Author:   gosmith@adobe.com
Date:     2009-05-04T20:27:40.909741Z

Log Message:
-----------
RichEditableText and RichEditableText2 are now in the spark.primitives package rather than in spark.components, and RichEditableTextContainerManager is now in spark.primitives.supportClasses rather than in spark.components.supportClasses. This change means that SimpleText, RichText, and RichEditableText are now all together in spark.primitives. They are "primitives" because they aren't skinnable components, even though some extend GraphicElement and some extend UIComponent.

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: Carol

Modified Paths:
--------------
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText.png</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText.as" copyfrom-rev="6590" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/spark-manifest.xml</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText.png" copyfrom-rev="6589" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.png</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/RichEditableTextContainerManager.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText2.as" copyfrom-rev="6589" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText2.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/RichEditableTextContainerManager.as" copyfrom-rev="6589" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/RichEditableTextContainerManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/TextInput.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText.as</path>

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

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

-package spark.components.supportClasses
+package spark.primitives.supportClasses
 {

 import flash.display.BlendMode;
@@ -26,7 +26,7 @@

 import mx.core.mx_internal;

-import spark.components.RichEditableText;
+import spark.primitives.RichEditableText;
 import spark.components.TextSelectionVisibility;

 /**


Fixing subtle bug with StringUtil.ENTIRELY_WHITESPACE. This would return false for zero-length strings where in the majority of use cases it's more convenient and intuitive to return true

--- raw/src/org/yellcorp/lib/core/StringUtil.as
+++ raw/src/org/yellcorp/lib/core/StringUtil.as
@@ -5,7 +5,7 @@
     public static const WHITESPACE:RegExp = /[\s\0]+/g;
     public static const LEADING_WHITESPACE:RegExp = /^[\s\0]+/;
     public static const TRAILING_WHITESPACE:RegExp = /[\s\0]+$/;
-    public static const ENTIRELY_WHITESPACE:RegExp = /^[\s\0]+$/;
+    public static const ENTIRELY_WHITESPACE:RegExp = /^[\s\0]*$/;

     /**


fix LightController.updateDataProvider() to handle LightDataProvider.changed() callback only when necessary


Fixes to logging to avoid registering the same target multiple times.

--- driver/src/main/flex/org/postgresql/log/Log.as
+++ driver/src/main/flex/org/postgresql/log/Log.as
@@ -9,51 +9,67 @@
 		private static var _categoryTargets:Object = {};

 		private static var _targetLevels:Dictionary = new Dictionary();
-		private static var _classToCategory:Dictionary = new Dictionary();
+		private static var _targetFilters:Dictionary = new Dictionary();
+		private static var _classToCategory:Dictionary = new Dictionary(true);

 		public static function getLogger(clazz:Class):ILogger {
 			// TODO: this does not work well for top-level functions like assert, since
 			// getQualifiedClassName returns 'builtin.as$0::MethodClosure'
-			var type:String = flash.utils.getQualifiedClassName(clazz).replace('::', '.');
+			var type:String;
+			if (clazz in _classToCategory) {
+				type = _classToCategory[clazz];
+			} else {
+				type = flash.utils.getQualifiedClassName(clazz).replace('::', '.');
+			}
+
 			_classToCategory[clazz] = type;
 			if (!(type in _categoryLoggers)) {
 				_categoryLoggers[type] = new Logger(type, doLog);
-				_categoryTargets[type] = [];
+				_categoryTargets[type] = new Dictionary();
+				// rescan all targets to see if they match this category
+				for (var target:* in _targetLevels) {
+					addTarget(target, _targetLevels[target], _targetFilters[target]);
+				}
 			}
 			return _categoryLoggers[type];
 		}
+
+		/**
+		 * Add a logging target. Check existing categories to see if they should log to this target.
+		 * Check future categories as well.
+		 */
 		public static function addTarget(target:ILogTarget, level:int, filters:Array=null):void {
 			for (var category:String in _categoryTargets) {
 				if (!filters) {
 					// this is a catch-all target
-					_categoryTargets[category].push(target);
+					_categoryTargets[category][target] = true;
+					//var e:Error = new Error();
+					//trace('adding target for', category, 'from:', e.getStackTrace());
 				} else {
 					for each (var filter:String in filters) {
 						var expr:String = filter.replace('.', '\\.').replace('*', '.*');
 						if (new RegExp('^' + expr).test(category)) {
-							_categoryTargets[category].push(target);
+							_categoryTargets[category][target] = true;
 							break;
 						}
 					}
 				}
 			}
 			_targetLevels[target] = level;
+			_targetFilters[target] = filters;
 		}
 		public static function removeTarget(target:ILogTarget):void {
 			delete _targetLevels[target];
+			delete _targetFilters[target];
+
 			for (var category:String in _categoryTargets) {
-				var targets:Array = _categoryTargets[category];
-				for (var i:int = 0; i < targets.length; i++) {
-					if (targets[i] == target) {
-						targets.splice(i, 1);
-						i--;
-					}
-				}
+				var targets:Dictionary = _categoryTargets[category];
+				delete targets[target];
 			}
 		}
 		private static function doLog(level:int, category:String, message:String):void {
-			var targets:Array = _categoryTargets[category];
-			for each (var target:ILogTarget in targets) {
+			var targets:Dictionary = _categoryTargets[category];
+			for (var target:* in targets) {
 				var targetThreshold:int = _targetLevels[target];
 				if (level >= targetThreshold) {
 					target.handleMessage(level, category, message);
@@ -88,6 +104,7 @@
 				return rest[idx];
 			}
 		});
+		//trace(_cat, 'logging', result);
 		_logMsg(level, _cat, result);
 	}
 	public function fine(message:String, ...rest):void { doLog(LogLevel.FINE, message, rest); }


qnd: merget from MIT branch: add initial bitrate index and current index (if available) to the error message

git-svn-id: 3f608e5a9a704dd448217c0a64c508e7f145cfa1@84130 6b8eccd3-e8c5-4e7d-8186-e12b5326b719

--- plugins/errorNotifiction_plugin/src/com/kaltura/kdpfl/plugin/component/ErrorNotificationMediator.as
+++ plugins/errorNotifiction_plugin/src/com/kaltura/kdpfl/plugin/component/ErrorNotificationMediator.as
@@ -2,13 +2,16 @@
 {
 	import com.kaltura.KalturaClient;
 	import com.kaltura.commands.stats.StatsReportError;
+	import com.kaltura.kdpfl.model.MediaProxy;
 	import com.kaltura.kdpfl.model.ServicesProxy;
 	import com.kaltura.kdpfl.model.type.NotificationType;
+	import com.kaltura.kdpfl.view.media.KMediaPlayerMediator;

 	import flash.net.URLRequestMethod;

 	import org.osmf.events.MediaError;
 	import org.osmf.events.MediaErrorEvent;
+	import org.osmf.media.MediaPlayer;
 	import org.puremvc.as3.interfaces.INotification;
 	import org.puremvc.as3.patterns.mediator.Mediator;

@@ -33,6 +36,7 @@
 		public var resourceUrl:String;

 		private var _kc:KalturaClient;
+		private var _hasStarted:Boolean = false;

 		public function ErrorNotificationMediator(viewComponent:Object = null)
 		{
@@ -48,7 +52,8 @@
 		override public function listNotificationInterests():Array
 		{
 			return  [
-				NotificationType.MEDIA_ERROR
+				NotificationType.MEDIA_ERROR,
+				NotificationType.PLAYER_PLAYED
 			];
 		}

@@ -59,14 +64,29 @@
 		 */
 		override public function handleNotification(note:INotification):void
 		{
-			//notify the server - for troubleshooting
-			if (note.getName() == NotificationType.MEDIA_ERROR) {
-				var data:MediaErrorEvent = note.getBody().errorEvent as MediaErrorEvent;
-				var sendError:StatsReportError = new StatsReportError(NotificationType.MEDIA_ERROR,
-					"resourceUrl: " + resourceUrl +"| Error ID: "+ data.error.errorID +"| Error Message: "+ data.error.message +  "| Stack Trace: " + data.error.getStackTrace());
-				sendError.method = URLRequestMethod.POST;
-
-				_kc.post(sendError);
+			switch (note.getName())
+			{
+				case NotificationType.MEDIA_ERROR:
+					//notify the server - for troubleshooting
+					var player:MediaPlayer = (facade.retrieveMediator(KMediaPlayerMediator.NAME) as KMediaPlayerMediator).player;
+					var data:MediaErrorEvent = note.getBody().errorEvent as MediaErrorEvent;
+					var message:String = "resourceUrl: " + resourceUrl +"| Flavor index : " + player.currentDynamicStreamIndex +"| Error ID: "+ data.error.errorID +"| Error Message: "+ data.error.message +  "| Stack Trace: " + data.error.getStackTrace();
+					//if error occured before first play, send also the initial bitrate index
+					if (!_hasStarted)
+					{
+						message += "| Initial flavor index: " + (facade.retrieveProxy(MediaProxy.NAME) as MediaProxy).startingIndex;
+					}
+
+					var sendError:StatsReportError = new StatsReportError(NotificationType.MEDIA_ERROR, message);
+					sendError.method = URLRequestMethod.POST;
+
+					_kc.post(sendError);
+
+					break;
+				case NotificationType.PLAYER_PLAYED:
+					_hasStarted = true;
+
+					break;

 			}
 		}


Update rootEntityKey label when updating a key attribute

--- collect-flex/collect-flex-client/src/generated/flex/org/openforis/collect/model/proxy/RecordProxy.as
+++ collect-flex/collect-flex-client/src/generated/flex/org/openforis/collect/model/proxy/RecordProxy.as
@@ -62,6 +62,8 @@
 							var f:FieldProxy = a.getField(i);
 							f.value = response.updatedFieldValues.get(i);
 						}
+						parent = getNode(node.parentId) as EntityProxy;
+						parent.updateKeyText();
 					}
 				} else if(node is EntityProxy) {
 					var e:EntityProxy = EntityProxy(node);


Transferred from the Adobe Open Source Subversion Repository

Revision: 17611
Author:   klin@adobe.com
Date:     2010-09-08T19:01:35.509943Z

Log Message:
-----------
Fix for rotation issues with explicit width and explicit height for Catalyst. The issue is that when we try to solve width and height such that the post transform bounds satisfy the layout constraints, we only took into account the measured width/height even when there was an explicit size specified. In the case of rotation, it is possible at times to use the explicit width/height to find a fit. Thus, the fix is to try to find a solution first using the explicit size. If no solution exists, then we relax the constraint on the size and try to find other solutions.

QE notes: No
Doc notes: No
Bugs: SDK-26614
Reviewer: Evtim
Tests run: checkintests, full cyclone
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/LayoutElementUIComponentUtils.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/utils/MatrixUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/Path.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/Ellipse.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/Rect.as</path>

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

--- frameworks/projects/framework/src/mx/core/LayoutElementUIComponentUtils.as
+++ frameworks/projects/framework/src/mx/core/LayoutElementUIComponentUtils.as
@@ -275,6 +275,8 @@
             return obj.x;

         var fitSize:Point = MatrixUtil.fitBounds(width, height, transformMatrix,
+                                                 obj.explicitWidth,
+                                                 obj.explicitHeight,
                                                  getPreferredUBoundsWidth(obj),
                                                  getPreferredUBoundsHeight(obj),
                                                  getMinUBoundsWidth(obj),
@@ -307,6 +309,8 @@
             return obj.y;

         var fitSize:Point = MatrixUtil.fitBounds(width, height, transformMatrix,
+                                                 obj.explicitWidth,
+                                                 obj.explicitHeight,
                                                  getPreferredUBoundsWidth(obj),
                                                  getPreferredUBoundsHeight(obj),
                                                  getMinUBoundsWidth(obj),
@@ -499,6 +503,8 @@
         }

         var fitSize:Point = MatrixUtil.fitBounds(width, height, transformMatrix,
+                                                 obj.explicitWidth,
+                                                 obj.explicitHeight,
                                                  getPreferredUBoundsWidth(obj),
                                                  getPreferredUBoundsHeight(obj),
                                                  getMinUBoundsWidth(obj),


Transferred from the Adobe Open Source Subversion Repository

Revision: 19867
Author:   dloverin@adobe.com
Date:     2011-01-21T18:10:02.842979Z

Log Message:
-----------
Fix jitters in BusyIndicator.

Fix jitters by drawing the spinner on each rotation instead of rotating whole component.
Fix to center spinner.

QE notes: Bitmap compares will fail.
Doc notes: None.
Bugs:
Reviewer: Glenn
Tests run: checkintests
Is noteworthy for integration: No.

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/BusyIndicator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/BusyIndicator.as
@@ -1,7 +1,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
 //  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2010 Adobe Systems Incorporated
+//  Copyright 2011 Adobe Systems Incorporated
 //  All Rights Reserved.
 //
 //  NOTICE: Adobe permits you to use, modify, and distribute this file
@@ -219,15 +219,23 @@

     /**
      *  @private
+     *
+     *  Cached value of the spoke color.
+     */
+    private var spokeColor:uint;
+
+    //--------------------------------------------------------------------------
+    //
+    //  Private Properties
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
      *  Cache the last value of applicationDPI.
      */
     private var _applicationDPI:Number;

-    //--------------------------------------------------------------------------
-    //
-    //  Private Properties
-    //
-    //--------------------------------------------------------------------------
     /**
      *  @private
      *
@@ -288,17 +296,6 @@

             effectiveVisibilityChanged = false;
         }
-    }
-
-    /**
-     *  @private
-     */
-    override public function invalidateDisplayList():void
-    {
-        super.invalidateDisplayList();
-
-        if (currentRotation > 0)
-            postLayoutTransformOffsets = new TransformOffsets();
     }

     /**
@@ -413,34 +410,6 @@
         if (diameter % 2 != 0)
             diameter--;

-        diameter = spinnerDiameterFixup(diameter);
-
-        return diameter;
-    }
-
-    /**
-     *  @private
-     *
-     *  Modify the spinnerDiameter to avoid diameters that end up causing the
-     *  spinner to jitter. This will cause us to reuse the spokeWidth and
-     *  spokeHeight of the previous diameter size.
-     */
-    private function spinnerDiameterFixup(diameter:Number):Number
-    {
-        if (applicationDPI == DPIClassification.DPI_240)
-        {
-            // For diameter 30, use the settings for diameter 28 (29 is the same)
-            if (diameter >= 30 && diameter <= 33)
-                diameter = 28;
-        }
-        else if (applicationDPI == DPIClassification.DPI_160)
-        {
-            if (diameter == 24)
-                diameter = 22;
-            else if (diameter == 28)
-                diameter = 26;
-        }
-
         return diameter;
     }

@@ -457,7 +426,8 @@
             stopRotation();

         spinnerDiameter = diameter;
-
+        spokeColor = getStyle("symbolColor");
+
         drawSpinner();

         if (isRotating)
@@ -471,8 +441,6 @@
      */
     mx_internal function drawSpinner():void
     {
-
-        var spokeColor:uint = getStyle("symbolColor");
         var g:Graphics = graphics;
         var spinnerRadius:int = spinnerDiameter / 2;
         var spinnerWidth:int = spinnerDiameter;
@@ -480,65 +448,10 @@
         var insideDiameter:Number = spinnerDiameter - (spokeHeight * 2);
         var spokeWidth:Number = insideDiameter / 5;
         var eHeight:Number = spokeWidth / 2;
-        var center:Number = spinnerRadius - 1;
         var spinnerPadding:Number = 0;
-
-
-        // Modify the spoke width and height for various DPI and spinnerDiameter
-        // combinations. These combinations cause the spinner to jitter when
-        // it is rotated. Override the calculated spokeHeight and spokeWidth
-        // with hard-coded values.
-        if (applicationDPI == DPIClassification.DPI_240)
-        {
-            if (spinnerDiameter >= 28 && spinnerDiameter <= 29)
-            {
-                spokeHeight = 8;
-                spokeWidth = 2.5;
-            }
-            else if (spinnerDiameter >= 34 && spinnerDiameter <= 35)
-            {
-                spokeHeight = 9;
-                spokeWidth = 4;
-            }
-            else if (spinnerDiameter >= 36 && spinnerDiameter <= 39)
-            {
-                spokeWidth += 0.5;
-            }
-
-        }
-        else if (applicationDPI == DPIClassification.DPI_160)
-        {
-            if (spinnerDiameter == 20)
-            {
-                spokeHeight = 6;
-                spokeWidth = 1.4;
-                spinnerPadding = 0.5;
-            }
-        }
-        else if (applicationDPI == DPIClassification.DPI_320)
-        {
-            if (spinnerDiameter == 28)
-            {
-                spokeWidth = 2;
-            }
-            else if (spinnerDiameter == 36)
-            {
-                spokeWidth = 2;
-                spinnerPadding = 1;
-            }
-            else if (spinnerDiameter == 40)
-            {
-                spokeWidth = 3;
-                spinnerPadding = 1;
-            }
-            else if (spinnerDiameter == 48)
-            {
-                spokeWidth = 5;
-            }
-        }
-
-//        // Undocumented styles to modified the spokeWidth
-//        // and spokeHeight.
+
+        // Undocumented styles to modified the spokeWidth
+        // and spokeHeight.
 //        if (getStyle("spokeWidth") !== undefined)
 //        {
 //            spokeWidth = getStyle("spokeWidth");
@@ -560,40 +473,40 @@
         g.clear();

         // 1
-        drawSpoke(0.20, 300, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.20, currentRotation + 300, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 2
-        drawSpoke(0.25, 330, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.25, currentRotation + 330, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 3
-        drawSpoke(0.30, 0, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.30, currentRotation, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 4
-        drawSpoke(0.35, 30, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.35, currentRotation + 30, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 5
-        drawSpoke(0.40, 60, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.40, currentRotation + 60, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 6
-        drawSpoke(0.45, 90, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.45, currentRotation + 90, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 7
-        drawSpoke(0.50, 120, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.50, currentRotation + 120, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 8
-        drawSpoke(0.60, 150, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.60, currentRotation + 150, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 9
-        drawSpoke(0.70, 180, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.70, currentRotation + 180, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 10
-        drawSpoke(0.80, 210, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.80, currentRotation + 210, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 11
-        drawSpoke(0.90, 240, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(0.90, currentRotation + 240, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);

         // 12
-        drawSpoke(1.0, 270, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
+        drawSpoke(1.0, currentRotation + 270, spokeWidth, spokeHeight, spokeColor, spinnerRadius, eHeight, spinnerPadding);
     }

@@ -624,8 +537,8 @@
         var insidePoint:Point = new Point();

         g.lineStyle(spokeWidth, spokeColor, spokeAlpha, false, LineScaleMode.NORMAL, CapsStyle.ROUND);
-        outsidePoint = calculatePointOnCircle(spinnerRadius - 1, spinnerRadius - eHeight - spinnerPadding, degrees);
-        insidePoint = calculatePointOnCircle(spinnerRadius - 1, spinnerRadius - spokeHeight + eHeight - spinnerPadding, degrees);
+        outsidePoint = calculatePointOnCircle(spinnerRadius, spinnerRadius - eHeight - spinnerPadding, degrees);
+        insidePoint = calculatePointOnCircle(spinnerRadius, spinnerRadius - spokeHeight + eHeight - spinnerPadding, degrees);
         g.moveTo(outsidePoint.x, outsidePoint.y);
         g.lineTo(insidePoint.x,  insidePoint.y);

@@ -837,16 +750,11 @@
      */
     private function timerHandler(event:TimerEvent):void
     {
-        var spinnerRadius:int = (spinnerDiameter / 2);
-        var transformCenter:Vector3D = new Vector3D(spinnerRadius - 1, spinnerRadius - 1);
-
         currentRotation += 30;
-        var rotation3D:Vector3D = new Vector3D(0, 0, currentRotation);
         if (currentRotation >= 360)
             currentRotation = 0;

-        transformAround(transformCenter, null, null, null, null, rotation3D, null, false);
-
+        drawSpinner();
         event.updateAfterEvent();
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 5099
Author:   gauravj@adobe.com
Date:     2009-02-27T03:43:02.639229Z

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

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

Modified Paths:
--------------
147 paths were modified

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

--- frameworks/projects/rpc/src/mx/messaging/errors/InvalidDestinationError.as
+++ frameworks/projects/rpc/src/mx/messaging/errors/InvalidDestinationError.as
@@ -25,6 +25,12 @@
  *
Producer.send() if no destination is specified for the Producer or message to send.

  *
Consumer.subscribe() if no destination is specified for the Consumer.

  *

+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 public class InvalidDestinationError extends ChannelError
 {
@@ -38,6 +44,12 @@
      *  Constructs a new instance of an InvalidDestinationError with the specified message.
      *
      *  @param msg String that contains the message that describes this InvalidDestinationError.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function InvalidDestinationError(msg:String)
     {


Send arrays in the parameters.

Send arrays in the parameters.

--- src/flails/request/HTTPClient.as
+++ src/flails/request/HTTPClient.as
@@ -116,23 +116,35 @@
     }

     private function paramsToVariables(variables:URLVariables, params:Object, prefix:String = null):void {
-      for (var param:String in params) {
-        var name:String;
+      if (params is Array) {
+        for (var i:int = 0; i < params.length; i++) {
+          if (!(params[i] is String) && !(params[i] is Number)) {
+            trace("param " + i + " is an object (" + params[i].constructor + ")");
+            paramsToVariables(variables, params[i], prefix + "[" + i + "]");
+          } else {
+            trace("value for param" + i + " is " + params[param]);
+            variables[prefix + "[" + i + "]"] = params[i];
+          }
+        }
+      } else {
+        for (var param:String in params) {
+          var name:String;
+
+          if (prefix) {
+            name = prefix + "[" + param + "]";
+          } else {
+            name = param;
+          }

-        if (prefix) {
-          name = prefix + "[" + param + "]";
-        } else {
-          name = param;
-        }
+          trace("setting variable " + name);

-        trace("setting variable " + name);
-
-        if (!(params[param] is String) && !(params[param] is Number)) {
-          trace("param " + param + " is an object (" + params[param].constructor + ")");
-          paramsToVariables(variables, params[param], name);
-        } else {
-          trace("value for param" + param + " is " + params[param]);
-          variables[name] = params[param];
+          if (!(params[param] is String) && !(params[param] is Number)) {
+            trace("param " + param + " is an object (" + params[param].constructor + ")");
+            paramsToVariables(variables, params[param], name);
+          } else {
+            trace("value for param" + param + " is " + params[param]);
+            variables[name] = params[param];
+          }
         }
       }
     }


ListBase now changes selectedIndex appropriately when items are added to the dataProvider.

--- src/org/openPyro/controls/listClasses/ListBase.as
+++ src/org/openPyro/controls/listClasses/ListBase.as
@@ -84,7 +84,7 @@
 				handleItemsRemoved(event)
 			}
 			else if(event.kind == CollectionEventKind.ADD){
-				handleItemsAdded(event.delta);
+				handleItemsAdded(event);
 			}
 		}

@@ -128,7 +128,10 @@

 		}

-		protected function handleItemsAdded(items:Array):void{
+		protected function handleItemsAdded(event:CollectionEvent):void{
+			if(event.location < _selectedIndex){
+				selectedIndex = _selectedIndex+event.delta.length;
+			}
 			needsReRendering = true;
 			displayListInvalidated = true;
 			invalidateSize();


Move `HLSSettings` import into logging block.

This was breaking release builds for me.

--- src/org/mangui/hls/demux/Nalu.as
+++ src/org/mangui/hls/demux/Nalu.as
@@ -3,9 +3,9 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  package org.mangui.hls.demux {

-    import org.mangui.hls.HLSSettings;
     import flash.utils.ByteArray;
     CONFIG::LOGGING {
+    import org.mangui.hls.HLSSettings;
     import org.mangui.hls.utils.Log;
     }


better handling of error so that error codes from compiler executable are handled correctly

--- source/ASConfigC.as
+++ source/ASConfigC.as
@@ -433,10 +433,17 @@
 					encoding: "utf8"
 				});
 			}
-			catch(error:Error)
-			{
-				console.error("Failed to execute compiler. " + error);
-				process.exit(1);
+			catch(error:Object)
+			{
+				if(error.status === null)
+				{
+					//this means something went wrong running the executable
+					console.error("Failed to execute compiler: " + error.code);
+					process.exit(1);
+				}
+				//while this means there was an error code from the executable,
+				//probably from compilation errors
+				process.exit(error.status);
 			}
 		}
 	}


Show the debug window output always in client mode.

--- swfcat.as
+++ swfcat.as
@@ -96,7 +96,7 @@

             puts("Parameters loaded.");

-            if (this.loaderInfo.parameters["debug"])
+            if (this.loaderInfo.parameters["debug"] || this.loaderInfo.parameters["client"])
                 addChild(output_text);
             else
                 addChild(badge);


We needs us a ref to the controller in the base TestCase class.

--- flash/org/windmill/TestCase.as
+++ flash/org/windmill/TestCase.as
@@ -21,6 +21,7 @@
   public class TestCase extends Sprite {
     public var asserts:* = WMAssert;
     public var waits:* = WMWait;
+    public var controller:* = WMController;
     // Get a reference to the Stage in the base class
     // before the tests actually load so tests can all
     // reference it


fixed "." and "*" operators on SceneIterator xpath evaluator

U SceneIterator.selectChildren() to accept a type filter as a String

--- src/aerys/minko/scene/SceneIterator.as
+++ src/aerys/minko/scene/SceneIterator.as
@@ -105,29 +105,25 @@
 			}

 			// parse
-			while (token = getToken())
+			while (token)
 			{
 				switch (token)
 				{
-					case "." :
+					case '//' :
 						nextToken(token);
+						selectDescendants();
 						break ;
-					case "//" :
-						selectDescendants();
+					case '/' :
 						nextToken(token);
-						break ;
-					case "/" :
-//						selectChildren();
-						nextToken(token);
-						break ;
-					case ".." :
-						selectParents();
-						nextToken(token);
+						selectChildren();
 						break ;
 					default :
-						parseNodeType();
+						nextToken(token);
+						parseNodeType(token);
 						break ;
 				}
+
+				token = getToken();
 			}
 		}

@@ -162,8 +158,6 @@
 			if (doNext)
 				nextToken(token);

-//			trace(token);
-
 			return token;
 		}

@@ -206,9 +200,11 @@
 			_path = _path.substring(_path.indexOf(token) + token.length);
 		}

-		private function selectChildren() : void
+		private function selectChildren(typeName : String = null) : void
 		{
 			var selection : Vector.<ISceneNode> = _selection.slice();
+
+			typeName = typeName.toLowerCase();

 			_selection.length = 0;
 			for each (var node : ISceneNode in selection)
@@ -219,10 +215,16 @@
 					var numChildren : int 	= group.numChildren;

 					for (var i : int = 0; i < numChildren; ++i)
-						_selection.push(group.getChildAt(i));
+					{
+						var child 		: ISceneNode 	= group.getChildAt(i);
+						var childType 	: String 		= getQualifiedClassName(child).split('::')[1];
+
+						if (childType.toLowerCase() == typeName)
+							_selection.push(child);
+					}
 				}
-				else
-					_selection.push(node);
+//				else
+//					_selection.push(node);
 			}
 		}

@@ -255,39 +257,27 @@

 			_selection.length = 0;
 			for each (var node : ISceneNode in selection)
-				_selection.push(node.parent);
-		}
-
-		private function parseNodeType() : void
-		{
-			var nodeType 	: String 				= getToken(true).toLowerCase();
-			var numNodes	: int					= _selection.length;
-			var selection	: Vector.<ISceneNode>	= _selection.slice();
-
-			if (nodeType == "*")
-				selectChildren();
+			{
+				if (node.parent)
+					_selection.push(node.parent);
+				else
+					_selection.push(node);
+			}
+		}
+
+		private function parseNodeType(nodeType : String) : void
+		{
+			if (nodeType == '*' || nodeType == '.')
+			{
+				// nothing
+			}
+			else if (nodeType == '..')
+			{
+				selectParents();
+			}
 			else
 			{
-				_selection.length = 0;
-				for (var i : int = numNodes - 1; i >= 0; --i)
-				{
-					var node : ISceneNode = selection[i];
-
-					if (node is Group)
-					{
-						var group : Group	= node as Group;
-						var numChildren : int = group.numChildren;
-
-						for (var j : int = 0; j < numChildren; ++j)
-						{
-							var child 		: ISceneNode 	= group.getChildAt(j);
-							var childType 	: String 		= getQualifiedClassName(child).split('::')[1];
-
-							if (childType.toLowerCase() == nodeType)
-								_selection.push(child);
-						}
-					}
-				}
+				selectChildren(nodeType);
 			}

 			// apply predicates
@@ -314,8 +304,13 @@

 			if (index.toString() == propertyName)
 			{
-				_selection[0] = _selection[index];
-				_selection.length = 1;
+				if (index < _selection.length)
+				{
+					_selection[0] = _selection[index];
+					_selection.length = 1;
+				}
+				else
+					_selection.length = 0;
 			}
 			else
 			{


Return the most derived type for the box versions instead of Container. copy&paste error.

git-svn-id: b675b909355d5cf946977f44a8ec5a6ceb3782e4@860 ed5b42cb-e716-0410-a449-f6a68f950b19

--- src/as/com/threerings/flex/FlexUtil.as
+++ src/as/com/threerings/flex/FlexUtil.as
@@ -132,19 +132,19 @@
     /**
      * Creates a new HBox container and adds the given children to it.
      */
-    public static function createHBox (...children) :Container
+    public static function createHBox (...children) :HBox
     {
         children.unshift(HBox);
-        return createContainer.apply(null, children);
+        return createContainer.apply(null, children) as HBox;
     }

     /**
      * Creates a new VBox container and adds the given children to it.
      */
-    public static function createVBox (...children) :Container
+    public static function createVBox (...children) :VBox
     {
         children.unshift(VBox);
-        return createContainer.apply(null, children);
+        return createContainer.apply(null, children) as VBox;
     }

     /**


comment fix.

comment fix.

git-svn-id: a3e1eb16dde062992de22c830ed8045c8013209a@467 c613c5cb-e716-0410-b11b-feb51c14d237

--- src/as/com/threerings/ezgame/EZGameControl.as
+++ src/as/com/threerings/ezgame/EZGameControl.as
@@ -394,8 +394,7 @@
     }

     /**
-     * Requests a set of random letters from the dictionary service.  The letters will arrive in a
-     * separate message with the specified key, as an array of strings.
+     * Requests a check to see if the dictionary for the given locale contains the given word.
      *
      * @param RFC 3066 string that represents language settings
      * @param word the string contains the word to be checked


Add support for converting WebTiledLayer and GeoRSSLayer from web map.

--- src/com/esri/viewer/managers/ConfigManager.as
+++ src/com/esri/viewer/managers/ConfigManager.as
@@ -23,10 +23,12 @@
 import com.esri.ags.layers.ArcGISTiledMapServiceLayer;
 import com.esri.ags.layers.CSVLayer;
 import com.esri.ags.layers.FeatureLayer;
+import com.esri.ags.layers.GeoRSSLayer;
 import com.esri.ags.layers.KMLLayer;
 import com.esri.ags.layers.Layer;
 import com.esri.ags.layers.OpenStreetMapLayer;
 import com.esri.ags.layers.WMSLayer;
+import com.esri.ags.layers.WebTiledLayer;
 import com.esri.ags.layers.supportClasses.Field;
 import com.esri.ags.layers.supportClasses.LOD;
 import com.esri.ags.portal.WebMapUtil;
@@ -1187,6 +1189,41 @@
                 lyrXML.@sourcefields = fields.join();
             }
         }
+        else if (layer is WebTiledLayer)
+        {
+            var webTiledLayer:WebTiledLayer = layer as WebTiledLayer;
+            lyrXML = <layer label={label}
+                    type="webtiled"
+                    visible={webTiledLayer.visible}
+                    alpha={webTiledLayer.alpha}
+                    url={webTiledLayer.urlTemplate}/>;
+            if (webTiledLayer.copyright)
+            {
+                lyrXML.@copyright = webTiledLayer.copyright;
+            }
+            if (webTiledLayer.displayLevels)
+            {
+                lyrXML.@displaylevels = webTiledLayer.displayLevels.join();
+            }
+            if (webTiledLayer.subDomains)
+            {
+                lyrXML.@subdomains = webTiledLayer.displayLevels.join();
+            }
+        }
+        else if (layer is GeoRSSLayer)
+        {
+            var geoRSSLayer:GeoRSSLayer = layer as GeoRSSLayer;
+            lyrXML = <layer label={label}
+                    type="georss"
+                    visible={geoRSSLayer.visible}
+                    alpha={geoRSSLayer.alpha}
+                    url={geoRSSLayer.url}/>;
+            if (geoRSSLayer.serviceURL)
+            {
+                lyrXML.@serviceurl = geoRSSLayer.serviceURL;
+            }
+        }
+
         return lyrXML;
     }


ensure URL is set correctly

ensure URL is set correctly

--- src/flash/htmlelements/VideoElement.as
+++ src/flash/htmlelements/VideoElement.as
@@ -266,8 +266,11 @@
 			// start new connection
 			if (_isRTMP) {
 				var rtmpInfo:Object = parseRTMP(_currentUrl);
-				if (_streamer != "")
+				if (_streamer != "") {
 					rtmpInfo.server = _streamer;
+					rtmpInfo.stream = _currentUrl;
+
+				}
 				_connection.connect(rtmpInfo.server);
 			} else {
 				_connection.connect(null);


ChromelessPlayer: change setup functions to protected

--- src/org/mangui/chromeless/ChromelessPlayer.as
+++ src/org/mangui/chromeless/ChromelessPlayer.as
@@ -44,7 +44,7 @@
             setTimeout(_pingJavascript, 50);
         };

-        private function _setupExternalGetters():void {
+        protected function _setupExternalGetters():void {
             ExternalInterface.addCallback("getLevel", _getLevel);
             ExternalInterface.addCallback("getLevels", _getLevels);
             ExternalInterface.addCallback("getAutoLevel", _getAutoLevel);
@@ -70,7 +70,7 @@
             ExternalInterface.addCallback("getAudioTrackId", _getAudioTrackId);
         };

-        private function _setupExternalCallers():void {
+        protected function _setupExternalCallers():void {
             ExternalInterface.addCallback("playerLoad", _load);
             ExternalInterface.addCallback("playerPlay", _play);
             ExternalInterface.addCallback("playerPause", _pause);
@@ -93,7 +93,7 @@
             ExternalInterface.addCallback("playerSetJSURLStream", _setJSURLStream);
         };

-        private function _setupStage():void {
+        protected function _setupStage():void {
             stage.scaleMode = StageScaleMode.NO_SCALE;
             stage.align = StageAlign.TOP_LEFT;
             stage.fullScreenSourceRect = new Rectangle(0, 0, stage.stageWidth, stage.stageHeight);
@@ -101,7 +101,7 @@
             stage.addEventListener(Event.RESIZE, _onStageResize);
         }

-        private function _setupSheet():void {
+        protected function _setupSheet():void {
             // Draw sheet for catching clicks
             _sheet = new Sprite();
             _sheet.graphics.beginFill(0x000000, 0);


Transferred from the Adobe Open Source Subversion Repository

Revision: 22702
Author:   deeptika@adobe.com
Date:     2011-09-23T05:33:34.744585Z

Log Message:
-----------
QE notes:
Doc notes:
Bugs: FLEXENT-1475 (SparkDataGridAutomationImpl bug prevents from using DataGrid automation when dataProvider is set after instantiation.)
Reviewer:
Tests run: checkintests
Is noteworthy for integration:

Modified Paths:
--------------
/private/flex/sdk/branches/4.y/frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkDataGridAutomationImpl.as

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

--- frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkDataGridAutomationImpl.as
+++ frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkDataGridAutomationImpl.as
@@ -373,8 +373,12 @@
 		 */
 		public function getCompleteRenderersArray():Array
 		{
-			const rowCount:int = grid.dataProvider.length;
-			const columnCount:int = grid.columns.length;
+			var rowCount:int = 0;
+			if(grid.dataProvider)
+				rowCount = grid.dataProvider.length;
+			var columnCount:int = 0;
+			if(grid.columns)
+				columnCount = grid.columns.length;
 			const renderers:Array = new Array(rowCount+1);
 			renderers[0] = new Array(columnCount);


remove ViewBase for now just to see if Application will compile

--- frameworks/projects/Core/as/src/org/apache/flex/core/Application.as
+++ frameworks/projects/Core/as/src/org/apache/flex/core/Application.as
@@ -236,7 +236,7 @@
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
          */
-        public var initialView:ViewBase;
+        public var initialView:Object;

         /**
          *  The data model (for the initial view).


Transferred from the Adobe Open Source Subversion Repository

Revision: 5234
Author:   dloverin@adobe.com
Date:     2009-03-11T16:16:21.479562Z

Log Message:
-----------
Initial check-in for FxWindowedApplication.

The FlexChrome has been written. FxTitleBarSkin provides a different look depending on if you are running on a mac or other OS.

QE Notes: Not ready for testing
Doc Notes: None
Bugs: none
Reviewer: Ryan
tests: checkintests

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxMacMinimizeButtonSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxMacMaximizeButtonSkin.mxml</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxCloseButtonSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxWindowedApplicationSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxTitleBarSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/airframework/.actionScriptProperties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxGripperSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxMinimizeButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/defaults.css</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/windowClasses/FxTitleBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxRestoreButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/AIRFrameworkClasses.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxMaximizeButtonSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/spark/FxMacCloseButtonSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/FxWindowedApplication.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/mxml-2009-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/WindowedApplication.as</path>

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

--- frameworks/projects/airframework/src/mx/core/WindowedApplication.as
+++ frameworks/projects/airframework/src/mx/core/WindowedApplication.as
@@ -652,8 +652,7 @@
         var nativeApplication:NativeApplication = NativeApplication.nativeApplication;
         nativeApplication.addEventListener(Event.ACTIVATE, nativeApplication_activateHandler);
         nativeApplication.addEventListener(Event.DEACTIVATE, nativeApplication_deactivateHandler);
-        nativeApplication.addEventListener(Event.NETWORK_CHANGE,
-                               nativeApplication_networkChangeHandler);
+        nativeApplication.addEventListener(Event.NETWORK_CHANGE, dispatchEvent);

         nativeApplication.addEventListener(InvokeEvent.INVOKE, nativeApplication_invokeHandler);
         initialInvokes = new Array();
@@ -3250,14 +3249,6 @@
     /**
      *  @private
      */
-    private function nativeApplication_networkChangeHandler(event:Event):void
-    {
-        dispatchEvent(event);
-    }
-
-    /**
-     *  @private
-     */
     private function nativeApplication_invokeHandler(event:InvokeEvent):void
     {
         // Because of the behavior with the nativeApplication invoke event


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

--- frameworks/projects/charts/src/mx/charts/chartClasses/IStackable.as
+++ frameworks/projects/charts/src/mx/charts/chartClasses/IStackable.as
@@ -0,0 +1,107 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.charts.chartClasses
+{
+
+import flash.utils.Dictionary;
+import mx.charts.chartClasses.StackedSeries;
+
+/**
+ *  The IStackable interface is implemented by any series that can be stacked.
+ *  Stacking sets (ColumnSet, BarSet, AreaSet) require that any sub-series
+ *  assigned to it when stacking implement this interface.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IStackable
+{
+	//--------------------------------------------------------------------------
+	//
+	//  Properties
+	//
+	//--------------------------------------------------------------------------
+
+    //----------------------------------
+	//  stacker
+    //----------------------------------
+
+	/**
+	 *  The StackedSeries associated with this series.
+	 *  The stacker manages the series's stacking behavior.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	function get stacker():StackedSeries;
+
+	/**
+	 *  @private
+	 */
+	function set stacker(value:StackedSeries):void;
+
+    //----------------------------------
+	//  stackTotals
+    //----------------------------------
+
+	/**
+	 *  The stack totals for the series.
+	 *
+	 *  @param value The totals to set.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	function set stackTotals(value:Dictionary):void;
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Stacks the series. Normally, a series implements the updateData() method
+	 *  to load its data out of the data provider. But a stacking series performs special
+	 *  operations because its values are not necessarily stored in its data provider.
+	 *  Its values are whatever is stored in its data provider, summed with the values
+	 *  that are loaded by the object it stacks on top of.
+	 *
A custom stacking series should implement the stack() method by loading its
+	 *  data out of its data provider, adding it to the base values stored in the dictionary
+	 *  to get the real values it should render with, and replacing the values in the dictionary
+	 *  with its new, summed values.

+	 *
+	 *  @param stackedXValueDictionary Contains the base values that the series should stack
+	 *  on top of. The keys in the dictionary are the y values, and the values are the x values.
+	 *
+	 *  @param previousElement The previous element in the stack. If, for example, the element
+	 *  is of the same type, you can use access to this property to avoid duplicate effort when
+	 *  rendering.
+	 *
+	 *  @return The maximum value in the newly stacked series.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	function stack(stackedXValueDictionary:Dictionary,
+				   previousElement:IStackable):Number;
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 4236
Author:   egreenfi@adobe.com
Date:     2008-12-05T01:20:06.259543Z

Log Message:
-----------
A number of small 3D fixes

- scale == 0 in 3D now works correctly (approximately).
- setting z != 0 correctly puts the element in 3D mode.
- setting layoutMatrix3D to a degenerate 2D matrix puts the element back into a 2D mode.
- layoutMatrix and layoutMatrix3D correctly copy on read now.

QA: yes.
DOC: no.
REVIEW: Glenn

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/CompoundTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as</path>

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

--- frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as
+++ frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as
@@ -109,7 +109,7 @@

 	private static const RADIANS_PER_DEGREES:Number = Math.PI / 180;

-
+	private static const ZERO_REPLACEMENT_IN_3D:Number = .00000000000001;

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

@@ -544,6 +544,12 @@
 		reVR.y = ry * RADIANS_PER_DEGREES;
 		reVR.z = rz * RADIANS_PER_DEGREES;
 		m.recompose(reV);
+		if(sx == 0)
+			sx = ZERO_REPLACEMENT_IN_3D;
+		if(sy == 0)
+			sy = ZERO_REPLACEMENT_IN_3D;
+		if(sz == 0)
+			sz = ZERO_REPLACEMENT_IN_3D;
 		m.prependScale(sx,sy,sz);
 		m.prependTranslation(-tx,-ty,-tz);
 		m.appendTranslation(tx+x,ty+y,tz+z);


Code clean

Code clean

--- collect-flex/collect-flex-client/src/generated/flex/org/openforis/collect/model/proxy/ValidationResultProxy.as
+++ collect-flex/collect-flex-client/src/generated/flex/org/openforis/collect/model/proxy/ValidationResultProxy.as
@@ -20,27 +20,11 @@
 		public function getMessage():String {
 			var result:String = LanguageSpecificTextProxy.getLocalizedText(messages);
 			if(StringUtil.isBlank(result)) {
-				var messageResource:String = messageKey;
-				var args:Array = messageArgs;
 				if(ruleName == "ComparisonCheck") {
-					var nodeLabel:String = args[0];
-					var argsAdapted:Array = [];
-					for (var index:int = 1; index < args.length; index ++) {
-						var arg:String = args[index];
-						var argParts:Array = arg.split(";");
-						var op:String = argParts[0];
-						var value:String = argParts[1];
-						var opMessageKey:String =  "edit.validation.compare." + op;
-						var operator:String = Message.get(opMessageKey);
-						var argAdapted:String = StringUtil.concat(" ", operator, value);
-						argsAdapted.push(argAdapted);
-					}
-					var andOperator:String = " " + Message.get("edit.validation.compare.and") + " ";
-					var argsConcat:String = StringUtil.concat(andOperator, argsAdapted);
-					result = Message.get(messageResource, [nodeLabel, argsConcat]);
+					result = getComparisonCheckMessage();
 				} else {
-					if(messageResource != null) {
-						result = Message.get(messageResource, args);
+					if(messageKey != null) {
+						result = Message.get(messageKey, messageArgs);
 					} else {
 						result = ruleName;
 					}
@@ -48,5 +32,24 @@
 			}
 			return result;
 		}
+
+		private function getComparisonCheckMessage():String {
+			var nodeLabel:String = messageArgs[0];
+			var argsAdapted:Array = [];
+			for (var index:int = 1; index < messageArgs.length; index ++) {
+				var arg:String = messageArgs[index];
+				var argParts:Array = arg.split(";");
+				var op:String = argParts[0];
+				var value:String = argParts[1];
+				var opMessageKey:String =  "edit.validation.compare." + op;
+				var operator:String = Message.get(opMessageKey);
+				var argAdapted:String = StringUtil.concat(" ", operator, value);
+				argsAdapted.push(argAdapted);
+			}
+			var andOperator:String = " " + Message.get("edit.validation.compare.and") + " ";
+			var argsConcat:String = StringUtil.concat(andOperator, argsAdapted);
+			var result:String = Message.get(messageKey, [nodeLabel, argsConcat]);
+			return result;
+		}
     }
 }


Fixed the copy paste error which caused an inbalance in the layout update control.

--- Bin/Data/Scripts/Editor/EditorSceneWindow.as
+++ Bin/Data/Scripts/Editor/EditorSceneWindow.as
@@ -115,9 +115,6 @@
 {
     ClearSceneWindow();
     UpdateSceneWindowNode(0, editorScene, null);
-
-    // Re-enable layout update
-    hierarchyList.EnableLayoutUpdate();

     // Clear copybuffer when whole window refreshed
     copyBuffer.Clear();


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

 package mx.automation.delegates.advancedDataGrid
 {


adjust log level

adjust log level

--- src/org/mangui/HLS/muxing/AVC.as
+++ src/org/mangui/HLS/muxing/AVC.as
@@ -132,9 +132,9 @@
                     for(var i:Number=0; i<units.length; i++) {
                         txt += NAMES[units[i].type] + ", ";
                     }
-                    Log.debug(txt.substr(0,txt.length-2) + " slices");
+                    Log.debug2(txt.substr(0,txt.length-2) + " slices");
                 } else {
-                    Log.debug('AVC: no NALU slices found');
+                    Log.debug2('AVC: no NALU slices found');
                 }
             }
             nalu.position = position;


Removed debug print.

Removed debug print.

--- Bin/Data/Scripts/Editor/EditorSceneWindow.as
+++ Bin/Data/Scripts/Editor/EditorSceneWindow.as
@@ -486,7 +486,6 @@

 void SelectComponent(Component@ component, bool multiselect)
 {
-    Print("Here", true);
     if (component is null && !multiselect)
     {
         hierarchyList.ClearSelection();


tests

tests

--- testSrc/com/kemsky/TestStream.as
+++ testSrc/com/kemsky/TestStream.as
@@ -565,8 +565,8 @@
             assertEquals(d["2"], item2.price);

             var n:Object = s.object(member("name"));
-            assertEquals(d["1"], item1);
-            assertEquals(d["2"], item2);
+            assertEquals(n["1"], item1);
+            assertEquals(n["2"], item2);
         }

@@ -971,6 +971,9 @@
             assertEquals(xm.first.pageCount, "238");
             assertEquals(xm.second.name(), "book");
             assertEquals(xm.second.pageCount, "115");
+
+            var s:Stream = $(test);
+            trace(s);
         }


When adding a child movie to a layer, reset its timeline

--- runtime/src/main/as/flump/display/Layer.as
+++ runtime/src/main/as/flump/display/Layer.as
@@ -74,7 +74,12 @@
         if (_needsKeyframeUpdate) {
             // Swap in the proper DisplayObject for this keyframe.
             _movie.removeChildAt(_layerIdx);
-            _movie.addChildAt(_displays[_keyframeIdx], _layerIdx);
+            const disp :DisplayObject = _displays[_keyframeIdx];
+            // If we're swapping in a Movie, reset its timeline.
+            if (disp is Movie) {
+                Movie(disp).goTo(0);
+            }
+            _movie.addChildAt(disp, _layerIdx);
         }
         _needsKeyframeUpdate = false;


removed errant import for request

removed errant import for request

git-svn-id: 9278a788294a4258aac04586390fc35fb4a5f335@10844 a9308255-753e-0410-a2e9-80b3fbc4fff6

--- FlexUnit4Test/src/org/flexunit/runners/model/cases/RunnerBuilderBaseCase.as
+++ FlexUnit4Test/src/org/flexunit/runners/model/cases/RunnerBuilderBaseCase.as
@@ -1,7 +1,5 @@
 package org.flexunit.runners.model.cases
 {
-	import mx.events.Request;
-
 	import org.flexunit.Assert;
 	import org.flexunit.runner.IRunner;
 	import org.flexunit.runner.mocks.RequestMock;


Fixed a bug with serialization of managed value

--- src/Modi/ManagedObject.as
+++ src/Modi/ManagedObject.as
@@ -327,7 +327,7 @@
             }
 			else if (type == "ManagedValue")
 			{
-				serializator.writeString(name, object.toString());
+				serializator.writeString(name, (object as ManagedValue).stringValue);
 			}
             else if (type == "ManagedPoint")
             {


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

--- frameworks/projects/advancedgrids/src/mx/styles/metadata/IconColorStyles.as
+++ frameworks/projects/advancedgrids/src/mx/styles/metadata/IconColorStyles.as
@@ -1,4 +1,30 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////

+/**
+ *  The color for the icon in a skin.
+ *  For example, this style is used by the CheckBoxIcon skin class
+ *  to draw the check mark for a CheckBox control,
+ *  by the ComboBoxSkin class to draw the down arrow of the ComboBox control,
+ *  and by the DateChooserMonthArrowSkin skin class to draw the month arrow
+ *  for the DateChooser control.
+ *
+ *  The default value depends on the component class;
+ *  if it is not overridden by the class, the default value is 0x111111.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
 [Style(name="iconColor", type="uint", format="Color", inherit="yes")]

 /**


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

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


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

--- frameworks/projects/mx/src/mx/core/Container.as
+++ frameworks/projects/mx/src/mx/core/Container.as
@@ -3273,12 +3273,12 @@
             vm = viewMetrics;

             // Set the position and size of the overlay .
-            if (overlay)
+            if (effectOverlay)
             {
-                overlay.x = 0;
-                overlay.y = 0;
-                overlay.width = unscaledWidth;
-                overlay.height = unscaledHeight;
+				effectOverlay.x = 0;
+				effectOverlay.y = 0;
+				effectOverlay.width = unscaledWidth;
+				effectOverlay.height = unscaledHeight;
             }

             // Set the positions and sizes of the scrollbars.
@@ -3726,7 +3726,7 @@
      */
     override protected function attachOverlay():void
     {
-        rawChildren_addChild(overlay);
+        rawChildren_addChild(effectOverlay);
     }

     /**
@@ -4988,7 +4988,7 @@
             needHorizontal ||
             needVertical ||
             hasNegativeCoords ||
-            overlay != null ||
+			effectOverlay != null ||
             vm.left > 0 ||
             vm.top > 0;


Transferred from the Adobe Open Source Subversion Repository

Revision: 10479
Author:   jimurphy@adobe.com
Date:     2009-09-22T00:33:54.511456Z

Log Message:
-----------
Merged gumbo_beta2 revisions 10396,10434,10463,10472 -> trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/CompcPreLink.java</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/spark/src/spark/effects/Fade.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/modules/compiler/src/java/flex2/compiler/SymbolTable.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StylesContainer.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/MxmlDocument.java</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/spark/src/spark/components/supportClasses/Skin.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/modules/compiler/src/java/flex2/compiler/mxml/MxmlCompiler.java</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/modules/compiler/src/java/flex2/tools/PreLink.java</path>
<path kind="dir" action="M">/flex/sdk/trunk</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/containers/VBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/PreLink.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/CompilerAPI.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/LinkBar.as</path>

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

--- frameworks/projects/mx/src/mx/containers/Box.as
+++ frameworks/projects/mx/src/mx/containers/Box.as
@@ -73,6 +73,7 @@

 [Alternative(replacement="spark.components.HGroup", since="4.0")]
 [Alternative(replacement="spark.components.VGroup", since="4.0")]
+[Alternative(replacement="spark.components.Border", since="4.0")]

 /**
  *  A Halo Box container lays out its children in a single vertical column