Transferred from the Adobe Open Source Subversion Repository

Revision: 10482
Author:   klin@adobe.com
Date:     2009-09-22T01:15:07.187325Z

Log Message:
-----------
https://bugs.adobe.com/jira/browse/SDK-21534 - Added support for the new change and changing events pattern. "changing" events are now dispatched at the start of a user interaction and "change" events are dispatched at the end of the user interaction. For example, pressing and holding on the incrementButton of a ScrollBar will cause a "changing" event when first pressed and a "change" event when the user lets go of the incrementButton. For more information, see the wiki page (http://opensource.adobe.com/wiki/display/flexsdk/change+and+changing+events).

We also ensure that if an animation is interrupted by another user interaction, the value is set to a valid value near where the animation was stopped and immediately begin a new animation. This prevents jumpy behavior by both Slider and ScrollBar.

Lastly, checkintests are updated to reflect the new behavior.

QE Notes: ScrollBar, Slider tests involving change events.
Doc Notes: None
Bugs: SDK-21534
Reviewer: Ryan
API Change: No
Is noteworthy for integration: No
tests: checkintests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/tests/basicTests/spark/scripts/ScrollBarTestScript.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollBar.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
@@ -364,20 +364,6 @@
     protected function pointToValue(x:Number, y:Number):Number
     {
         return minimum;
-    }
-
-
-    /**
-     *  @private
-     */
-    override public function changeValueByStep(increase:Boolean = true):void
-    {
-        var prevValue:Number = this.value;
-
-        super.changeValueByStep(increase);
-
-        if (value != prevValue)
-            dispatchEvent(new Event(Event.CHANGE));
     }

     /**
@@ -555,6 +541,8 @@

         clickOffset = thumb.globalToLocal(new Point(event.stageX, event.stageY));
         dispatchEvent(new TrackBaseEvent(TrackBaseEvent.THUMB_PRESS));
+
+		dispatchEvent(new FlexEvent(FlexEvent.CHANGING));
     }

     /**
@@ -575,7 +563,6 @@
         {
             setValue(newValue);
             dispatchEvent(new TrackBaseEvent(TrackBaseEvent.THUMB_DRAG));
-            dispatchEvent(new Event(Event.CHANGE));
         }

         event.updateAfterEvent();
@@ -595,6 +582,8 @@
             system_mouseUpHandler);

         dispatchEvent(new TrackBaseEvent(TrackBaseEvent.THUMB_RELEASE));
+
+		dispatchEvent(new Event(Event.CHANGE));
     }

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


StringUtil.splice

StringUtil.splice

--- raw/src/org/yellcorp/lib/core/StringUtil.as
+++ raw/src/org/yellcorp/lib/core/StringUtil.as
@@ -171,6 +171,19 @@
             return str;
         }
     }
+
+
+    /**
+     * Replaces a range of characters in a string with another string. The range
+     * can be zero-length to insert a string, or the replacement string call be
+     * null or empty to delete characters.
+     */
+    public static function splice(string:String, rangeStart:int, rangeEnd:int,
+            stringToInsert:String):String
+    {
+        return string.slice(0, rangeStart) + (stringToInsert || "") +
+               string.slice(rangeEnd);
+    }

     public static function delimiterJoin(first:String, second:String, delimeter:String, caseSensitive:Boolean = true):String


rm uneeded prevFrag from LoaderInfo

rm uneeded prevFrag from LoaderInfo

--- src/org/mangui/hls/loader/FragmentLoader.as
+++ src/org/mangui/hls/loader/FragmentLoader.as
@@ -82,8 +82,6 @@
         private var _keyRetryTimeout : Number;
         private var _keyRetryCount : int;
         private var _keyLoadStatus : int;
-        /** reference to previous/current fragment */
-        private var _fragPrevious : Fragment;
         /* loading state variable */
         private var _loadingState : int;

@@ -92,6 +90,8 @@

 	// XXX marka: fragSkipping is used only at main loop, that is disabled in hap mode, dont need to keep it in loaderInfo
         private var _fragSkipping : Boolean;
+	// XXX marka: fragPrevious is used only at main loop, that is disabled in hap mode, dont need to keep it in loaderInfo
+        private var _fragPrevious : Fragment;
         private var _fragSkipCount : int;
         private static const LOADING_STOPPED : int = -1;
         private static const LOADING_IDLE : int = 0;
@@ -1279,7 +1279,6 @@
     public var retryCount: int;
     public var retryTimeout: Number;
     public var frag: Fragment;
-    public var prevFrag: Fragment;
     public var metrics: HLSLoadMetrics;

     public function get id(): String


added method to add objects from a normal array

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

--- src/reprise/data/collection/IndexedArray.as
+++ src/reprise/data/collection/IndexedArray.as
@@ -27,6 +27,14 @@
 		public function init() : void
 		{
 			AS3::splice(0, this.length);
+		}
+
+		public function addObjectsFromArray(arr:Array):void
+		{
+			for (var i:int = 0; i < arr.length; i++)
+			{
+				push(arr[i]);
+			}
 		}

 		public function getIndex(o : Object) : int


- change: Removed debugging log messages

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

--- src/reprise/ui/renderers/AbstractTooltip.as
+++ src/reprise/ui/renderers/AbstractTooltip.as
@@ -185,15 +185,12 @@
 				basePathParts.push(m_selectorPath.split(' ').pop());
 				m_selectorPath = basePathParts.join(' ');
 			}
-			log("m_selectorPath: " + (m_selectorPath));
 			if (m_selectorPath != oldPath)
 			{
-				log("m_selectorPathChanged: " + (m_selectorPathChanged));
 				m_selectorPathChanged = true;
 				return;
 			}
 			m_selectorPathChanged = false;
-			log("m_selectorPathChanged: " + (m_selectorPathChanged));
 		}

 		protected override function resolveContainingBlock() : void


- bugfix: Tooltips didn't apply out-of-flow positioning to their children

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

--- src/reprise/ui/renderers/AbstractTooltip.as
+++ src/reprise/ui/renderers/AbstractTooltip.as
@@ -206,5 +206,11 @@
 			}
 			return element.localToGlobal(p);
 		}
+
+		protected override function validateAfterChildren() : void
+		{
+			super.validateAfterChildren();
+			applyOutOfFlowChildPositions();
+		}
 	}
 }


Implemented Setting of window icon and title in Script file

--- DroneAnarchy/Resources/Scripts/DroneAnarchy.as
+++ DroneAnarchy/Resources/Scripts/DroneAnarchy.as
@@ -76,6 +76,7 @@

 	cache.AddResourceDir("DroneAnarchy");

+	SetWindowTitleAndIcon();
 	CreateGameControllers();   // in GameController.as

@@ -218,6 +219,11 @@

 }

