Transferred from the Adobe Open Source Subversion Repository

Revision: 16665
Author:   rfrishbe@adobe.com
Date:     2010-06-24T22:40:15.397962Z

Log Message:
-----------
Initial checkin for touch-enabled Lists.  This has not been code reviewed or spec-approved.  There will be lots of changes that will occur with this, but this will allow people to easily create touch-enabled Lists

QE notes: None
Doc notes: None
Bugs: -
Reviewer: None - this will get reviewed later
Tests run: checkintests, full mustella run (some tests failed and were off by a few pixels)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/MobileThemeClasses.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/TouchScrollingEasing.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/TouchScrollEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarTrackSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/core/IViewport.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/ScrollPolicy.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarSkin.as</path>

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

--- frameworks/projects/mobiletheme/src/MobileThemeClasses.as
+++ frameworks/projects/mobiletheme/src/MobileThemeClasses.as
@@ -34,6 +34,7 @@
 import spark.skins.mobile.TabBarSkin; spark.skins.mobile.TabBarSkin;
 import spark.skins.mobile.TabButtonSkin; TabButtonSkin;
 import spark.skins.mobile.ToolbarSkin; ToolbarSkin;
+import spark.skins.mobile.HScrollBarSkin; spark.skins.mobile.HScrollBarSkin;
 import spark.skins.mobile.VScrollBarSkin; spark.skins.mobile.VScrollBarSkin;
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 14377
Author:   jszeto@adobe.com
Date:     2010-02-24T00:35:29.121565Z

Log Message:
-----------
Merging revision 14376 from 4.x to trunk

Mirroring bug fixes

http://bugs.adobe.com/jira/browse/SDK-25427 - HTML AIR component should not be mirrored even when layoutDirection=rtl

Set layoutDirection=ltr in defaults.css

http://bugs.adobe.com/jira/browse/SDK-25626 - The Spark VSlider dataTip is not positioned correctly when layoutDirection=rtl. It obscures the thumb.

Translate the position from mirrored local coordinate to global coordinates.

http://bugs.adobe.com/jira/browse/SDK-25584 - MX MenuBar displays menus offscreen when layoutDirection is rtl

Added logic to keep the menus from going off the left side of the screen.

QE notes: none
Doc notes: none
Bugs: SDK-25427, SDK-25626, SDK-25584
Reviewer: Hans
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
<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/spark/src/spark/components/VSlider.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/defaults.css</path>

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

--- frameworks/projects/spark/src/spark/components/VSlider.as
+++ frameworks/projects/spark/src/spark/components/VSlider.as
@@ -157,21 +157,22 @@

         if (tipAsDisplayObject && thumb)
         {
+            // Get the tips bounds. We only care about the dimensions.
+            var tipBounds:Rectangle = tipAsDisplayObject.getBounds(tipAsDisplayObject.parent);
             var relY:Number = thumb.getLayoutBoundsY() +
                             (thumb.getLayoutBoundsHeight() - tipAsDisplayObject.height) / 2;
-            var o:Point = new Point(initialPosition.x, relY);
+            var relX:Number = layoutDirection == "rtl" ? initialPosition.x + tipBounds.width : initialPosition.x;
+            var o:Point = new Point(relX, relY);
             var r:Point = thumb.parent.localToGlobal(o);

             // Get the screen bounds
             var screenBounds:Rectangle = systemManager.getVisibleApplicationRect();
-            // Get the tips bounds. We only care about the dimensions.
-            var tipBounds:Rectangle = tipAsDisplayObject.getBounds(tipAsDisplayObject.parent);

-                // Make sure the tip doesn't exceed the bounds of the screen
-                r.x = Math.floor( Math.max(screenBounds.left,
-                                    Math.min(screenBounds.right - tipBounds.width, r.x)));
-                r.y = Math.floor( Math.max(screenBounds.top,
-                                    Math.min(screenBounds.bottom - tipBounds.height, r.y)));
+            // Make sure the tip doesn't exceed the bounds of the screen
+            r.x = Math.floor( Math.max(screenBounds.left,
+                                Math.min(screenBounds.right - tipBounds.width, r.x)));
+            r.y = Math.floor( Math.max(screenBounds.top,
+                                Math.min(screenBounds.bottom - tipBounds.height, r.y)));

             r = tipAsDisplayObject.parent.globalToLocal(r);
             tipAsDisplayObject.x = r.x;


Transferred from the Adobe Open Source Subversion Repository

Revision: 8487
Author:   smgilson@adobe.com
Date:     2009-07-09T18:57:21.985536Z

Log Message:
-----------
final 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@1283562 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/effects/CallAction.as
+++ frameworks/projects/spark/src/spark/effects/CallAction.as
@@ -33,7 +33,7 @@
  *
  *  @mxml
  *
- *
The <mx:CallAction> tag
+ *
The <s:CallAction> tag
  *  inherits all of the tag attributes of its superclass,
  *  and adds the following tag attributes:

  *


Transferred from the Adobe Open Source Subversion Repository

Revision: 14608
Author:   jszeto@adobe.com
Date:     2010-03-05T20:06:31.473500Z

Log Message:
-----------
Merge revision 14607 from 4.x to trunk

http://bugs.adobe.com/jira/browse/SDK-25723 - The gripper in a Spark Window (with Flex chrome) should be flipped when layoutDirection="rtl"

Cleared out the layoutDirection property for the BitmapImage containing the gripper skin

http://bugs.adobe.com/jira/browse/SDK-25698 - Popup doesn't inherit rtl layoutDierction from its parent PopupButton

Fixed PopupButton, ColorPicker and DateField to open the dropDown from right to left. For PopUpButton and ColorPicker, this means that the right edge of the dropdown should align with the right edge of the anchor button. For DateField, this means the right edge of the dropdown should align with the right edge of the calendar icon.

In ColorPicker, I had to validate the dropDown in order to get its width. ComboBox, PopupButton and DateField create their dropdowns early or perform the validation when it is first opened.

QE notes: n/a
Doc notes: n/a
Bugs: SDK-25723, SDK-25698
Reviewer: Kevin
Tests run: checkintests, ColorPicker, PopUpButton, DateField
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airspark/src/spark/skins/spark/windowChrome/GripperSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>

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

--- frameworks/projects/mx/src/mx/controls/ColorPicker.as
+++ frameworks/projects/mx/src/mx/controls/ColorPicker.as
@@ -1184,6 +1184,14 @@

             dropdownSwatch.cacheAsBitmap = true;
             dropdownSwatch.scrollRect = new Rectangle(0, 0, 0, 0);
+
+            PopUpManager.addPopUp(dropdownSwatch, this);
+
+            UIComponentGlobals.layoutManager.validateClient(dropdownSwatch, true);
+            dropdownSwatch.setActualSize(
+                dropdownSwatch.getExplicitOrMeasuredWidth(),
+                dropdownSwatch.getExplicitOrMeasuredHeight());
+            dropdownSwatch.validateDisplayList();
         }

         dropdownSwatch.scaleX = scaleX;
@@ -1201,10 +1209,6 @@
         if (show == showingDropdown)
             return;

-        // Find global position for the dropdown
-        var point:Point = new Point(layoutDirection == "rtl" ? unscaledWidth : 0, 0);
-        point = localToGlobal(point);
-
         // Show or hide the dropdown
         var initY:Number;
         var endY:Number;