+void SetWindowTitleAndIcon()
+{
+    graphics.windowIcon = cache.GetResource("Image","Resources/Textures/drone_anarchy_icon.png");
+    graphics.windowTitle = "Drone Anarchy";
+}
 void SetSoundListener(Node@ listenerNode)
 {
 	if(listenerNode.GetComponent("SoundListener") is null)


Feature request, additional "targetingOnly" argument on "fromEvent()".

"targetingOnly" specifies whether to cancel the event if processed during the targeting phase (targetingOnly = true), or allow it to bubble up the display list for other listeners to process.

--- source/raix/src/raix/reactive/Observable.as
+++ source/raix/src/raix/reactive/Observable.as
@@ -551,9 +551,12 @@
 		 * @param eventType The valueClass of event dispatched by eventDispatcher. Event will be used if this argument is null.
 		 * @param useCapture Whether to pass useCapture when subscribing to and unsubscribing from the event
 		 * @param priority The priority of the event
+		 * @param targetingOnly Whether to cancel the event at the targeting phase, or allow it to bubble back up the display list.
+		 * This only applies if the event is actually processed in the "targeting" phase, so events handled during the bubbling phase
+		 * won't be affected, even if the IObservable was created with targetingOnly == true
 		 * @return An observable sequence of eventType, or Event if eventType is null
 		 */
-		public static function fromEvent(eventDispatcher:IEventDispatcher, eventType:String, useCapture:Boolean=false, priority:int=0):IObservable
+		public static function fromEvent(eventDispatcher:IEventDispatcher, eventType:String, useCapture:Boolean=false, priority:int=0, targetingOnly:Boolean=false):IObservable
 		{
 			if (eventDispatcher == null)
 			{
@@ -564,6 +567,11 @@
 			{
 				var listener : Function = function(event : Event) : void
 				{
+					if(targetingOnly && event.eventPhase == EventPhase.AT_TARGET)
+					{
+						event.stopPropagation();
+					}
+
 					observer.onNext(event);
 				};

@@ -584,12 +592,12 @@
 		 * @param priority The priority of the event
 		 * @return An observable sequence of commonValueClass, or Event if commonValueClass is null
 		 */
-		public static function fromEvents(eventDispatcher:IEventDispatcher, eventTypes:Array, useCapture:Boolean=false, priority:int=0):IObservable
+		public static function fromEvents(eventDispatcher:IEventDispatcher, eventTypes:Array, useCapture:Boolean=false, priority:int=0, targetingOnly:Boolean=false):IObservable
 		{
 			return Observable.fromArray(eventTypes)
 					.mapMany(function(eventType : String) : IObservable
 					{
-						return fromEvent(eventDispatcher, eventType, useCapture, priority);
+						return fromEvent(eventDispatcher, eventType, useCapture, priority, targetingOnly);
 					});
 		}


Put [SWF] tag in test runner app.

Put [SWF] tag in test runner app.

--- tests/org/osflash/signals/AllTestsRunner.as
+++ tests/org/osflash/signals/AllTestsRunner.as
@@ -2,6 +2,7 @@
 	import asunit4.ui.MinimalRunnerUI;
 	import org.osflash.signals.AllTests;

+	[SWF(width='1000', height='800', backgroundColor='#333333', frameRate='31')]
 	public class AllTestsRunner extends MinimalRunnerUI
 	{
 		public function AllTestsRunner()


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

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

 import mx.core.mx_internal;


Transferred from the Adobe Open Source Subversion Repository

Revision: 20179
Author:   egeorgie@adobe.com
Date:     2011-02-07T23:15:47.659707Z

Log Message:
-----------
Fix for http://bugs.adobe.com/jira/browse/SDK-25445 matrix and matrix3D don't set each other to null on UIComponent or its sub classes

In this change:
- document the UIComponent behavior
- fix a bug for is3D property where we return "true" after "matrix" is set.

QE notes:
Doc notes: Sanity-check UIComponent#transform ASDoc comment
Bugs: SDK-25445
Reviewer: Jason S
Tests run: full mustella
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/geom/CompoundTransform.as</path>

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

--- frameworks/projects/framework/src/mx/core/UIComponent.as
+++ frameworks/projects/framework/src/mx/core/UIComponent.as
@@ -13217,7 +13217,49 @@
     }

     /**
-     *  @private
+     *  An object with properties pertaining to a display object's matrix, color transform,
+     *  and pixel bounds.  The specific properties — matrix, colorTransform, and three read-only
+     *  properties (concatenatedMatrix, concatenatedColorTransform, and pixelBounds) —
+     *  are described in the entry for the Transform class.
+     *
+     *
Each of the transform object's properties is itself an object.  This concept is
+     *  important because the only way to set new values for the matrix or colorTransform
+     *  objects is to create a new object and copy that object into the transform.matrix or
+     *  transform.colorTransform property.

+     *
+     *
For example, to increase the tx value of a display object's matrix, you must make a copy
+     *  of the entire matrix object, then copy the new object into the matrix property of the
+     *  transform object:

+     *
+     *

+     *  var myMatrix:Matrix = myUIComponentObject.transform.matrix;
+     *  myMatrix.tx += 10;
+     *  myUIComponent.transform.matrix = myMatrix;
+     *

+     *
+     *  You cannot directly set the tx property. The following code has no effect on myUIComponent:
+     *
+     *

+     *  myUIComponent.transform.matrix.tx += 10;
+     *

+     *
+     *
Note that for UIComponent, unlike DisplayObject, the transform
+     *  keeps the matrix and matrix3D values in sync and matrix3D is not null
+     *  even when the component itself has no 3D properties set.  Developers should use the is3D property
+     *  to check if the component has 3D propertis set.  If the component has 3D properties, the transform's
+     *  matrix3D should be used instead of transform's matrix.

+     *
+     *  @see #setLayoutMatrix
+     *  @see #setLayoutMatrix3D
+     *  @see #getLayoutMatrix
+     *  @see #getLayoutMatrix3D
+     *  @see #is3D
+     *  @see mx.geom.Transform
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     override public function set transform(value:flash.geom.Transform):void
     {
@@ -13887,7 +13929,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-        public function get is3D():Boolean
+    public function get is3D():Boolean
     {
         return _layoutFeatures ? _layoutFeatures.is3D : false;
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 10633
Author:   dloverin@adobe.com
Date:     2009-09-28T13:24:30.559033Z

Log Message:
-----------
Use styleManager instance instead of StyleManager singleton (framework and compiler generated code)

Modified compiler generated style code for the FlexInit class. The style related changes are only available with the -keep option. AST generation is coming later.

Only the framework project is changed here. The other projects are will be changed soon.

QE notes: None.
Doc notes: None.
Bugs:
Reviewer: Alex and Paul
Tests run: checkintests, all Mustella tests(no new failures)
Is noteworthy for integration: no.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ButtonBarButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/HaloBorder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/accordionClasses/AccordionHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/CanvasLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateChooser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/dragClasses/DragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/configuration_en.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/common/CompilerConfiguration.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressIndeterminateSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/DateChooserMonthArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/lang/StandardDefs.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/SliderThumbSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollThumbSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridColumn.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleModule.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Form.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleManager2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/PreLink.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/gen/ClassDefLib.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/TitleBackground.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/NumericStepperDownSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/PopUpButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/ProgrammaticSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/TabSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/textClasses/TextRange.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/LayoutContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/AccordionHeaderSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/CheckBoxIcon.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/NumericStepperUpSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/RadioButtonIcon.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UITextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/SetStyle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ComboBoxArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeaderBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/FormItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/MenuBarBackgroundSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressBarSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/BusyCursor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/Request.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/MenuBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Tree.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSStyleDeclaration.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/SliderTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleModule.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/DataGridHeaderBackgroundSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/modules/ModuleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SetStyleActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleDef.vm</path>

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

--- frameworks/projects/framework/src/mx/core/UITextField.as
+++ frameworks/projects/framework/src/mx/core/UITextField.as
@@ -30,6 +30,7 @@
 import mx.resources.ResourceManager;
 import mx.styles.ISimpleStyleClient;
 import mx.styles.IStyleClient;
+import mx.styles.IStyleManager2;
 import mx.styles.StyleManager;
 import mx.styles.StyleProtoChain;
 import mx.utils.NameUtil;
@@ -1519,6 +1520,25 @@
     }

     //----------------------------------
+    //  styleManager
+    //----------------------------------
+
+    /**
+     *  @private
+     *
+     *  Returns the style manager used by this component.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function get styleManager():IStyleManager2
+    {
+        return StyleManager.getStyleManager(moduleFactory);
+    }
+
+    //----------------------------------
     //  styleName
     //----------------------------------

@@ -1923,7 +1943,7 @@
      */
     public function getStyle(styleProp:String):*
     {
-        if (StyleManager.inheritingStyles[styleProp])
+        if (styleManager.inheritingStyles[styleProp])
         {
             return inheritingStyles ?
                    inheritingStyles[styleProp] :


Transferred from the Adobe Open Source Subversion Repository

Revision: 8483
Author:   smgilson@adobe.com
Date:     2009-07-09T17:52:48.367800Z

Log Message:
-----------
Second checkin to update the namespace in ASDoc MXML syntax descriptions for Spark components

QE Notes: None
Doc Notes: None
Bugs: -
Checkintests: passed

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/EaseInOutBase.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/spark/src/spark/effects/animation/MotionPath.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ColorMatrixFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Power.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/BlurFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/DisplacementMapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ShaderFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/DropShadowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/CallAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientBevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateColor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Scale3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Animate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransitionShader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Rotate3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Scale.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/Graphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Move3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Rotate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Resize.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Wipe.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Sine.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Move.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ConvolutionFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Keyframe.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientGlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/SetAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/RemoveAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/BevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientFilter.as</path>

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

--- frameworks/projects/spark/src/spark/effects/SetAction.as
+++ frameworks/projects/spark/src/spark/effects/SetAction.as
@@ -37,7 +37,7 @@
  *  and adds the following tag attributes:

  *
  *

- *  <mx:SetAction
+ *  <s:SetAction
  *    Properties
  *    id="ID"
  *    property=""


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

--- frameworks/projects/airspark/src/spark/components/windowClasses/TitleBar.as
+++ frameworks/projects/airspark/src/spark/components/windowClasses/TitleBar.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.components.windowClasses
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 8
Author:   open-source-svn-admin@adobe.com
Date:     2007-12-15T01:49:31.087529Z

Log Message:
-----------
The beginning of the open-source Flex SDK.

Populated the flex/sdk/trunk directory with an open-source subset of files from //depot/flex/sdk/...@191097 in the Faramir Perforce server. This changelist is a bit past the 3.0rc0 build.

The Ant scripts will not successfully build yet. They need to be adapted to the open-source subset.

Modified Paths:
--------------
2532 paths were modified

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

--- frameworks/projects/rpc/src/mx/messaging/management/MBeanConstructorInfo.as
+++ frameworks/projects/rpc/src/mx/messaging/management/MBeanConstructorInfo.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.messaging.management
+{
+
+import mx.utils.ObjectUtil;
+
+[RemoteClass(alias='flex.management.jmx.MBeanConstructorInfo')]
+
+/**
+ * Client representation of metadata for a MBean constructor.
+ */
+public class MBeanConstructorInfo extends MBeanFeatureInfo
+{
+    /**
+     *  Creates a new instance of an empty MBeanConstructorInfo.
+     */
+    public function MBeanConstructorInfo()
+	{
+		super();
+	}
+
+	/**
+	 * The parameter data types that make up the constructor signature.
+	 */
+	public var signature:Array;
+
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 11675
Author:   hmuller@adobe.com
Date:     2009-11-12T00:25:39.300334Z

Log Message:
-----------
Added minValue,maxValue,etc Style/Inspectable metadata tags for tools.

QE notes:
Doc notes:
Bugs: sdk-24100
Reviewer: Glenn
Tests run:
Is noteworthy for integration: yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/EaseInOutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.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/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/GradientStroke.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/VideoElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/SolidColorStroke.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/Rect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/BasicNonInheritingTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/SolidColor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/GradientEntry.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Keyframe.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/AdvancedInheritingTextStyles.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/spark/src/spark/components/supportClasses/Range.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as
@@ -49,7 +49,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="focusAlpha", type="Number", inherit="no", theme="spark")]
+[Style(name="focusAlpha", type="Number", inherit="no", theme="spark", minValue="0.0", maxValue="1.0")]

 /**
  *  @copy spark.components.supportClasses.GroupBase#focusColor
@@ -345,6 +345,8 @@
     //  dataTipPrecision
     //---------------------------------

+    [Inspectable(minValue="0")]
+
     /**
      *  Number of decimal places to use for the data tip text.
      *  A value of 0 means to round all values to an integer.


Update to use the urbi-console wrapper.

Update to use the urbi-console wrapper.

	* src/tests/liburbi-check.as: Use URBI_INIT.
	Remove factored code.
	Style changes.
	No longer define URBI_SERVER and URBI_PATH to force the use of the
	shipped one (instead of the installed version in case of a
	standalone SDK Remote).  Rather, define the PATH to use the
	urbi-console wrapper from the kernel if present.

--- sdk-remote/src/tests/liburbi-check.as
+++ sdk-remote/src/tests/liburbi-check.as
@@ -1,13 +1,5 @@
 m4_pattern_allow([^URBI_(PATH|SERVER)$])         -*- shell-script -*-
-
-AS_INIT()dnl
-URBI_PREPARE()
-
-set -e
-
-case $VERBOSE in
-  x) set -x;;
-esac
+URBI_INIT

 # Avoid zombies and preserve debugging information.
 cleanup ()
@@ -65,11 +57,8 @@

 exec 3>&2

-: ${abs_builddir='@abs_builddir@'}
 check_dir abs_builddir liburbi-check
-: ${abs_top_builddir='@abs_top_builddir@'}
 check_dir abs_top_builddir config.status
-: ${abs_top_srcdir='@abs_top_srcdir@'}
 check_dir abs_top_srcdir configure.ac

 # Make it absolute.
@@ -104,8 +93,7 @@
 if test -d $abs_top_srcdir/../../src/kernel; then
   stderr "This SDK-Remote is part of a kernel package" \
          "  ($abs_top_srcdir/../../src/kernel exists)."
-  URBI_SERVER=$abs_top_builddir/../src/urbi-console
-  export URBI_PATH=$abs_top_srcdir/../share
+  export PATH=$abs_top_builddir/../tests/bin:$PATH
 else
   stderr "This SDK-Remote is standalone."
 fi
@@ -113,7 +101,7 @@
 find_urbi_server

 # Compute expected output.
-sed -n -e 's@//= @@p' $chk.cc >output.exp
+sed -n -e 's,//= ,,p' $chk.cc >output.exp
 touch error.exp
 echo 0 >status.exp


allow progressive buffering for first fragment in case HLSSettings.startFromLevel=-1 and there is only one level related to https://github.com/mangui/flashls/issues/77

--- src/org/mangui/hls/stream/FragmentLoader.as
+++ src/org/mangui/hls/stream/FragmentLoader.as
@@ -769,11 +769,14 @@
                 fragData.tags.push(tag);
             }

-            /* do progressive buffering here.
+            /* try to do progressive buffering here.
              * only do it in case :
-             *      it is not a cold start use case. in case of cold start, accept progressive buffering if we start playback from lowest level
+             * 		first fragment is already loaded
+             *      if first fragment is not loaded, we can do it if startlevel is already defined (if startFromLevel is set to -1
+             *      we first need to download one fragment to check the dl bw, in order to assess start level ...)
+             *      in case startFromLevel is to -1 and there is only one level, then we can do progressive buffering
              */
-            if (( _fragment_first_loaded || (_manifest_just_loaded && HLSSettings.startFromLevel != -1) )) {
+            if (( _fragment_first_loaded || (_manifest_just_loaded && (HLSSettings.startFromLevel != -1 || _levels.length == 1) ) )) {
                 if (fragData.audio_expected && !fragData.audio_found) {
                     /* if no audio tags found, it means that only video tags have been retrieved here
                      * we cannot do progressive buffering in that case.
@@ -884,7 +887,7 @@

             if (_manifest_just_loaded) {
                 _manifest_just_loaded = false;
-                if (HLSSettings.startFromLevel == -1) {
+                if (HLSSettings.startFromLevel == -1 && _levels.length > 1) {
                     // check if we can directly switch to a better bitrate, in case download bandwidth is enough
                     var bestlevel : int = _autoLevelManager.getbestlevel(fragMetrics.bandwidth);
                     if (bestlevel > _level) {


Update FieldSettings to store supported properties.

--- src/modules/supportClasses/FieldSettings.as
+++ src/modules/supportClasses/FieldSettings.as
@@ -22,17 +22,23 @@
     public var name:String;
     public var alias:String;
     public var tooltip:String;
+    public var dateFormat:String;
+    public var useUTC:Boolean;
+    public var required:Boolean;

     public function fromXML(configXML:XML):void
     {
         name = configXML.@name[0];
         alias = configXML.@alias[0];
         tooltip = configXML.@tooltip[0];
+        dateFormat = configXML.@dateformat[0];
+        useUTC = configXML.@useutc[0] == "true";
+        required = configXML.@required[0] == "true";
     }

     public function toXML():XML
     {
-        var configXML:XML = <field name={name}/>
+        var configXML:XML = <field name={name} required={required} useutc={useUTC}/>

         if (alias)
         {
@@ -42,6 +48,10 @@
         {
             configXML.@tooltip = tooltip;
         }
+        if (dateFormat)
+        {
+            configXML.@dateformat = dateFormat;
+        }

         return configXML;
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3057
Author:   jimurphy@adobe.com
Date:     2008-09-02T15:18:38.819662Z

Log Message:
-----------
Merged 3.0.x revisions [2966,2969,2995,3004,3018-3019,3023,3029-3030,3046,3049,3052] -> trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/ModalWindowRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Menu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/dragClasses/DragProxy.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/PopUpManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/InterDragManagerEvent.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/InterDragManagerEvent.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/PopUpRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerGlobals.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SWFBridgeEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/EventProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ISystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/sliderClasses/SliderThumb.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/TreeItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SizeRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/InterManagerRequest.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/InterManagerRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/FocusRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/wsdl/WSDL.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/scrollClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/dividedBoxClasses/BoxDivider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootDragEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/FocusManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/SandboxMouseEvent.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxMouseEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerProxy.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/EventUtil.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootMouseEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/sliderClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SWFBridgeRequest.as</path>

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

--- frameworks/projects/framework/src/mx/managers/FocusManager.as
+++ frameworks/projects/framework/src/mx/managers/FocusManager.as
@@ -36,7 +36,6 @@
 import mx.core.IUIComponent;
 import mx.core.mx_internal;
 import mx.events.FlexEvent;
-import mx.events.FocusRequest;
 import mx.events.FocusRequestDirection;
 import mx.events.SWFBridgeEvent;
 import mx.events.SWFBridgeRequest;
@@ -156,21 +155,21 @@
 			var sm:ISystemManager = form.systemManager;
 			if (sm.useSWFBridge() && !popup)
 			{
-				sm.addEventListener(SWFBridgeEvent.NOTIFY_BEFORE_UNLOAD, removeFromParentBridge);
+				sm.addEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_UNLOADING, removeFromParentBridge);

 				// have the child listen to move requests from the parent.
 				var bridge:IEventDispatcher = sm.swfBridgeGroup.parentBridge;
 		       	if (bridge)
 	    	   	{
-	       			bridge.addEventListener(FocusRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
+	       			bridge.addEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
 	       		}

 	   			// add listener activate/deactivate requests
 	   			if (!(form.systemManager is SystemManagerProxy))
 	   			{
-	   				bridge.addEventListener(FocusRequest.ACTIVATE_FOCUS_REQUEST, focusRequestActivateHandler);
-	   				bridge.addEventListener(FocusRequest.DEACTIVATE_FOCUS_REQUEST, focusRequestDeactivateHandler);
-			   		bridge.addEventListener(SWFBridgeEvent.NOTIFY_FOCUS_MANAGER_ACTIVATED,
+	   				bridge.addEventListener(SWFBridgeRequest.ACTIVATE_FOCUS_REQUEST, focusRequestActivateHandler);
+	   				bridge.addEventListener(SWFBridgeRequest.DEACTIVATE_FOCUS_REQUEST, focusRequestDeactivateHandler);
+			   		bridge.addEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE,
 			   				    		    bridgeEventActivateHandler);
 	   			}

@@ -685,7 +684,7 @@

 		// activate children in compatibility mode or in sandboxes.
 		if (bridgedFocusManagers)
-			sendEventToBridgedFocusManagers(new FocusRequest(FocusRequest.ACTIVATE_FOCUS_REQUEST));
+			sendEventToBridgedFocusManagers(new SWFBridgeRequest(SWFBridgeRequest.ACTIVATE_FOCUS_REQUEST));

     }

@@ -735,7 +734,7 @@

 		// deactivate children in compatibility mode or in sandboxes.
 		if (bridgedFocusManagers)
-			sendEventToBridgedFocusManagers(new FocusRequest(FocusRequest.DEACTIVATE_FOCUS_REQUEST));
+			sendEventToBridgedFocusManagers(new SWFBridgeRequest(SWFBridgeRequest.DEACTIVATE_FOCUS_REQUEST));

     }

@@ -1228,13 +1227,16 @@
 				// send message to child swf to move focus.
 				// trace("pass focus from " + this.form.systemManager.loaderInfo.url + " to " + DisplayObject(o).loaderInfo.url);

-	    		var request:FocusRequest = new FocusRequest(FocusRequest.MOVE_FOCUS_REQUEST,
-	    													false, true,
+	    		var request:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.MOVE_FOCUS_REQUEST,
+	    													false, true, null,
 	    													shiftKey ? FocusRequestDirection.BOTTOM :
 																	   FocusRequestDirection.TOP);
 				var sandboxBridge:IEventDispatcher = ISWFLoader(o).swfBridge;
 				if (sandboxBridge)
-    				focusChanged = !sandboxBridge.dispatchEvent(request);
+				{
+    				sandboxBridge.dispatchEvent(request);
+					focusChanged = request.data;
+				}
 			}
 			else if (o is IFocusManagerComplexComponent)
 			{
@@ -1842,7 +1844,7 @@
     	// trace("focusRequestHandler in  = " + this._form.systemManager.loaderInfo.url);

 		// ignore messages we send to ourselves.
-		if (event is FocusRequest)
+		if (event is SWFBridgeRequest)
 		{
 			// trace("ignored focus in " + this._form.systemManager.loaderInfo.url);
 			return;
@@ -1852,21 +1854,20 @@
 //		internalActivate();
 		focusSetLocally = false;

-    	var request:FocusRequest = FocusRequest.marshal(event);
-		if (request.direction == FocusRequestDirection.TOP || request.direction == FocusRequestDirection.BOTTOM)
+    	var request:SWFBridgeRequest = SWFBridgeRequest.marshal(event);
+		if (request.data == FocusRequestDirection.TOP || request.data == FocusRequestDirection.BOTTOM)
 		{
 			// move focus to the top or bottom child. If there are no children then
 			// send focus back up to the parent.
 			if (focusableObjects.length == 0)
 			{
 				// trace("focusRequestMoveHandler: no focusable objects, setting focus back to parent");
-				moveFocusToParent(request.direction == FocusRequestDirection.TOP ? false : true);
-				if (focusChanged)
-					event.preventDefault();
+				moveFocusToParent(request.data == FocusRequestDirection.TOP ? false : true);
+				request.data = focusChanged;
 				return;
 			}

-			if (request.direction == FocusRequestDirection.TOP)
+			if (request.data == FocusRequestDirection.TOP)
 			{
 				setFocusToTop();
 			}
@@ -1875,17 +1876,15 @@
 				setFocusToBottom();
 			}

-			if (focusChanged)
-				event.preventDefault();
+			request.data = focusChanged;
 		}
 		else
 		{
 			// move forward or backward
 			var startingPosition:DisplayObject = DisplayObject(_form.systemManager.
 										          swfBridgeGroup.getChildBridgeProvider(IEventDispatcher(event.target)));
-			moveFocus(request.direction, startingPosition);
-			if (focusChanged)
-				event.preventDefault();
+			moveFocus(request.data as String, startingPosition);
+			request.data = focusChanged;
 	  	}

 		if (focusSetLocally)
@@ -1952,8 +1951,8 @@
 			bridgedFocusManagers = new Dictionary(true);

 		bridgedFocusManagers[bridge] = 1;
-   		bridge.addEventListener(FocusRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
-   		bridge.addEventListener(SWFBridgeEvent.NOTIFY_FOCUS_MANAGER_ACTIVATED,
+   		bridge.addEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
+   		bridge.addEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE,
    				    		    bridgeEventActivateHandler);
 	}

@@ -1978,8 +1977,8 @@
 	    else
 	    	throw new Error();		// should never get here.

-   		bridge.removeEventListener(FocusRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
-   		bridge.removeEventListener(SWFBridgeEvent.NOTIFY_FOCUS_MANAGER_ACTIVATED,
+   		bridge.removeEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
+   		bridge.removeEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE,
    					    		    bridgeEventActivateHandler);
 		if (bridgedFocusManagers)
 			delete bridgedFocusManagers[bridge];
@@ -2011,21 +2010,21 @@
 		var sm:ISystemManager = form.systemManager;
 		if (sm.useSWFBridge() && !popup)
 		{
-			sm.removeEventListener(SWFBridgeEvent.NOTIFY_BEFORE_UNLOAD, removeFromParentBridge);
+			sm.removeEventListener(SWFBridgeEvent.BRIDGE_APPLICATION_UNLOADING, removeFromParentBridge);

 			// have the child listen to move requests from the parent.
 			var bridge:IEventDispatcher = sm.swfBridgeGroup.parentBridge;
 		    if (bridge)
 	    	{
-	       		bridge.removeEventListener(FocusRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
+	       		bridge.removeEventListener(SWFBridgeRequest.MOVE_FOCUS_REQUEST, focusRequestMoveHandler);
 	       	}

 	   		// add listener activate/deactivate requests
 	   		if (!(form.systemManager is SystemManagerProxy))
 	   		{
-	   			bridge.removeEventListener(FocusRequest.ACTIVATE_FOCUS_REQUEST, focusRequestActivateHandler);
-	   			bridge.removeEventListener(FocusRequest.DEACTIVATE_FOCUS_REQUEST, focusRequestDeactivateHandler);
-			   	bridge.removeEventListener(SWFBridgeEvent.NOTIFY_FOCUS_MANAGER_ACTIVATED,
+	   			bridge.removeEventListener(SWFBridgeRequest.ACTIVATE_FOCUS_REQUEST, focusRequestActivateHandler);
+	   			bridge.removeEventListener(SWFBridgeRequest.DEACTIVATE_FOCUS_REQUEST, focusRequestDeactivateHandler);
+			   	bridge.removeEventListener(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE,
 			   				    		bridgeEventActivateHandler);
 	   		}
 		}
@@ -2043,15 +2042,15 @@
     private function moveFocusToParent(shiftKey:Boolean):Boolean
     {
     	// trace("pass focus from " + this.form.systemManager.loaderInfo.url + " to parent ");
-		var request:FocusRequest = new FocusRequest(FocusRequest.MOVE_FOCUS_REQUEST,
-													false, true,
+		var request:SWFBridgeRequest = new SWFBridgeRequest(SWFBridgeRequest.MOVE_FOCUS_REQUEST,
+													false, true, null,
 													shiftKey ? FocusRequestDirection.BACKWARD :
 													  		   FocusRequestDirection.FORWARD);
 		var sandboxBridge:IEventDispatcher = _form.systemManager.swfBridgeGroup.parentBridge;

-		// if focus was changed, the handler will call event.preventDefault(),
-		// which will return "false".
-		focusChanged = !sandboxBridge.dispatchEvent(request);
+		// the handler will set the data property to whether focus changed
+		sandboxBridge.dispatchEvent(request);
+		focusChanged = request.data;

 		return focusChanged;
     }
@@ -2101,7 +2100,7 @@

 	       	// need to create the event locally so the "is this a message from ourselves"
 	       	// check works. Otherwise the message is created in the same domain.
-    		eObj = new SWFBridgeEvent(SWFBridgeEvent.NOTIFY_FOCUS_MANAGER_ACTIVATED);
+    		eObj = new SWFBridgeEvent(SWFBridgeEvent.BRIDGE_FOCUS_MANAGER_ACTIVATE);

 	       	// send message to top-level that we are active
 	       	if (parentBridge && parentBridge != lastBridge)


Transferred from the Adobe Open Source Subversion Repository

Revision: 20172
Author:   jszeto@adobe.com
Date:     2011-02-07T19:25:38.399211Z

Log Message:
-----------
VideoPlayer fullscreen mobile fix

SDK-27798 - s:Videoplayer does not go fullscreen on AIR on Android with the fullscreen button on the lower right corner

Added a try/catch around the call to get the nativeWindow bounds. Stage.nativeWindow is null on Android.

QE notes: none
Doc notes: none
Bugs: SDK-27798
Reviewer: Ryan
Tests run: checkintests
Is noteworthy for integration: no

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

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

--- frameworks/projects/spark/src/spark/components/VideoPlayer.as
+++ frameworks/projects/spark/src/spark/components/VideoPlayer.as
@@ -40,9 +40,9 @@
 import spark.components.mediaClasses.ScrubBar;
 import spark.components.mediaClasses.VolumeBar;
 import spark.components.supportClasses.ButtonBase;
-import spark.core.IDisplayText;
 import spark.components.supportClasses.SkinnableComponent;
 import spark.components.supportClasses.ToggleButtonBase;
+import spark.core.IDisplayText;
 import spark.events.TrackBaseEvent;

 use namespace mx_internal;
@@ -2036,19 +2036,25 @@
      */
     mx_internal function getScreenBounds():Rectangle
     {
+        var resultRect:Rectangle = new Rectangle(0, 0, stage.fullScreenWidth, stage.fullScreenHeight);
+
         if (screenClass)
         {
             // Get the screen where the application resides
-            var nativeWindowBounds:Rectangle = stage["nativeWindow"]["bounds"];
-            var currentScreen:Object = screenClass["getScreensForRectangle"](nativeWindowBounds)[0];
+            try
+            {
+                var nativeWindowBounds:Rectangle = stage["nativeWindow"]["bounds"];
+                var currentScreen:Object = screenClass["getScreensForRectangle"](nativeWindowBounds)[0];

-            // Return the bounds of that screen
-            return currentScreen["bounds"];
-        }
-        else
-        {
-            return new Rectangle(0, 0, stage.fullScreenWidth, stage.fullScreenHeight);
-        }
+                // Return the bounds of that screen
+                resultRect = currentScreen["bounds"];
+            }
+            catch (e:Error)
+            {
+            }
+        }
+
+        return resultRect;
     }

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


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

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

 package mx.controls.sliderClasses
 {


XMLLIst needed name() for single item lists

--- frameworks/projects/XML/src/main/flex/XMLList.as
+++ frameworks/projects/XML/src/main/flex/XMLList.as
@@ -437,6 +437,13 @@
 			return _xmlArray.length;
 		}

+		COMPILE::JS
+		public function name():QName
+		{
+			if(_xmlArray.length == 1)
+				return _xmlArray[0].name();
+			return null;
+		}
 		/**
 		 * Merges adjacent text nodes and eliminates empty text nodes for each of the following:
 		 * all text nodes in the XMLList, all the XML objects contained in the XMLList, and the descendants of all the XML objects in the XMLList.


wip on making Natural Jenks asynch

wip on making Natural Jenks asynch

--- WeaveData/src/weave/data/BinningDefinitions/NaturalJenksBinningDefinition.as
+++ WeaveData/src/weave/data/BinningDefinitions/NaturalJenksBinningDefinition.as
@@ -19,18 +19,21 @@

 package weave.data.BinningDefinitions
 {
+	import flash.utils.getTimer;
+
 	import mx.utils.ObjectUtil;

-	import weave.api.registerLinkableChild;
-	import weave.api.reportError;
+	import weave.api.WeaveAPI;
 	import weave.api.core.ILinkableHashMap;
 	import weave.api.data.IAttributeColumn;
 	import weave.api.data.IPrimitiveColumn;
 	import weave.api.data.IQualifiedKey;
+	import weave.api.registerLinkableChild;
+	import weave.api.reportError;
 	import weave.core.LinkableNumber;
 	import weave.data.BinClassifiers.NumberClassifier;
 	import weave.utils.AsyncSort;
-	import weave.utils.VectorUtils;
+	import weave.utils.VectorUtils;

 	/**
 	 * Implemented from Doug Curl (javascript) and Daniel J Lewis (python implementation) and  Simon Georget (Geostats)
@@ -52,127 +55,24 @@
 		// reusable temporary object
 		private static const _tempNumberClassifier:NumberClassifier = new NumberClassifier();

-
+		private var _output:ILinkableHashMap = null;
+		private var _column:IAttributeColumn = null;
 		override public function getBinClassifiersForColumn(column:IAttributeColumn, output:ILinkableHashMap):void
 		{
-			var name:String;
+			_output = output;
+			_column = column;
 			// clear any existing bin classifiers
-			output.removeAllObjects();
-
-			var breaks:Array = getJenksBreak(column);
-
-			var binMin:Number;
-			var binMax:Number;
-
-
-			for (var iBin:int = 0; iBin < numOfBins.value; iBin++)
-			{
-				var minIndex:Number;
-				if(iBin == 0)
-				{
-					minIndex = 0;
-				}
-				else
-				{
-					minIndex = _previousSortedValues.lastIndexOf(_previousBreaks[iBin]);
-					minIndex = minIndex +1;
-				}
-
-				_tempNumberClassifier.min.value = _previousSortedValues[minIndex];
-
-				var maxIndex:Number;
-				if(iBin == numOfBins.value -1)
-				{
-					maxIndex = _previousSortedValues.length -1;
-				}
-				else
-				{
-					/* Get the index of the next break */
-					maxIndex = _previousSortedValues.lastIndexOf(_previousBreaks[iBin+1]);
-				}
-				_tempNumberClassifier.max.value = _previousSortedValues[maxIndex];
-				_tempNumberClassifier.minInclusive.value = true;
-				_tempNumberClassifier.maxInclusive.value = true;
-
-				//first get name from overrideBinNames
-				name = getOverrideNames()[iBin];
-				//if it is empty string set it from generateBinLabel
-				if(!name)
-					name = _tempNumberClassifier.generateBinLabel(column as IPrimitiveColumn);
-				output.requestObjectCopy(name, _tempNumberClassifier);
-			}
-
-		}
-
-		/* This function returns the Good Fit Value for the breaks. Not used but just in case*/
-		private function getGVF(column:IAttributeColumn):Number
-		{
-			var listMean:Number = getSumOfNumbers(_previousSortedValues);
-
-			var SDAM:Number = 0;
-			var sqDev:Number = 0;
-
-			for(var i:int =0; i < _previousSortedValues.length; i++)
-			{
-				sqDev = Math.pow((_previousSortedValues[i]- listMean), 2);
-				SDAM += sqDev;
-			}
-
-
-			var SDCM:Number = 0;
-			var preSDCM:Number;
-			var classStart:Number;
-			var classEnd:Number;
-			var classValues:Array;
-			var classMean:Number;
-			var sqDev2:Number;
-
-			for(var j:int =0; j < numOfBins.value; j++)
-			{
-				if(_previousBreaks[j] ==0)
-				{
-					classStart = 0;
-				}
-				else
-				{
-					classStart = _previousSortedValues.indexOf(_previousBreaks[j]);
-					classStart += 1;
-				}
-
-				classEnd = _previousSortedValues.indexOf(_previousBreaks[j+1]);
-
-				classValues = _previousSortedValues.slice(classStart,classEnd);
-
-				classMean = getSumOfNumbers(classValues)/classValues.length;
-
-				for(var k:int =0; k < classValues.length; k++)
-				{
-					sqDev2 = Math.pow((classValues[k] - classMean),2);
-					preSDCM += sqDev2;
-				}
-
-				SDCM += preSDCM;
-			}
-
-			return (SDAM - SDCM)/SDAM;
-
-		}
-
-		private var _previousSortedValues:Array = [];
-		private var _previousBreaks:Array = [];
-
-		private function getJenksBreak(column:IAttributeColumn):Array
-		{
-			_previousBreaks.length = 0;
+			_output.removeAllObjects();
+
 			_previousSortedValues.length = 0;

-			var sortedValues:Array = getSortedNumbersFromColumn(column);
-
-			VectorUtils.copy(sortedValues,_previousSortedValues);
-
-			var mat1:Array = [];
-			var mat2:Array = [];
-			for (var i:int = 0; i < sortedValues.length+1; i++)
+			_sortedValues = getSortedNumbersFromColumn(_column);
+
+			VectorUtils.copy(_sortedValues,_previousSortedValues);
+
+			_mat1 = [];
+			_mat2 = [];
+			for (var i:int = 0; i < _sortedValues.length+1; i++)
 			{
 				var temp1:Array = [];
 				var temp2:Array = [];
@@ -182,79 +82,105 @@
 					temp1.push(0);
 					temp2.push(0);
 				}
-				mat1.push(temp1);
-				mat2.push(temp2);
+				_mat1.push(temp1);
+				_mat2.push(temp2);
 			}

 			for (var k:int =1; k < numOfBins.value + 1; k++)
 			{
-				mat1[0][k] = 1;
-				mat2[0][k] = 0;
-
-				for (var t:int =1; t<sortedValues.length+1; t++)
-				{
-					mat2[t][k] = Number.POSITIVE_INFINITY;
-				}
-			}
-
-			var v:Number = 0;
-
-			for (var count:int = 2; count < sortedValues.length + 1; count++)
-			{
-				var s1:Number = 0;
-				var s2:Number = 0;
-
-				var w:Number = 0;
-
-				for(var m:int = 1; m < count + 1; m++)
-				{
-					var i3:Number = count - m +1;
-					var val:Number = sortedValues[i3-1];
+				_mat1[0][k] = 1;
+				_mat2[0][k] = 0;
+
+				for (var t:int =1; t<_sortedValues.length+1; t++)
+				{
+					_mat2[t][k] = Number.POSITIVE_INFINITY;
+				}
+			}
+
+			_v = 0;
+			_count = 2;
+
+			WeaveAPI.StageUtils.startTask(this,_iterateJenksBreaks,WeaveAPI.TASK_PRIORITY_PARSING,_handleJenksBreaks);
+
+		}
+
+		private var _previousSortedValues:Array = [];
+		private var _sortedValues:Array = [];
+		private var _mat1:Array = [];
+		private var _mat2:Array = [];
+		private var _count:int = 2;
+		private var _m:int = 1;
+		private var _v:Number = 0;
+		private var _s1:Number = 0;
+		private var _s2:Number = 0;
+
+		private var _w:Number = 0;
+		private function _iterateJenksBreaks(returnTime:int):Number
+		{
+			for (; _count < _sortedValues.length + 1; _count++)
+			{
+				_s1= 0;
+				_s2= 0;
+				_w= 0;
+				_m =1;
+
+				for(; _m < _count + 1; _m++)
+				{
+					if(getTimer()>returnTime)
+					{
+						return 0;
+					}
+					var i3:Number = _count - _m +1;
+					var val:Number = _sortedValues[i3-1];

-					s2 += val * val;
-					s1 += val;
+					_s2 += val * val;
+					_s1 += val;

-					w += 1;
-					v = s2 - (s1 * s1) / w;
+					_w += 1;
+					_v = _s2 - (_s1 * _s1) / _w;
 					var i4:Number= i3 -1;
 					if(i4 !=0)
 					{
 						for (var p:Number = 2; p < numOfBins.value + 1; p++)
 						{
-							if((mat2[count][p]) >= (v + mat2[i4][p-1]))
+							if((_mat2[_count][p]) >= (_v + _mat2[i4][p-1]))
 							{
-								mat1[count][p] = i3;
-								mat2[count][p] = v + mat2[i4][p-1];
+								_mat1[_count][p] = i3;
+								_mat2[_count][p] = _v +_mat2[i4][p-1];
 							}
 						}
 					}
 				}
-				mat1[count][1] = 1;
-				mat2[count][1] = v;
-			}
-
-			var kClassCount:Number =  sortedValues.length;
+				_mat1[_count][1] = 1;
+				_mat2[_count][1] = _v;
+			}
+			return 1;
+		}
+
+		private function _handleJenksBreaks():void
+		{
+			var kClassCount:Number =  _sortedValues.length;
 			var kClass:Array = [];

-			for(i = 0; i < numOfBins.value +1; i++)
+			for(var i:int = 0; i < numOfBins.value +1; i++)
 			{
 				kClass.push(0);
 			}

 			//this is the last number in the array
-			kClass[numOfBins.value] = sortedValues[sortedValues.length -1];
+			kClass[numOfBins.value] = _sortedValues[_sortedValues.length -1];

 			//this is the first numer in the array
-			kClass[0] = sortedValues[0];
+			kClass[0] = _sortedValues[0];

 			var countNum:Number = numOfBins.value;

 			while (countNum >=2)
 			{
-				var id:Number = mat1[kClassCount][countNum] -2;
-				kClass[countNum -1] = sortedValues[id];
-				kClassCount = mat1[kClassCount][countNum] -1;
+				var id:Number = _mat1[kClassCount][countNum] -2;
+				kClass[countNum -1] = _sortedValues[id];
+				kClassCount = _mat1[kClassCount][countNum] -1;
 				// spits out the rank and value of the break values:
 				// console.log("id="+id,"rank = " + String(mat1[k][countNum]),"val =
 				// " + String(dataList[id]))
@@ -269,8 +195,46 @@
 				kClass[0] = 0
 			}

-			VectorUtils.copy(kClass,_previousBreaks);
-			return kClass;
+			var binMin:Number;
+			var binMax:Number;
+
+
+			for (var iBin:int = 0; iBin < numOfBins.value; iBin++)
+			{
+				var minIndex:Number;
+				if(iBin == 0)
+				{
+					minIndex = 0;
+				}
+				else
+				{
+					minIndex = _previousSortedValues.lastIndexOf(kClass[iBin]);
+					minIndex = minIndex +1;
+				}
+
+				_tempNumberClassifier.min.value = _previousSortedValues[minIndex];
+
+				var maxIndex:Number;
+				if(iBin == numOfBins.value -1)
+				{
+					maxIndex = _previousSortedValues.length -1;
+				}
+				else
+				{
+					/* Get the index of the next break */
+					maxIndex = _previousSortedValues.lastIndexOf(kClass[iBin+1]);
+				}
+				_tempNumberClassifier.max.value = _previousSortedValues[maxIndex];
+				_tempNumberClassifier.minInclusive.value = true;
+				_tempNumberClassifier.maxInclusive.value = true;
+
+				//first get name from overrideBinNames
+				var name:String = getOverrideNames()[iBin];
+				//if it is empty string set it from generateBinLabel
+				if(!name)
+					name = _tempNumberClassifier.generateBinLabel(_column as IPrimitiveColumn);
+				_output.requestObjectCopy(name, _tempNumberClassifier);
+			}
 		}

 		private function getSumOfNumbers(list:Array):Number
@@ -310,5 +274,59 @@
 			return sortedColumn;
 		}

+		/* This function returns the Good Fit Value for the breaks. Not used but just in case*/
+//		private function getGVF(column:IAttributeColumn):Number
+//		{
+//			var listMean:Number = getSumOfNumbers(_previousSortedValues);
+//
+//			var SDAM:Number = 0;
+//			var sqDev:Number = 0;
+//
+//			for(var i:int =0; i < _previousSortedValues.length; i++)
+//			{
+//				sqDev = Math.pow((_previousSortedValues[i]- listMean), 2);
+//				SDAM += sqDev;
+//			}
+//
+//
+//			var SDCM:Number = 0;
+//			var preSDCM:Number;
+//			var classStart:Number;
+//			var classEnd:Number;
+//			var classValues:Array;
+//			var classMean:Number;
+//			var sqDev2:Number;
+//
+//			for(var j:int =0; j < numOfBins.value; j++)
+//			{
+//				if(_previousBreaks[j] ==0)
+//				{
+//					classStart = 0;
+//				}
+//				else
+//				{
+//					classStart = _previousSortedValues.indexOf(_previousBreaks[j]);
+//					classStart += 1;
+//				}
+//
+//				classEnd = _previousSortedValues.indexOf(_previousBreaks[j+1]);
+//
+//				classValues = _previousSortedValues.slice(classStart,classEnd);
+//
+//				classMean = getSumOfNumbers(classValues)/classValues.length;
+//
+//				for(var k:int =0; k < classValues.length; k++)
+//				{
+//					sqDev2 = Math.pow((classValues[k] - classMean),2);
+//					preSDCM += sqDev2;
+//				}
+//
+//				SDCM += preSDCM;
+//			}
+//
+//			return (SDAM - SDCM)/SDAM;
+//
+//		}
+
 	}
 }


Only return a fuse to its start position if we are not holding it (i.e., override behavior if we are manually removing it).


MeasuremableControl now listens to the stage's invalidation rather than its own: allows the rendering to happen faster

--- src/org/openPyro/core/MeasurableControl.as
+++ src/org/openPyro/core/MeasurableControl.as
@@ -571,7 +571,7 @@
 			}else{
 				if(this.stage){
 					stage.invalidate();
-					this.addEventListener(Event.RENDER, validateDisplayList);
+					this.stage.addEventListener(Event.RENDER, validateDisplayList);
 				}

 			}