@@ -1217,7 +1221,14 @@

         if (show) // Open
         {
-            getDropdown();
+            getDropdown();
+
+            // Find global position for the dropdown
+            var point:Point = new Point(layoutDirection == "rtl" ?
+                                        dropdownSwatch.getExplicitOrMeasuredWidth() : 0,
+                                        0);
+            point = localToGlobal(point);
+
             if (dropdownSwatch.parent == null)
                 PopUpManager.addPopUp(dropdownSwatch, parent, false);
             else
@@ -1263,6 +1274,8 @@
                 // Dropdown appears to the left instead of right
                 point.x -= (dropdownSwatch.width - width);
             }
+
+            point.x = Math.max(point.x, 0);

             // Position the dropdown
             point = dropdownSwatch.parent.globalToLocal(point);


Transferred from the Adobe Open Source Subversion Repository

Revision: 2015
Author:   jimurphy@adobe.com
Date:     2008-06-10T14:08:06.239404Z

Log Message:
-----------
Merge 3.0.x revisions [2000,2012] -> trunk

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>

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

--- frameworks/projects/mx/src/mx/controls/PopUpButton.as
+++ frameworks/projects/mx/src/mx/controls/PopUpButton.as
@@ -769,6 +769,11 @@
         }
         else
         {
+            showingPopUp = show;
+
+            if (_popUp.parent == null)
+                return;
+
             point = _popUp.parent.globalToLocal(point);

             endY = (point.y + _popUp.height > screen.height &&
@@ -776,7 +781,6 @@
                                ? -_popUp.height - 2
                                : _popUp.height + 2);
             initY = 0;
-            showingPopUp = show;
             duration = getStyle("closeDuration")
             easingFunction = getStyle("closeEasingFunction") as Function;
         }
@@ -1135,7 +1139,6 @@
         // we'll be leaked.
         if (_popUp) {
             PopUpManager.removePopUp(_popUp);
-            _popUp = null;
         }
     }


Reduced frequency of branches (effectively, less likely to appear at the very end of a program)

--- src/Testing/Tests/Test.as
+++ src/Testing/Tests/Test.as
@@ -62,7 +62,7 @@
 				var value:AbstractArg = values[0];
 				values.splice(0, 1); //values.shift()?