Transferred from the Adobe Open Source Subversion Repository

Revision: 21967
Author:   ksimm@adobe.com
Date:     2011-08-12T22:42:12.578702Z

Log Message:
-----------
SDK-31119: Setting locale to null displays the correct date and year.
SDK-31056: Change default min and max date to limit.

QE notes: none
Doc notes: none
Bugs: SDK-31056, SDK-31119
Reviewer: Tom Kraikit
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/DateSpinner.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/DateAndTimeProvider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/YearProvider.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/DateSpinner.as
+++ frameworks/projects/mobilecomponents/src/spark/components/DateSpinner.as
@@ -193,6 +193,9 @@
     private static const AM:String = "am";
     private static const PM:String = "pm";

+    // default min/max date
+    private static const MIN_DATE_DEFAULT:Date = new Date(1601, 0, 1);
+    private static const MAX_DATE_DEFAULT:Date = new Date(9999, 11, 31, 23, 59, 59, 999);

     //--------------------------------------------------------------------------
     //
@@ -409,7 +412,6 @@

     private var _maxDate:Date;

-    private var _maxDateDefault:Date;
     private var maxDateChanged:Boolean = false;

     /**
@@ -424,7 +426,7 @@
      */
     public function get maxDate():Date
     {
-        return _maxDate != null ? _maxDate : _maxDateDefault;
+        return _maxDate != null ? _maxDate : MAX_DATE_DEFAULT;
     }

     public function set maxDate(value:Date):void
@@ -447,7 +449,6 @@

     private var _minDate:Date;

-    private var _minDateDefault:Date;
     private var minDateChanged:Boolean = false;

     /**
@@ -463,7 +464,7 @@
      */
     public function get minDate():Date
     {
-        return _minDate != null ? _minDate : _minDateDefault;
+        return _minDate != null ? _minDate : MIN_DATE_DEFAULT;
     }

     public function set minDate(value:Date):void
@@ -627,8 +628,6 @@
         if (displayModeChanged)
         {
             setupDateItemLists();
-
-            setDefaultRangeValues();

             displayModeChanged = false;
             listsNewlyCreated = true;
@@ -1472,22 +1471,6 @@
             dayMonthDateFormatter.setStyle("locale", localeStr);
         else
             dayMonthDateFormatter.clearStyle("locale");
-    }
-
-    private function setDefaultRangeValues():void
-    {
-        if (displayMode == DateSelectorDisplayMode.DATE_AND_TIME)
-        {
-            _minDateDefault = new Date(selectedDate.time);
-            _minDateDefault.date -= Math.floor(DEFAULT_DATE_RANGE / 2);
-            _maxDateDefault = new Date(selectedDate.time);
-            _maxDateDefault.date += Math.floor(DEFAULT_DATE_RANGE / 2);
-        }
-        else if (displayMode == DateSelectorDisplayMode.DATE)
-        {
-            _minDateDefault = new Date(1601, 0, 1);
-            _maxDateDefault = new Date(9999, 12, 31);
-        }
     }

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 16776
Author:   klin@adobe.com
Date:     2010-07-01T17:57:16.317108Z