-				if (!loop && canMakeLoop(value, values, instructionTypes, abstractionsMade) && FlxG.random() < 1 / 2) {
+				if (!loop && canMakeLoop(value, values, instructionTypes, abstractionsMade) && FlxG.random() < 1 / 3) {
 					loop = makeLoop(value, values, instructionTypes, registers, instructions);
 					abstractionsMade += loop.length;
 				} else {


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

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

--- frameworks/projects/advancedgrids/src/mx/collections/IGroupingCollection.as
+++ frameworks/projects/advancedgrids/src/mx/collections/IGroupingCollection.as
@@ -0,0 +1,114 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.collections
+{
+
+/**
+ *  The IGroupingCollection interface defines the interface required
+ *  to create grouped data from flat data.
+ *
+ *  @see mx.collections.GroupingCollection
+ *  @see mx.controls.AdvancedDataGrid
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+[Deprecated(replacement="IGroupingCollection2", since="4.0")]
+
+public interface IGroupingCollection extends IHierarchicalData
+{
+	//--------------------------------------------------------------------------
+	//
+	//  Properties
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  grouping
+	//----------------------------------
+
+    /**
+     *  The Grouping object applied to the source data.
+     *  Setting this property does not automatically refresh the view;
+     *  therefore, you must call the refresh() method
+     *  after setting this property.
+     *
+     *
Note: The Flex implementations of IGroupingCollection retrieve all
+     *  items from a remote location before executing grouping.

+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function get grouping():Grouping;
+
+    /**
+     *  @private
+     */
+    function set grouping(value:Grouping):void;
+
+    //--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+    /**
+     *  Applies the grouping to the view.
+     *  The IGroupingCollection does not detect changes to a group
+     *  automatically, so you must call the refresh()
+     *  method to update the view after setting the group property.
+     *
+     *
The refresh() method can be applied asynchronously
+     *  by calling refresh(true).

+     *
+     *
When refresh() is called synchronously,
+     *  a client should wait for a CollectionEvent event
+     *  with the value of the kind property set
+     *  to CollectionEventKind.REFRESH
+     *  to ensure that the refresh() method completed.

+     *
+     *  @param async If true, defines the refresh to be asynchronous.
+     *  By default it is false denoting synchronous refresh.
+     *
+     *  @return true if the refresh() method completed,
+     *  and false if the refresh is incomplete,
+     *  which can mean that items are still pending.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function refresh(async:Boolean = false):Boolean;
+
+    /**
+     *  If the refresh is performed asynchronously,
+     *  cancels the refresh operation and stops the building of the groups.
+     *
+     *  This method only cancels the refresh
+     *  if it is initiated by a call to the refresh() method
+     *  with an argument of true, corresponding to an asynchronous refresh.
+     *
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    function cancelRefresh():void;
+}
+
+}


Fixed RTE when editable is set to null

Fixed RTE when editable is set to null

--- frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as
+++ frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as
@@ -7417,7 +7417,7 @@

         super.focusInHandler(event);

-        if (editable.length && !isPressed) // don't do this if we're mouse focused
+        if (editable && editable.length && !isPressed) // don't do this if we're mouse focused
         {
             _editedItemPosition = lastEditedItemPosition;


Transferred from the Adobe Open Source Subversion Repository

Revision: 13196
Author:   aharui@adobe.com
Date:     2009-12-23T17:50:38.356269Z

Log Message:
-----------
Re-submit with bug fix:  SystemManager was supposed to call ChildManager to finish initializing the top level window.  LoaderConfig was not getting initialized otherwise.

QE Notes: None
Doc Notes: None
Bugs: SDK-24832, SDK-24625
Reviewer: Corey
API Change: No
Is noteworthy for integration: No
tests: checkintests mustella/gumbo/layout, layout3d, spark/core, components/DataGrid

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/ChildManager.as</path>

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

--- frameworks/projects/framework/src/mx/managers/systemClasses/ChildManager.as
+++ frameworks/projects/framework/src/mx/managers/systemClasses/ChildManager.as
@@ -314,8 +314,9 @@
 			{
 				LoaderConfig._url = LoaderUtil.normalizeURL(systemManager.loaderInfo);
 				LoaderConfig._parameters = systemManager.loaderInfo.parameters;
-			}
-
+                LoaderConfig._swfVersion = systemManager.loaderInfo.swfVersion;
+            }
+
 			IFlexDisplayObject(app).setActualSize(width, height);

 			// Wait for the app to finish its initialization sequence


Put ++ where I meant --

Put ++ where I meant --

--- rtmfpcat.as
+++ rtmfpcat.as
@@ -223,7 +223,7 @@
                 puts("ProxyPair: connection closed.");
                 p_p = null;
                 if (proxy_mode && !debug_mode && badge != null) {
-                    badge.num_proxy_pairs++;
+                    badge.num_proxy_pairs--;
                 }
                 establish_facilitator_connection();
             });


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

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

--- frameworks/projects/charts/src/mx/charts/series/AreaSet.as
+++ frameworks/projects/charts/src/mx/charts/series/AreaSet.as
@@ -0,0 +1,182 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.charts.series
+{
+
+import flash.display.DisplayObject;
+
+import mx.charts.HitData;
+import mx.charts.chartClasses.CartesianTransform;
+import mx.charts.chartClasses.ChartBase;
+import mx.charts.chartClasses.IAxis;
+import mx.charts.chartClasses.IChartElement;
+import mx.charts.chartClasses.StackedSeries;
+import mx.charts.series.items.AreaSeriesItem;
+import mx.core.mx_internal;
+
+use namespace mx_internal;
+
+[DefaultProperty("series")]
+
+/**
+ *  A grouping set that can be used to stack AreaSeries objects in any chart. An AreaSet encapsulates the same stacking behavior that is used in an AreaChart control, but can be used to assemble custom charts that are based on
+ *	the CartesianChart class.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public class AreaSet extends StackedSeries
+{
+    include "../../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public function AreaSet()
+	{
+		super();
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	// Properties
+	//
+	//--------------------------------------------------------------------------
+	//----------------------------------
+	//  type
+	//----------------------------------
+	[Inspectable(category="General", enumeration="stacked,100%,overlaid", defaultValue="overlaid")]
+
+	/**
+	 * @private
+	 */
+	override public function set type(value:String):void
+	{
+		super.type = value;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	override protected function buildSubSeries():void
+	{
+		var i:int;
+		var g:IChartElement;
+		var n:int = series.length;
+
+		while (numChildren > 0)
+		{
+			removeChildAt(0);
+		}
+
+		var series:Array /* of Series */ = this.series;
+		if (type == "stacked" || type == "100%")
+		{
+			for (i = n - 1; i >= 0; i--)
+			{
+				g = IChartElement(series[i]);
+				customizeSeries(g, i);
+				addChild(g as DisplayObject);
+			}
+		}
+		else
+		{
+			for (i = 0; i < n; i++)
+			{
+				g = IChartElement(series[i]);
+				customizeSeries(g, i);
+				addChild(g as DisplayObject);
+			}
+		}
+
+		var s:ChartBase = chart;
+		if (s)
+			s.invalidateSeriesStyles();
+	}
+
+	/**
+	 *  @private
+	 */
+	override protected function formatDataTip(hd:HitData):String
+	{
+		var dt:String = "";
+		var elt:AreaSeries = AreaSeries(hd.element);
+
+		var item:AreaSeriesItem = AreaSeriesItem(hd.chartItem);
+		var percent:Number;
+
+		var total:Number = posTotalsByPrimaryAxis[item.xValue];
+
+		// now compute the percentage
+		if (type == "100%")
+		{
+			percent = Number(item.yValue) - Number(item.minValue);
+			percent = Math.round(percent * 10) / 10;
+		}
+		else
+		{
+			if (type=="stacked" && allowNegativeForStacked)
+			{
+				if (isNaN(total))
+					total = 0;
+				total += isNaN(negTotalsByPrimaryAxis[item.xValue]) ? 0 : negTotalsByPrimaryAxis[item.xValue];
+			}
+			var size:Number = Number(item.yValue) - Number(item.minValue);
+			percent = Math.round(size / total * 1000) / 10;
+		}
+
+		var n:String = elt.displayName;
+		if (n != null && n.length > 0)
+			dt += "" + n + "
";
+
+		var hAxis:IAxis = dataTransform.getAxis(CartesianTransform.HORIZONTAL_AXIS);
+		var xName:String = hAxis.displayName;
+		if (xName != "")
+			dt += "" + xName + ": ";
+		dt += hAxis.formatForScreen(item.xValue) + "\n";
+
+		var vAxis:IAxis = dataTransform.getAxis(CartesianTransform.VERTICAL_AXIS);
+		var yName:String = vAxis.displayName;
+
+		if (yName != "")
+			dt += "" + yName + ": ";
+		dt += vAxis..formatForScreen(Number(item.yValue) - Number(item.minValue)) + " (" +  percent + "%)\n";
+		if (yName != "")
+			dt += "" + yName + " (total): ";
+		else
+			dt += "total: ";
+		dt += vAxis.formatForScreen(total);
+
+		return dt;
+	}
+}
+
+}


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

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

 package mx.events
 {


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 12461
Author:   jszeto@adobe.com
Date:     2009-12-03T19:56:20.664840Z

Log Message:
-----------
http://bugs.adobe.com/jira/browse/SDK-24384 - Second pass of dynamically adding radiobuttons to a vbox, when vbox needs to scroll, causes screen lock/freeze

I changed the RadioButtonGroup.breadthOrderCompare function to always grab its childIndex from its DisplayObject parent. When a container has a content pane, its rawChildren is now the content pane, not the content children.

QE notes: None
Doc notes: None
Bugs: SDK-24384
Reviewer: Corey
Tests run: RadioButton, RadioButtonGroup
Is noteworthy for integration: No

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

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

--- frameworks/projects/mx/src/mx/controls/RadioButtonGroup.as
+++ frameworks/projects/mx/src/mx/controls/RadioButtonGroup.as
@@ -588,8 +588,8 @@
      */
     private function breadthOrderCompare(a:DisplayObject, b:DisplayObject):Number
     {
-        var aParent:DisplayObject = a.parent;
-        var bParent:DisplayObject = b.parent;
+        var aParent:DisplayObject = (a is UIComponent) ? UIComponent(a).$parent : a.parent;
+        var bParent:DisplayObject = (b is UIComponent) ? UIComponent(b).$parent : b.parent;

         if (!aParent || !bParent)
             return 0;
@@ -597,13 +597,9 @@
         var aNestLevel:int = (a is UIComponent) ? UIComponent(a).nestLevel : -1;
         var bNestLevel:int = (b is UIComponent) ? UIComponent(b).nestLevel : -1;

-        var aIndex:int = aParent is IRawChildrenContainer ?
-            IRawChildrenContainer(aParent).rawChildren.getChildIndex(a) :
-            DisplayObjectContainer(aParent).getChildIndex(a);
-
-        var bIndex:int = bParent is IRawChildrenContainer ?
-            IRawChildrenContainer(bParent).rawChildren.getChildIndex(b) :
-            DisplayObjectContainer(bParent).getChildIndex(b);
+        var aIndex:int = DisplayObjectContainer(aParent).getChildIndex(a);
+
+        var bIndex:int = DisplayObjectContainer(bParent).getChildIndex(b);

         if (aNestLevel > bNestLevel || (a.parent == b.parent && aIndex > bIndex))
             return 1;


FLEX-34019 stop combo box from staying open

--- frameworks/projects/spark/src/spark/components/ComboBox.as
+++ frameworks/projects/spark/src/spark/components/ComboBox.as
@@ -875,6 +875,17 @@
             textInput.removeEventListener(FocusEvent.FOCUS_OUT, textInput_focusOutHandler, true);
         }
     }
+
+	/**
+	 *  @private
+	 */
+	override public function set enabled(value:Boolean):void
+	{
+		if (enabled == value)
+			return;
+
+		super.enabled = value;
+	}

     /**
      *  @private


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

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

 package spark.components
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 11669
Author:   gosmith@adobe.com
Date:     2009-11-11T20:56:09.050685Z

Log Message:
-----------
Spark now provides localized RTE messages for TLF.

TLF is a layer below Flex and doesn't have a localization scheme like Flex's ResourceManager; it just has hard-coded English RTE messages. But it now also has a hook function (GlobalSettings.getResourceStringFunction) that higher layers like Flex can set to provide localized messages instead.

Spark.swc now has a new resource bundle named "textLayout" with these RTE messages for TLF, copied from TLF's GlobalSettings file. And Spark.swc implements the hook in TextUtil.getResourceString().

Various classes that use TLF -- such as RichText, RichEditableText, TextFlowUtils, and UIFTETextField -- set the hook function, typically in their class initialization code. UIFTETextField didn't have class init code so I just do it repeatedly in the constuctor… it's just an assignment statement and should be fast enough.

QE notes: None
Doc notes: None
Bugs: SDK-23782
Reviewer: Carol
Tests run: ant checkintests
Is noteworthy for integration: Need localization of this new resource bundle

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/fi_FI/textLayout.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RichText.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/sv_SE/textLayout.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/core/UIFTETextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/TextUtil.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/ja_JP/textLayout.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/build.xml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/zh_TW/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/nb_NO/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/ru_RU/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/es_ES/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/fr_FR/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/de_DE/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/zh_CN/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/da_DK/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/nl_NL/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/ko_KR/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/pt_BR/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/it_IT/textLayout.properties</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/bundles/en_US/textLayout.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/TextFlowUtil.as</path>

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

--- frameworks/projects/spark/src/spark/components/RichText.as
+++ frameworks/projects/spark/src/spark/components/RichText.as
@@ -21,6 +21,7 @@
 import flashx.textLayout.conversion.ITextExporter;
 import flashx.textLayout.conversion.ITextImporter;
 import flashx.textLayout.conversion.TextConverter;
+import flashx.textLayout.elements.GlobalSettings;
 import flashx.textLayout.elements.TextFlow;
 import flashx.textLayout.events.DamageEvent;
 import flashx.textLayout.factory.StringTextLineFactory;
@@ -39,6 +40,7 @@

 import spark.components.supportClasses.TextBase;
 import spark.core.CSSTextLayoutFormat;
+import spark.utils.TextUtil;

 use namespace mx_internal;

@@ -310,6 +312,13 @@
 		if (classInitialized)
 			return;

+		/**
+		 *  Set the TLF hook used for localizing runtime error messages.
+		 *  TLF itself has English-only messages,
+		 *  but higher layers like Flex can provide localized versions.
+		 */
+		GlobalSettings.getResourceStringFunction = TextUtil.getResourceString;
+
 		staticStringFactory = new StringTextLineFactory();

 		staticTextFlowFactory = new TextFlowTextLineFactory();


Transferred from the Adobe Open Source Subversion Repository

Revision: 3147
Author:   gosmith@adobe.com
Date:     2008-09-08T20:42:17.471267Z

Log Message:
-----------
You can now use CSS styles to set the text format for TextBox and the default text format for TextGraphic. These components no longer have any formatting properties.

Metadata for the styles that affect Gumbo text formatting is in six new include files in styles/metadata:

    BasicCharacterFormatTextStyles.as
    AdvancedContainerFormatTextStyles.as
    BasicParagraphFormatTextStyles.as
    AdvancedParagraphFormatTextStyles.as
    BasicContainerFormatTextStyles.as
    AdvancedContainerFormatTextStyles.as

TextBox supports the "basic" subset. TextGraphic supports all of them.

The 'global' selector now has the defaults for all of these styles. Five of them -- color, fontFamily, fontSize, kerning, and textAlign -- have default values which are, for now, the same as in Halo, but which may change later.

Reviewer: Glenn
Bugs: -
QA: Lots of new stuff to test!
Doc: No

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata/BasicParagraphFormatTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/TextBox.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata/AdvancedContainerFormatTextStyles.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata/AdvancedParagraphFormatTextStyles.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata</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/flex4/src/flex/graphics/TextGraphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata/BasicCharacterFormatTextStyles.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata/AdvancedCharacterFormatTextStyles.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/styles/metadata/BasicContainerFormatTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/graphicsClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>

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

--- frameworks/projects/spark/src/spark/components/RichText.as
+++ frameworks/projects/spark/src/spark/components/RichText.as
@@ -28,6 +28,21 @@
 import text.formats.IContainerFormat;
 import text.formats.IParagraphFormat;
 import text.importExport.TextFilter;
+
+//--------------------------------------
+//  Styles
+//--------------------------------------
+
+include "../styles/metadata/BasicContainerFormatTextStyles.as"
+include "../styles/metadata/AdvancedContainerFormatTextStyles.as"
+include "../styles/metadata/BasicParagraphFormatTextStyles.as"
+include "../styles/metadata/AdvancedParagraphFormatTextStyles.as"
+include "../styles/metadata/BasicCharacterFormatTextStyles.as"
+include "../styles/metadata/AdvancedCharacterFormatTextStyles.as"
+
+//--------------------------------------
+//  Other metadata
+//--------------------------------------

 [DefaultProperty("content")]

@@ -103,420 +118,6 @@

 	//--------------------------------------------------------------------------
 	//
-	//  Properties: Text formatting
-	//
-	//--------------------------------------------------------------------------
-
-	//----------------------------------
-	//  blockProgression
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _blockProgression:String = "lr";
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get blockProgression():String
-	{
-		return _blockProgression;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set blockProgression(value:String):void
-	{
-		if (value != _blockProgression)
-		{
-			var oldValue:String = _blockProgression;
-			_blockProgression = value;
-			dispatchPropertyChangeEvent("blockProgression", oldValue, value);
-
-			invalidateTextLines("style");
-			invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  direction
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _direction:String = "ltr";
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get direction():String
-	{
-		return _direction;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set direction(value:String):void
-	{
-		if (value != _direction)
-		{
-			var oldValue:String = _direction;
-			_direction = value;
-			dispatchPropertyChangeEvent("direction", oldValue, value);
-
-			invalidateTextLines("style");
-            invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  lineBreak
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _lineBreak:String = "toFit";
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get lineBreak():String
-	{
-		return _lineBreak;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set lineBreak(value:String):void
-	{
-		if (value != _lineBreak)
-		{
-			var oldValue:String = _lineBreak;
-			_lineBreak = value;
-			dispatchPropertyChangeEvent("lineBreak", oldValue, value);
-
-			invalidateTextLines("style");
-            invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  lineThrough
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _lineThrough:Boolean = false;
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get lineThrough():Boolean
-	{
-		return _lineThrough;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set lineThrough(value:Boolean):void
-	{
-		if (value != _lineThrough)
-		{
-			var oldValue:Boolean = _lineThrough;
-			_lineThrough = value;
-			dispatchPropertyChangeEvent("lineThrough", oldValue, value);
-
-			invalidateTextLines("style");
-            invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  marginBottom
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _marginBottom:Number = 0;
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get marginBottom():Number
-	{
-		return _marginBottom;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set marginBottom(value:Number):void
-	{
-		if (value != _marginBottom)
-		{
-			var oldValue:Number = _marginBottom;
-			_marginBottom = value;
-			dispatchPropertyChangeEvent("marginBottom", oldValue, value);
-
-			invalidateTextLines("style");
-            invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  marginLeft
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _marginLeft:Number = 0;
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get marginLeft():Number
-	{
-		return _marginLeft;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set marginLeft(value:Number):void
-	{
-		if (value != _marginLeft)
-		{
-			var oldValue:Number = _marginLeft;
-			_marginLeft = value;
-			dispatchPropertyChangeEvent("marginLeft", oldValue, value);
-
-			invalidateTextLines("style");
-            invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  marginRight
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _marginRight:Number = 0;
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get marginRight():Number
-	{
-		return _marginRight;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set marginRight(value:Number):void
-	{
-		if (value != _marginRight)
-		{
-			var oldValue:Number = _marginRight;
-			_marginRight = value;
-			dispatchPropertyChangeEvent("marginRight", oldValue, value);
-
-			invalidateTextLines("style");
-            invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  marginTop
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _marginTop:Number = 0;
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get marginTop():Number
-	{
-		return _marginTop;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set marginTop(value:Number):void
-	{
-		if (value != _marginTop)
-		{
-			var oldValue:Number = _marginTop;
-			_marginTop = value;
-			dispatchPropertyChangeEvent("marginTop", oldValue, value);
-
-			invalidateTextLines("style");
-			invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  textAlignLast
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _textAlignLast:String = "left";
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get textAlignLast():String
-	{
-		return _textAlignLast;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set textAlignLast(value:String):void
-	{
-		if (value != _textAlignLast)
-		{
-			var oldValue:String = _textAlignLast;
-			_textAlignLast = value;
-			dispatchPropertyChangeEvent("textAlignLast", oldValue, value);
-
-			invalidateTextLines("style");
-			invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  textDecoration
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _textDecoration:String = "none";
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get textDecoration():String
-	{
-		return _textDecoration;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set textDecoration(value:String):void
-	{
-		if (value != _textDecoration)
-		{
-			var oldValue:String = _textDecoration;
-			_textDecoration = value;
-			dispatchPropertyChangeEvent("textDecoration", oldValue, value);
-
-			invalidateTextLines("style");
-			invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  textIndent
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _textIndent:Number = 0;
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get textIndent():Number
-	{
-		return _textIndent;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set textIndent(value:Number):void
-	{
-		if (value != _textIndent)
-		{
-			var oldValue:Number = _textIndent;
-			_textIndent = value;
-			dispatchPropertyChangeEvent("textIndent", oldValue, value);
-
-			invalidateTextLines("style");
-			invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//----------------------------------
-	//  whiteSpaceCollapse
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	private var _whiteSpaceCollapse:String = "preserve";
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-	public function get whiteSpaceCollapse():String
-	{
-		return _whiteSpaceCollapse;
-	}
-
-	/**
-	 *  @private
-	 */
-	public function set whiteSpaceCollapse(value:String):void
-	{
-		if (value != _whiteSpaceCollapse)
-		{
-			var oldValue:String = _whiteSpaceCollapse;
-			_whiteSpaceCollapse = value;
-			dispatchPropertyChangeEvent("whiteSpaceCollapse", oldValue, value);
-
-			invalidateTextLines("style");
-			invalidateSize();
-			invalidateDisplayList();
-		}
-	}
-
-	//--------------------------------------------------------------------------
-	//
 	//  Properties
 	//
 	//--------------------------------------------------------------------------
@@ -732,9 +333,14 @@

         for each (p in TextUtil.ALL_FORMAT_NAMES)
         {
-            if (!(p in textFlowTextFormat) && (p in this))
-                textFlow[p] = this[p];
-        }
+            if (!(p in textFlowTextFormat))
+            {
+            	var value:* = getStyle(p);
+            	if (p == "tabStops" && value === undefined)
+            		value = [];
+            	textFlow[p] = value;
+            }
+         }

 		return textFlow;
 	}


Transferred from the Adobe Open Source Subversion Repository

Revision: 5647
Author:   pfarland@adobe.com
Date:     2009-03-27T13:59:54.760468Z

Log Message:
-----------
Fixing programmatic usages of 'mx.components' to the spark equivalent after the rename.

Also fixing calls to StyleManager.getStyleDeclaration() that use an unqualified type name. Type selectors should be referenced via fully qualified ActionScript class names at runtime. When compatibility version is set to 3, getStyleDeclaration will remove the package name to match type selectors in the legacy unqualified manner.

QE: This fixes bug SDK-20253, and potentially a few other edge cases like the CursorManager RTE.
Doc: No
Checkintests: Pass

Bugs:
SDK-20253 - [rename_work] Spark RadioButton and CheckBox focus ring now highlights the label of the RadioButton

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/FocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/printing/FlexPrintJob.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/halo/src/mx/skins/halo/BusyCursor.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/managers/DragManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/haloclassic/src/haloclassic/BusyCursor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.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/BusyCursor.as</path>

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

--- frameworks/projects/spark/src/spark/components/Scroller.as
+++ frameworks/projects/spark/src/spark/components/Scroller.as
@@ -808,7 +808,7 @@
         if (!textViewClassLoaded)
         {
             textViewClassLoaded = true;
-            const s:String = "mx.components.RichEditableText";
+            const s:String = "spark.components.RichEditableText";
             if (ApplicationDomain.currentDomain.hasDefinition(s))
                 textViewClass = Class(ApplicationDomain.currentDomain.getDefinition(s));
         }


So, arrays don't have size, they have length, and also, logic, yikes.

--- tamarin-central/thane/AMF3Encoder.as
+++ tamarin-central/thane/AMF3Encoder.as
@@ -139,7 +139,7 @@
         // arrays consist of a dense part (zero-based uninterrupted numerical indices)
         // and an associate part; find the dense first --
         var denseEnd :int = 0;
-        while (denseEnd < arr.size && arr[denseEnd] === undefined) {
+        while (denseEnd < arr.length && arr[denseEnd] !== undefined) {
             denseEnd ++;
         }
         // and jot down in the bytestream how much of that there is


Transferred from the Adobe Open Source Subversion Repository

Revision: 6609
Author:   gruehle@adobe.com
Date:     2009-05-04T22:47:31.285324Z

Log Message:
-----------
Add theme attribute to theme-specific style metadata.

Example of a halo-specific style:
[Style(name="cornerRadius", type="Number", format="Length", inherit="no", theme="halo")]

Example of a spark-specific style:
[Style(name="baseColor", type="uint", format="Color", inherit="yes", theme="spark")]

Style metadata without a theme attribute is theme-agnostic, and works with either spark or halo.

Bugs: SDK-20606

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/RadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/FillStyles.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/flex4/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/SkinStyles.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" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/BarColorStyle.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/CheckBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/CheckBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/IconColorStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RadioButton.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/scrollClasses/ScrollBar.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/styles/metadata/SelectedFillColorsStyle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/colorPickerClasses/SwatchPanel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableDataContainer.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/flex4/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.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/flex4/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableComponent.as</path>

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

--- frameworks/projects/mx/src/mx/controls/CheckBox.as
+++ frameworks/projects/mx/src/mx/controls/CheckBox.as
@@ -35,7 +35,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="symbolColor", type="uint", format="Color", inherit="yes")]
+[Style(name="symbolColor", type="uint", format="Color", inherit="yes", theme="spark")]

 //--------------------------------------
 //  Excluded APIs


Transferred from the Adobe Open Source Subversion Repository

Revision: 18443
Author:   dloverin@adobe.com
Date:     2010-11-04T13:06:05.770103Z

Log Message:
-----------
Fixed two asdoc issues that were breaking the asdoc build.

QE notes: None.
Doc notes: None.
Bugs:
Reviewer:
Tests run: 'doc' target in mobilecomponents and checkintests
Is noteworthy for integration: No.

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ViewNavigatorApplicationBase.as
+++ frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ViewNavigatorApplicationBase.as
@@ -459,7 +459,7 @@
      *  and the time the persistence object was created to the "timestamp" and
      *  "applicationVersion" keys.
      *
-     *
This method will only be called if the FlexEvent.APPLICATION_PERSISTING
+     *
This method will only be called if the FlexEvent.APPLICATION_PERSISTING
      *  event is not canceled.

      *
      *  @langversion 3.0
@@ -501,7 +501,7 @@
      *  Responsible for restoring the application's state when the
      *  sessionCachingEnabled flag is set to true.
      *
-     *
This method will only be called if the FlexEvent.APPLICATION_RESTORING
+     *
This method will only be called if the FlexEvent.APPLICATION_RESTORING
      *  event is not canceled.

      *
      *  @langversion 3.0


qnd: v3.6.3

qnd: v3.6.3

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

--- kdp3Lib/src/com/kaltura/kdpfl/ApplicationFacade.as
+++ kdp3Lib/src/com/kaltura/kdpfl/ApplicationFacade.as
@@ -31,7 +31,7 @@
 		/**
 		 * The current version of the KDP.
 		 */
-		public var kdpVersion : String = "v3.6.2";
+		public var kdpVersion : String = "v3.6.3";

 		/**
 		 * save any mediator name that is registered to this array in order to delete at any time


Transferred from the Adobe Open Source Subversion Repository

Revision: 13125
Author:   smgilson@adobe.com
Date:     2009-12-21T20:40:37.345444Z

Log Message:
-----------
ASDoc L10N fixes

QE notes: -
Doc notes: -
Bugs: - FLEXDOCS-885, FLEXDOCS-841,FLEXDOCS-839, FLEXDOCS-769, FLEXDOCS-545, FLEXDOCS-540
Reviewer: -
Tests run: - checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Box.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Canvas.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Tile.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/VBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airspark/src/spark/components/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/BorderContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/HBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/accessibility/TitleWindowAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/CheckBox.as</path>

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

--- frameworks/projects/mx/src/mx/containers/HBox.as
+++ frameworks/projects/mx/src/mx/containers/HBox.as
@@ -78,7 +78,7 @@
  *
  *  @includeExample examples/HBoxExample.mxml
  *
- *  @see mx.components.Container
+ *  @see mx.core.Container
  *  @see mx.containers.Box
  *  @see mx.containers.VBox
  *


Transferred from the Adobe Open Source Subversion Repository

Revision: 6077
Author:   hmuller@adobe.com
Date:     2009-04-09T15:43:34.506603Z

Log Message:
-----------
Removed mirroring support.

QE Notes:
Doc Notes:
Bugs:
Reviewer: Chet

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/GraphicElement.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/core/IVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as</path>

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

--- frameworks/projects/mx/src/mx/controls/Button.as
+++ frameworks/projects/mx/src/mx/controls/Button.as
@@ -687,8 +687,6 @@
         addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
         addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
         addEventListener(MouseEvent.CLICK, clickHandler);
-
-        dir="ltr";
     }

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


Don't blow up when we see a stream:features, since that occurs when registering accounts on ignite

--- src/org/jivesoftware/xiff/core/XMPPConnection.as
+++ src/org/jivesoftware/xiff/core/XMPPConnection.as
@@ -549,6 +549,9 @@
 					handlePresence( firstNode );
 					break;

+				case "stream:features":
+					break;
+
 				default:
 					// silently ignore lack of or unknown stanzas
 					// if the app designer wishes to handle raw data they


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

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


Added scheduler test for throttle

Added scheduler test for throttle

--- source/RxAsTests/src/rx/tests/operators/ThrottleFixture.as
+++ source/RxAsTests/src/rx/tests/operators/ThrottleFixture.as
@@ -5,6 +5,7 @@

 	import rx.IObservable;
 	import rx.tests.mocks.ManualObservable;
+	import rx.tests.mocks.ManualScheduler;

 	[TestCase]
 	public class ThrottleFixture extends AbsDecoratorOperatorFixture
@@ -44,6 +45,42 @@
 				Assert.assertEquals(2, nextCount);
 			});
 		}
+
+		public function scheduler_is_used() : void
+		{
+			var scheduler : ManualScheduler = new ManualScheduler();
+
+			var manObs : ManualObservable = new ManualObservable();
+
+			var obs : IObservable = manObs.throttle(50);
+
+			var nextCount : uint = 0;
+
+			obs.subscribeFunc(function(pl:int):void
+			{
+				nextCount++;
+			});
+
+			manObs.onNext(1); // piped
+			manObs.onNext(1); // ignored
+			manObs.onNext(1); // ignored
+			manObs.onNext(1); // ignored
+
+			Assert.assertEquals(0, nextCount);
+
+			// Wait past the throttle timeframe (+5ms to be sure)
+			Async.asyncHandler(this, function():void{}, 55, null, function():void
+			{
+				scheduler.runNext();
+				Assert.assertEquals(1, nextCount);
+
+				manObs.onNext(1); // piped
+
+				scheduler.runNext();
+
+				Assert.assertEquals(2, nextCount);
+			});
+		}

 		[Test(expects="Error")]
 		public function errors_thrown_by_subscriber_are_bubbled() : void


Update

Update

--- DroneAnarchy/GameObjects.as
+++ DroneAnarchy/GameObjects.as
@@ -169,7 +169,7 @@
 		if(droneObj !is null)
 		{
 			droneObj.OnHit();
-			SendEvent("DroneHit",VariantMap());
+			SendEvent("DroneHit");
 		}

 		Destroy();


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

--- frameworks/projects/mx/src/mx/effects/easing/Sine.as
+++ frameworks/projects/mx/src/mx/effects/easing/Sine.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2004-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.
 //
 ////////////////////////////////////////////////////////////////////////////////


Image resizes properly when paused

Image resizes properly when paused

--- com/axis/mjpgplayer/MJPG.as
+++ com/axis/mjpgplayer/MJPG.as
@@ -43,15 +43,23 @@
         loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onImageError);
         this.addChild(loader);
       }
+      stage.addEventListener(Event.RESIZE, resizeListener);
+    }
+
+    private function resizeListener(e:Event):void {
+      for each (var loader:MJPGImage in getChildren())
+      {
+        scaleAndPosition(loader);
+      }
     }

     public function getChildren():Array
     {
        var children:Array = [];
-
        for (var i:uint = 0; i < this.numChildren; i++)
+       {
         children.push(this.getChildAt(i));
-
+       }
        return children;
     }

@@ -124,9 +132,7 @@
         updateDecFrames(0);
         updatePlaying(true);

-        var arr:Array = getChildren();
-        var loader:MJPGImage = null;
-        for each (loader in arr)
+        for each (var loader:MJPGImage in getChildren())
         {
           loader.data.inQue = true;
           idleQue.push(loader);
@@ -135,27 +141,12 @@

       if (idleQue.length > 0)
       {
-        loader = idleQue.shift() as MJPGImage;
-        loadImage(loader, imgBuf.shift());
-      }
-    }
-
-    private function onLoadComplete(event:Event):void
-    {
-      if (!playing)
-      {
-        return;
-      }
-
-      var arr:Array = getChildren();
-      var loader:MJPGImage = event.currentTarget.loader as MJPGImage;
-      var bitmap:Bitmap = event.currentTarget.content;
-      if (bitmap != null)
-      {
-        bitmap.smoothing = true;
-      }
-      loader.data.loading = false;
-
+        loadImage(idleQue.shift(), imgBuf.shift());
+      }
+    }
+
+    private function scaleAndPosition(loader:MJPGImage):void
+    {
       // Scale to fit stage
       var loaderAspectRatio:Number = loader.width / loader.height;
       var stageAspectRatio:Number = stage.stageWidth / stage.stageHeight;
@@ -172,8 +163,27 @@
       loader.height *= scale;

       // Center on stage
-      this.x = (stage.stageWidth - loader.width) / 2;
-      this.y = (stage.stageHeight - loader.height) / 2;
+      loader.x = (stage.stageWidth - loader.width) / 2;
+      loader.y = (stage.stageHeight - loader.height) / 2;
+    }
+
+    private function onLoadComplete(event:Event):void
+    {
+      if (!playing)
+      {
+        return;
+      }
+
+      var arr:Array = getChildren();
+      var loader:MJPGImage = event.currentTarget.loader as MJPGImage;
+      var bitmap:Bitmap = event.currentTarget.content;
+      if (bitmap != null)
+      {
+        bitmap.smoothing = true;
+      }
+      loader.data.loading = false;
+
+      scaleAndPosition(loader);

       var curTime:Number = new Date().getTime();
       decTime += curTime - loader.data.loadTime;


Changed interval start trigger from AdVideoStarted to AdImpression; renamed videoStarted to adStarted

--- src/org/openvv/OVVAsset.as
+++ src/org/openvv/OVVAsset.as
@@ -206,9 +206,9 @@

 	        private var _isPaused: Boolean = false;
 		/**
-		 * True if VPAID AdVideoStarted event has been received
-		 */
-		private var videoStarted:Boolean;
+		 * True if VPAID AdImpression event has been received
+		 */
+		private var adStarted:Boolean;
 		/**
 		 * True if JS is ready, and beacons are loaded if needed.
 		 */
@@ -412,7 +412,7 @@
          */
 		public function onJsReady(): void {
 			jsReady = true;
-			if ( videoStarted ) {
+			if ( adStarted ) {
 				startImpressionTimer();
 			}
 			raiseReady();
@@ -426,7 +426,7 @@
 			return jsReady;
 		}
 		/**
-         * When the VPAID AdVideoStart event is received, it triggers this function
+         * When the VPAID AdImpression event is received, it triggers this function
          * to start the interval timer which does viewability checks every 200ms (POLL_INTERVAL)
          */
         public function startImpressionTimer(): void {
@@ -585,8 +585,8 @@
 					_intervalTimer.removeEventListener(TimerEvent.TIMER, onIntervalCheck);
 					_intervalTimer = null;
 					break;
-				case VPAIDEvent.AdVideoStart:
-					videoStarted = true;
+				case VPAIDEvent.AdImpression:
+					adStarted = true;
 					if ( jsReady ) {
 						startImpressionTimer();
 					}


prevent OVVImpression and Unmeasurable impression to fire when pause

--- src/org/openvv/OVVAsset.as
+++ src/org/openvv/OVVAsset.as
@@ -198,6 +198,8 @@

 		private var _vpaidEventsDispatcher:IEventDispatcher = null;

+        private var _isPaused: Boolean = false;
+
         ////////////////////////////////////////////////////////////
         //   CONSTRUCTOR
         ////////////////////////////////////////////////////////////
@@ -414,14 +416,16 @@
             var results: Object = checkViewability();
 			raiseLog(results);

-            _intervalsUnMeasurable = (results.viewabilityState == OVVCheck.UNMEASURABLE) ? _intervalsUnMeasurable + 1 : 0;
-            _intervalsInView = (results.viewabilityState == OVVCheck.VIEWABLE && results.focus == true) ? _intervalsInView + 1 : 0;
-
-            if (_impressionEventRaised == false && _intervalsInView >= VIEWABLE_IMPRESSION_THRESHOLD) {
-                raiseImpression(results);
-            }
-            else if (_impressionUnmeasurableEventRaised == false && _intervalsUnMeasurable >= UNMEASURABLE_IMPRESSION_THRESHOLD) {
-                raiseImpressionUnmeasurable(results);
+            if (_isPaused == false) {
+                _intervalsUnMeasurable = (results.viewabilityState == OVVCheck.UNMEASURABLE) ? _intervalsUnMeasurable + 1 : 0;
+                _intervalsInView = (results.viewabilityState == OVVCheck.VIEWABLE && results.focus == true) ? _intervalsInView + 1 : 0;
+
+                if (_impressionEventRaised == false && _intervalsInView >= VIEWABLE_IMPRESSION_THRESHOLD) {
+                    raiseImpression(results);
+                }
+                else if (_impressionUnmeasurableEventRaised == false && _intervalsUnMeasurable >= UNMEASURABLE_IMPRESSION_THRESHOLD) {
+                    raiseImpressionUnmeasurable(results);
+                }
             }
         }

@@ -539,7 +543,13 @@
 					_intervalTimer.removeEventListener(TimerEvent.TIMER, onIntervalCheck);
 					_intervalTimer = null;
 					break;
-				default:
+                case VPAIDEvent.AdPaused:
+                    _isPaused = true;
+                    break;
+                case VPAIDEvent.AdPlaying:
+                    _isPaused = false;
+                    break;
+                default:
 					// do nothing
 			}


reduce verbosity

reduce verbosity

--- src/org/mangui/hls/controller/AutoBufferController.as
+++ src/org/mangui/hls/controller/AutoBufferController.as
@@ -76,7 +76,7 @@
                 _minBufferLength = Math.min(HLSSettings.maxBufferLength, _minBufferLength);
             }
             CONFIG::LOGGING {
-            Log.debug("AutoBufferManager:minBufferLength:" + _minBufferLength);
+            Log.debug2("AutoBufferController:minBufferLength:" + _minBufferLength);
             }
         };
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 18006
Author:   dloverin@adobe.com
Date:     2010-10-04T21:04:40.944454Z

Log Message:
-----------
DataGrid editor api changes, clean up, and bug fixes.

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/IGridItemEditor.as</path>
<path kind="file" copyfrom-path="/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/DataGridEditor.as" copyfrom-rev="17973" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/DataGridEditor.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/TextGridItemEditor.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridColumn.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridItemEditor.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="D">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/DataGridEditor.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/ComboBoxGridItemEditor.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/IGridItemEditor.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/IGridItemEditor.as
@@ -1,6 +1,7 @@
 package spark.components
 {
 import mx.core.IDataRenderer;
+import mx.core.IIMESupport;
 import mx.core.IVisualElement;
 import mx.managers.IFocusManagerComponent;

@@ -23,7 +24,8 @@
  * cancel()</code> function is called.
  * </p>
  */
-public interface IGridItemEditor extends IDataRenderer, IVisualElement, IFocusManagerComponent
+public interface IGridItemEditor extends IDataRenderer, IVisualElement,
+                                 IFocusManagerComponent, IIMESupport
 {
     //--------------------------------------------------------------------------
     //


Transferred from the Adobe Open Source Subversion Repository

Revision: 3957
Author:   egeorgie@adobe.com
Date:     2008-10-29T20:34:26.978508Z

Log Message:
-----------
Fix a bug in FxAnimateInstance.as where we don't check constraint values for null. The bug was introduced with my change Revision: 3892 [ http://p01weblab02.macromedia.com/viewvc/opensource?view=rev&revision=3892 ]. With that change constraint properties return null by default when no constraint is set, unlike styles, which return undefined.

QE Notes: None
Doc Notes: None
Bugs:
Reviewer: Chet
tests: checkintests, Mustella (Effects)

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxAnimateInstance.as

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
@@ -747,7 +747,7 @@
             value = target[name];
         else
             value = target.getStyle(name);
-        if (!isNaN(value))
+        if (!isNaN(value) && value != null)
         {
             if (!constraintsHolder)
                 constraintsHolder = new Object();


F force 2048 max resolution for textures

--- src/aerys/minko/scene/node/texture/BitmapTexture.as
+++ src/aerys/minko/scene/node/texture/BitmapTexture.as
@@ -18,7 +18,8 @@

 	public class BitmapTexture extends Texture
 	{
-		private static const TMP_MATRIX : Matrix = new Matrix();
+		private static const MAX_SIZE	: int		= 2048;
+		private static const TMP_MATRIX : Matrix 	= new Matrix();

 		minko var _data		: BitmapData	= null;
 		private var _mipmapping	: Boolean		= false;
@@ -52,6 +53,11 @@
 				w = 1 << Math.ceil(Math.log(bitmapWidth) * Math.LOG2E);
 				h = 1 << Math.ceil(Math.log(bitmapHeight) * Math.LOG2E);
 			}
+
+			if (w > MAX_SIZE)
+				w = MAX_SIZE;
+			if (h > MAX_SIZE)
+				h = MAX_SIZE;

 			if (!_data || _data.width != w || _data.height != h)
 			{


Clean up.

Clean up.

--- src/com/esri/builder/controllers/LocaleController.as
+++ src/com/esri/builder/controllers/LocaleController.as
@@ -84,30 +84,32 @@

     private function setPreferredLocaleFonts(selectedLocale:String):void
     {
+        var mainApp:Object = FlexGlobals.topLevelApplication;
+
         if (selectedLocale == 'ar')
         {
-            FlexGlobals.topLevelApplication.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_ARABIC_FONTS));
+            mainApp.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_ARABIC_FONTS));
         }
         else if (selectedLocale == 'ja_JP')
         {
-            FlexGlobals.topLevelApplication.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_JAPANESE_FONTS));
+            mainApp.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_JAPANESE_FONTS));
         }
         else if (selectedLocale == 'ko_KR')
         {
-            FlexGlobals.topLevelApplication.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_KOREAN_FONTS));
+            mainApp.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_KOREAN_FONTS));
         }
         else if (selectedLocale == 'zh_CN')
         {
-            FlexGlobals.topLevelApplication.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_CHINESE_FONTS));
+            mainApp.setStyle('fontFamily', toFontFamily(LocaleModel.PREFERRED_CHINESE_FONTS));
         }
         else
         {
-            FlexGlobals.topLevelApplication.setStyle('fontFamily', undefined);
+            mainApp.setStyle('fontFamily', undefined);
         }

         if (Log.isDebug())
         {
-            LOG.debug("Current font family: {0}", FlexGlobals.topLevelApplication.getStyle('fontFamily'));
+            LOG.debug("Current font family: {0}", mainApp.getStyle('fontFamily'));
         }
     }


Fix for device recognition when trying to read details of an out-of-bounds device, or an unrecognized device

--- src/com/zehfernando/input/binding/KeyActionBinder.as
+++ src/com/zehfernando/input/binding/KeyActionBinder.as
@@ -748,11 +748,11 @@
 		}

 		public function getDeviceAt(__index:uint):GameInputDevice {
-			return gameInputDevices.length >= __index && gameInputDevices[__index] != null ? gameInputDevices[__index] : null;
+			return gameInputDevices.length > __index && gameInputDevices[__index] != null ? gameInputDevices[__index] : null;
 		}

 		public function getDeviceTypeAt(__index:uint):String {
-			return gameInputDevices.length >= __index && gameInputDevices[__index] != null ? gameInputDeviceDefinitions[__index].id : null;
+			return gameInputDeviceDefinitions.length > __index && gameInputDeviceDefinitions[__index] != null ? gameInputDeviceDefinitions[__index].id : null;
 		}
 	}
 }


RTMP.as: autoPlay false, fix play() call

--- src/RTMP.as
+++ src/RTMP.as
@@ -9,12 +9,15 @@
   import org.osmf.media.MediaElement;
   import org.osmf.media.MediaPlayer;
   import org.osmf.media.URLResource;
+  import org.osmf.events.TimeEvent;

   [SWF(width="640", height="360")]
   public class RTMP extends Sprite {
     private var playbackId:String;
     private var mediaFactory:DefaultMediaFactory;
     private var mediaContainer:MediaContainer;
+    private var mediaPlayer:MediaPlayer;
+    private var element:MediaElement;

     public function RTMP() {
       Security.allowDomain('*');
@@ -24,21 +27,56 @@
       mediaContainer = new MediaContainer();

       setupCallbacks();
+      ExternalInterface.call('console.log', 'clappr rtmp 0.2-alpha');
       _triggerEvent('flashready');
-      ExternalInterface.call('console.log', 'clappr rtmp 0.0-alpha');
     }

     private function setupCallbacks():void {
-      ExternalInterface.addCallback("playerPlay", play);
+      ExternalInterface.addCallback("playerLoad", playerLoad);
+      ExternalInterface.addCallback("playerPlay", playerPlay);
+      ExternalInterface.addCallback("playerPause", playerPause);
+      ExternalInterface.addCallback("playerStop", playerStop);
+      ExternalInterface.addCallback("playerSeek", playerSeek);
     }

-    private function play(url:String):void {
-      ExternalInterface.call('console.log', 'playing ' + url);
-      var resource:URLResource = new URLResource(url);
-      var element:MediaElement = mediaFactory.createMediaElement(resource);
-      var mediaPlayer:MediaPlayer = new MediaPlayer(element);
+    private function playerLoad(url:String):void {
+      element = mediaFactory.createMediaElement(new URLResource(url));
+      mediaPlayer = new MediaPlayer(element);
+      mediaPlayer.autoPlay = false;
+      mediaPlayer.addEventListener(TimeEvent.CURRENT_TIME_CHANGE, onTimeUpdated);
+      mediaPlayer.addEventListener(TimeEvent.DURATION_CHANGE, onTimeUpdated);
       mediaContainer.addMediaElement(element);
       addChild(mediaContainer);
+      ExternalInterface.call('console.log', 'source loaded!');
+    }
+
+    private function playerPlay():void {
+      mediaPlayer.play();
+    }
+
+    private function playerPause():void {
+      mediaPlayer.pause();
+    }
+
+    private function playerSeek(seconds:Number):void {
+      mediaPlayer.seek(seconds);
+    }
+
+    private function playerStop():void {
+      mediaPlayer.stop();
+    }
+
+    private function onTimeUpdated(event:TimeEvent):void {
+      _triggerEvent('progress');
+      _triggerEvent('timeupdate');
+    }
+
+    private function getPosition():Number {
+      return mediaPlayer.currentTime;
+    }
+
+    private function getDuration():Number {
+      return mediaPlayer.duration;
     }

     private function _triggerEvent(name: String):void {


Transferred from the Adobe Open Source Subversion Repository

Revision: 17396
Author:   chiedozi@adobe.com
Date:     2010-08-19T23:20:11.495099Z

Log Message:
-----------
Removed the enabled property from IPersistenceManager
Fixed a small issue where the timestamp wasn't correctly saved when an application's state was persisted

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/core/managers/IPersistenceManager.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/MobileApplication.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/TabbedMobileApplication.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/core/managers/PersistenceManager.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/MobileApplicationBase.as</path>

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 12388
Author:   chaase@adobe.com
Date:     2009-12-02T21:18:32.348870Z

Log Message:
-----------
Fix for scrollbar stepping animations. We used to use a fraction of pageSize as our increment for animating, ignoring the stepSize in case it was too small to be useful. This fix uses the max of stepSize or the fraction, to actually use stepSize when appropriate.

QE notes: None
Doc notes: None
Bugs: SDK-24433
Reviewer: Hans
Tests run: Checkintests, Mustella gumbo/Scroller|ScrollBar
Is noteworthy for integration: No

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollBarBase.as

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ScrollBarBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ScrollBarBase.as
@@ -828,12 +828,10 @@
                 ((increment && value < maximum) ||
                  (!increment && value > minimum)))
             {
-                // FIXME (chaase): what's a reasonable stepSize? Can't use viewport's because
-                // it can vary widely depending on what items are in the view. Can't use
-                // default stepSize because it can be quite small if not changed by
-                // the scroller. 1/10th of pageSize seems reasonable, but will result
-                // in a different total duration with animated vs. non-animated stepping
-                animateStepping(increment ? maximum : minimum, pageSize/10);
+                // Default stepSize may be too small to be useful here; use fraction of
+                // pageSize if it's larger
+                animateStepping(increment ? maximum : minimum,
+                    Math.max(pageSize/10, stepSize));
             }
             return;
         }