Log Message:
-----------
The following changes apply to Spark DataGrid only.   Code reviews have been deferred until the implementation is closer to completion.

-update getRowBounds and getColumnBounds to be more efficient.
-getCellBounds returns null when you provide it with indices that are out of bounds. Updated GridLayout to account for the null case.

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

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
@@ -461,6 +461,8 @@
         const startColIndex:int = gridDimensions.getColumnIndexAt(scrollX, scrollY);
         const startRowIndex:int = gridDimensions.getRowIndexAt(scrollX, scrollY);
         const startCellR:Rectangle = gridDimensions.getCellBounds(startRowIndex, startColIndex);
+        if (!startCellR)
+            return;

         // Compute newVisibleColumns


Transferred from the Adobe Open Source Subversion Repository

Revision: 17342
Author:   cframpto@adobe.com
Date:     2010-08-17T01:20:45.252725Z

Log Message:
-----------
- When scrolling the hover goes away until you move the mouse over the grid or you mouse up over the grid.
- The typicalItem is now measured with wordWrap=false.
- Default requestedRowCount is now 10.
- Fixed several alternatingRowColorsBackground issues.
- If singleCell or singleRow selection and you shift-<key>, the caret will move to the new position as before, and the selection will now move to the new position as well since it can’t extend to the new position.

QE notes: 2 of these fixes will change the geometry of the grid - excluded DG tests have to be updated
Doc notes:
Bugs: SDK-27322, SDK-27440, SDK-27419, SDK-27412, SDK-26845, SDK-27409, SDK-27408,  SDK-27402, SDK-27229
Reviewer: Hans
Tests run: checkintests, 2 cyclones and 2 runs of DataGrid tests locally, all of which produced different results with the same code!
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DataGridSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
@@ -40,6 +40,7 @@
 import spark.layouts.supportClasses.LayoutBase;
 import spark.primitives.supportClasses.GraphicElement;
 import spark.skins.spark.DefaultGridItemRenderer;
+import spark.skins.spark.DefaultGridItemRenderer;

 use namespace mx_internal;

@@ -196,17 +197,9 @@
         if (!grid)
             return;

-        // If the hoverIndicator is visible then we're going to have to fixup its location
-        // at updateDisplayList() time.
-
-        if ((grid.hoverRowIndex != -1) || (grid.hoverColumnIndex != -1))
-        {
-            const oldScrollR:Rectangle = grid.scrollRect;
-            const dx:Number = grid.horizontalScrollPosition - oldScrollR.x;
-            const dy:Number = grid.verticalScrollPosition - oldScrollR.y;
-            invalidateHoverLocation(dx, dy);
-        }
-
+        grid.hoverRowIndex = -1;
+        grid.hoverColumnIndex = -1;
+
         super.scrollPositionChanged();  // sets grid.scrollRect

         // Only invalidate if we're clipping and scrollR extends outside validBounds
@@ -454,7 +447,16 @@
 		grid.itemRendererGroup.addElement(renderer);

 		initializeItemRenderer(renderer, 0 /* rowIndex */, columnIndex, grid.typicalItem, false);
-		layoutItemRenderer(renderer, 0, 0, column.width, NaN);
+
+        // The default width of a TextField is 100.  If autoWrap is true, and
+        // multiline is true, the measured text will wrap if it is wider than
+        // the width. This is not what we want when measuring the typicalItem
+        // unless the width is explicitly set on the column.
+        var w:Number =
+            !isNaN(column.width) || !(renderer is DefaultGridItemRenderer) ?
+            column.width : UIComponent.DEFAULT_MAX_WIDTH;
+
+		layoutGridElement(renderer, 0, 0, w, NaN);

 		grid.itemRendererGroup.removeElement(renderer);
 		return renderer;
@@ -924,6 +926,8 @@
     {
         renderer.visible = visible;

+        // This is needed so DataGrid's NonInheriting styles will be seen
+        // by the renderer.
         if (renderer is ISimpleStyleClient)
             ISimpleStyleClient(renderer).styleName = grid.gridOwner;

@@ -1469,39 +1473,11 @@
     }

-    private var hoverLocationIsValid:Boolean = true;
     private var mouseXOffset:Number = 0;
     private var mouseYOffset:Number = 0;
-
-    /**
-     *  @private
-     *  In theory it would be enough to just set a flag here and then fixup the
-     *  grid's hoverRow,ColumnIndex properties at updateDisplayList() time, based
-     *  on the current mouse position (grid.mouseX,Y).  Unfortunately, the mouseX,Y
-     *  DisplayObject properties aren't updated per the scrollRect until after
-     *  the new layout has appeared on screen.  To account for that we accumulate
-     *  the deltas for grid.scrollRect.x,y here.
-     */
-    private function invalidateHoverLocation(dx:Number, dy:Number):void
-    {
-        hoverLocationIsValid = false;
-        mouseXOffset += dx;
-        mouseYOffset += dy;
-    }
-
+
     private function layoutHoverIndicator(container:IVisualElementContainer):void
     {
-        if (!hoverLocationIsValid)
-        {
-            const mouseX:Number = grid.mouseX + mouseXOffset;
-            const mouseY:Number = grid.mouseY + mouseYOffset;
-            grid.hoverRowIndex = gridDimensions.getRowIndexAt(mouseX, mouseY);
-            grid.hoverColumnIndex = gridDimensions.getColumnIndexAt(mouseX, mouseY);
-            hoverLocationIsValid = true;
-            mouseXOffset = 0;
-            mouseYOffset = 0;
-        }
-
         const rowIndex:int = grid.hoverRowIndex;
         const columnIndex:int = grid.hoverColumnIndex;
         const factory:IFactory = grid.hoverIndicator;


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

--- frameworks/projects/framework/src/mx/core/IConstraintClient.as
+++ frameworks/projects/framework/src/mx/core/IConstraintClient.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.core
 {


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

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


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

--- frameworks/projects/spark/src/spark/components/VideoDisplay.as
+++ frameworks/projects/spark/src/spark/components/VideoDisplay.as
@@ -1690,4 +1690,4 @@
         videoPlayer.muted = beforeLoadMuted;
     }
 }
-}+}


fix typo & event name

fix typo & event name

--- actionscript/src/com/freshplanet/ane/AirInAppPurchase/InAppPurchase.as
+++ actionscript/src/com/freshplanet/ane/AirInAppPurchase/InAppPurchase.as
@@ -158,7 +158,7 @@
                 var jsonPurchases:String = "[" + _iosPendingPurchases.join(",") + "]";
                 var jsonData:String = "{ \"purchases\": " + jsonPurchases + "}";

-                _dispatchEvent(InAppPurchaseEvent.RESTORE_INFO_RECEIVED, jsonData);
+                _dispatchEvent(InAppPurchaseEvent.RESåTORE_INFO_RECEIVED, jsonData);
             }
         }

@@ -167,7 +167,7 @@
         {
             _iosPendingPurchases = new Vector.<Object>();
             if (!isSupported || _isAndroid()) {
-                _dispatchEvent(InAppPurchaseEvent.CLEAR_TRANSACTIONS_ERROR, "clear transactions not supported");
+                _dispatchEvent("CLEAR_TRANSACTIONS_ERROR", "clear transactions not supported");
             } else if (_isIOS()) {
                 _context.call("clearTransactions");
             }


code clarity and documentation

code clarity and documentation

--- actionscript/src/com/freshplanet/ane/AirInAppPurchase/InAppPurchase.as
+++ actionscript/src/com/freshplanet/ane/AirInAppPurchase/InAppPurchase.as
@@ -32,10 +32,6 @@

         private static var _instance:InAppPurchase = null;

-        /**
-         *
-         * @param lock
-         */
 		public function InAppPurchase(lock:SingletonLock) {

             if (!isSupported)
@@ -49,9 +45,6 @@
             _context.addEventListener(StatusEvent.STATUS, _onStatus);
 		}

-        /**
-         *
-         */
         public static function get instance():InAppPurchase {

             if (!_instance)
@@ -60,15 +53,21 @@
             return _instance;
         }

-        /**
-         *
-         */
         public static function get isSupported():Boolean {
-            return Capabilities.manufacturer.indexOf('iOS') > -1 || Capabilities.manufacturer.indexOf('Android') > -1;
-        }
-
-        /**
-         *
+            return _isIOS() || _isAndroid();
+        }
+
+        private static function _isIOS():Boolean {
+            return Capabilities.manufacturer.indexOf("iOS") > -1;
+        }
+
+        private static function _isAndroid():Boolean {
+            return Capabilities.manufacturer.indexOf("Android") > -1;
+        }
+
+        /**
+         * INIT_SUCCESSFUL
+         * INIT_ERROR
          * @param googlePlayKey
          * @param debug
          */
@@ -82,7 +81,8 @@
 		}

         /**
-         *
+         * PURCHASE_SUCCESSFUL
+         * PURCHASE_ERROR
          * @param productId
          */
 		public function makePurchase(productId:String):void {
@@ -96,9 +96,27 @@
             trace("[InAppPurchase] purchasing", productId);
             _context.call("makePurchase", productId);
 		}
+
+        /**
+         * PURCHASE_SUCCESSFUL
+         * PURCHASE_ERROR
+         * @param productId
+         */
+        public function makeSubscription(productId:String):void {
+
+            if (_isAndroid()) {
+
+                trace("[InAppPurchase] check user can make a subscription");
+                _context.call("makeSubscription", productId);
+            }
+            else {
+                _dispatchEvent(InAppPurchaseEvent.PURCHASE_ERROR, "subscriptions not supported");
+            }
+        }

         /**
-         * receipt is for android device.
+         * CONSUME_SUCCESSFUL
+         * CONSUME_ERROR
          * @param productId
          * @param receipt
          */
@@ -110,25 +128,30 @@
             trace("[InAppPurchase] removing product from queue", productId, receipt);
             _context.call("removePurchaseFromQueue", productId, receipt);

-            if (Capabilities.manufacturer.indexOf("iOS") > -1)
-            {
-                _iosPendingPurchases = _iosPendingPurchases.filter(function(jsonPurchase:String, index:int, purchases:Vector.<Object>):Boolean {
-                    try
-                    {
+            if (Capabilities.manufacturer.indexOf("iOS") > -1) {
+
+                var filterPurchase:Function = function(jsonPurchase:String, index:int, purchases:Vector.<Object>):Boolean {
+
+                    try {
+
                         var purchase:Object = JSON.parse(jsonPurchase);
                         return JSON.stringify(purchase.receipt) != receipt;
                     }
-                    catch(error:Error)
-                    {
+                    catch (error:Error) {
                         trace("[InAppPurchase] Couldn't parse purchase: " + jsonPurchase);
                     }
+
                     return false;
-                });
-            }
-		}
-
-        /**
-         *
+                };
+
+                _iosPendingPurchases = _iosPendingPurchases.filter(filterPurchase);
+
+            }
+		}
+
+        /**
+         * PRODUCT_INFO_RECEIVED
+         * PRODUCT_INFO_ERROR
          * @param productsId
          * @param subscriptionIds
          */
@@ -145,30 +168,14 @@
 		}

         /**
-         * PURCHASE_ERROR
-         * PURCHASE_ERROR
-         * @param productId
-         */
-		public function makeSubscription(productId:String):void {
-
-			if (Capabilities.manufacturer.indexOf('Android') > -1) {
-
-				trace("[InAppPurchase] check user can make a subscription");
-				_context.call("makeSubscription", productId);
-			}
-            else {
-                _dispatchEvent(InAppPurchaseEvent.PURCHASE_ERROR, "subscriptions not supported");
-			}
-		}
-
-        /**
          * RESTORE_INFO_RECEIVED
+         * RESTORE_INFO_ERROR
          */
 		public function restoreTransactions():void {

-			if (Capabilities.manufacturer.indexOf('Android') > -1)
+			if (_isAndroid())
 				_context.call("restoreTransaction");
-			else if (Capabilities.manufacturer.indexOf("iOS") > -1) {
+			else if (_isIOS()) {

 				var jsonPurchases:String = "[" + _iosPendingPurchases.join(",") + "]";
 				var jsonData:String = "{ \"purchases\": " + jsonPurchases + "}";
@@ -194,7 +201,7 @@

 			trace(event);

-            if (event.code == InAppPurchaseEvent.PURCHASE_SUCCESSFUL && Capabilities.manufacturer.indexOf("iOS") > -1)
+            if (event.code == InAppPurchaseEvent.PURCHASE_SUCCESSFUL && _isIOS())
                 _iosPendingPurchases.push(event.level);

             _dispatchEvent(event.code, event.level);


Transferred from the Adobe Open Source Subversion Repository

Revision: 7866
Author:   jszeto@adobe.com
Date:     2009-06-15T23:11:45.128254Z

Log Message:
-----------
GraphicElement PARB Changes

- Deprecated mx.graphics.RoundedRectangle
- Added mx.geom.RoundedRectangle
- Removed GraphicElement.getStroke
- Moved code from GraphicElement.getStrokeExtents into StrokedElement.
- Updated the dependency checker

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: Evtim

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/StrokedElement.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/RoundedRectangle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/layouts/WheelLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/preloaders/DownloadProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/ViewStack.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/RoundedRectangle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/DissolveInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Dissolve.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>

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

--- frameworks/projects/framework/src/mx/preloaders/DownloadProgressBar.as
+++ frameworks/projects/framework/src/mx/preloaders/DownloadProgressBar.as
@@ -34,8 +34,9 @@
 import flash.utils.getTimer;
 import mx.events.FlexEvent;
 import mx.events.RSLEvent;
+import mx.geom.RoundedRectangle;
 import mx.graphics.RectangularDropShadow;
-import mx.graphics.RoundedRectangle;
+

 /**
  *  The DownloadProgressBar class displays download progress.