Transferred from the Adobe Open Source Subversion Repository

Revision: 5119
Author:   smgilson@adobe.com
Date:     2009-03-01T15:19:39.936226Z

Log Message:
-----------
Clean up some ASDoc tags from the addition of the @productversion/@playerversion tags

QE Notes: None
Doc Notes: None
Bugs: -

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/HaloBorder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ToolTip.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/ResultEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/remoting/Operation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/HTML.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/config/ServerConfig.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/HTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/messages/HTTPRequestMessage.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/CalendarLayout.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/core/UITextField.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/halo/src/mx/skins/halo/HaloBorder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/videoClasses/NCManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/AbstractConsumer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/Base64Encoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/validators/StringValidator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/SchemaMarshaller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework_textLayout/src/mx/core/UITLFTextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IInteractiveObjectInterface.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ContainerRawChildrenList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/AMFChannel.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/rpc/src/mx/rpc/events/FaultEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/wsdl/WSDL.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AbstractOperation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/SparkSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Tween.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxResizeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/videoClasses/VideoPlayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/HistoryManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/Schema.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/utils/HexEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/Operation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IDisplayObjectInterface.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/AbstractOperation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IDisplayObjectContainerInterface.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SoundEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SequenceInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Text.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ISpriteInterface.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/haloclassic/src/haloclassic/HaloRectBorder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/mxml/Operation.as</path>

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

--- frameworks/projects/rpc/src/mx/rpc/soap/mxml/Operation.as
+++ frameworks/projects/rpc/src/mx/rpc/soap/mxml/Operation.as
@@ -81,7 +81,7 @@
      *  @private
      */
     private var resourceManager:IResourceManager =
-									ResourceManager.getInstance();
+                                    ResourceManager.getInstance();

     //--------------------------------------------------------------------------
     //
@@ -184,8 +184,8 @@
         if (Concurrency.SINGLE == concurrency && (hasPendingInvocations() || activeCalls.hasActiveCalls()))
         {
             var token:AsyncToken = new AsyncToken(null);
-			var message:String = resourceManager.getString(
-				"rpc", "pendingCallExists");
+            var message:String = resourceManager.getString(
+                "rpc", "pendingCallExists");
             var fault:Fault = new Fault("ConcurrencyError", message);
             var faultEvent:FaultEvent = FaultEvent.createEvent(fault, token);
             new AsyncDispatcher(dispatchRpcEvent, [faultEvent], 10);
@@ -224,11 +224,6 @@

     /*
      * Kill the busy cursor, find the matching call object and pass it back
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
      */
     override mx_internal function preHandle(event:MessageEvent):AsyncToken
     {
@@ -257,13 +252,13 @@

     private var _concurrency:String;

-	private var _concurrencySet:Boolean;
-
-	private var webService:mx.rpc.soap.mxml.WebService;
-
-	private var _showBusyCursor:Boolean;
-
-	private var _showBusyCursorSet:Boolean;
+    private var _concurrencySet:Boolean;
+
+    private var webService:mx.rpc.soap.mxml.WebService;
+
+    private var _showBusyCursor:Boolean;
+
+    private var _showBusyCursorSet:Boolean;
 }

 }


Develop

Develop

--- flash/csi/src/main/flex/org/shypl/biser/csi/client/ConnectionProcessor.as
+++ flash/csi/src/main/flex/org/shypl/biser/csi/client/ConnectionProcessor.as
@@ -55,6 +55,7 @@
 		protected final function setDataExpectBody(size:int):void {
 			_dataExpectFlag = false;
 			_dataExpectedSize = size;
+			_dataBuffer.clear();
 		}

 		protected function processDataFlag(flag:uint):void {
@@ -78,7 +79,6 @@
 			if (_dataExpectedSize == _dataBuffer.bytesAvailable) {
 				setDataExpectFlag();
 				processDataBodyInternal(_dataBuffer);
-				_dataBuffer.clear();
 			}
 		}


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 2550
Author:   jszeto@adobe.com
Date:     2008-07-21T23:21:13.499756Z

Log Message:
-----------
Flex SDK Bug Fixes

This should fix any broken builds. That's what I get for trying to submit multiple bug fixes in batches.

This checkin includes changes to collapse IDisplayObjectElement and IAssignableDisplayObjectElement into a single interface.

MXMLG-132 - filters array is null by default, should be set to an empty array
Changed default value of filters array

MXMLG-200 - Cannot set maskType property dynamically at runtime
Added call to invalidate when maskType changes

SDK-15738 - RTE when calling getItemAt() function
Added temporary hacks to remove an item from its Group or parent before getting added to a different Group

SDK-16121 - RTE in swapItems() when re-swapping two items
Added logic to make sure the item indexes are added in ascending order

SDK-16138 - RTE when swapping an element with itself
Added logic to ignore a swap of the same element

Bugs: MXMLG-132, MXMLG-200, SDK-15738, SDK-16121, SDK-16138
QA: Yes
Doc: Yes
Review: Deepa

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/IDisplayObjectElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/StrokedElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/graphicsClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/graphicsClasses/TextGraphicElement.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as
@@ -43,7 +43,7 @@

 	//--------------------------------------------------------------------------
 	//
-	//  Overridden properties: GraphicElement
+	//  Overridden properties: IDisplayObjectElement
 	//
 	//--------------------------------------------------------------------------


Transferred from the Adobe Open Source Subversion Repository

Revision: 5385
Author:   chaase@adobe.com
Date:     2009-03-18T14:59:34.749796Z

Log Message:
-----------
Fixes to deal with startDelay being incorporated correctly into the underlying keyframes of an animation.

QE Notes: None
Doc Notes: None
Bugs: SDK-19982
Reviewer: Corey
Testing: checkintests, Mustella Effects, ListDataEffects, mx/effects

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxAnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/MotionPath.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/AnimationProperty.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransform.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as
@@ -433,10 +433,14 @@
             // knowing that they will derive their duration from their effects) and
             // actual keyframe-based MotionPaths.
             for (j = 0; j < keyframes.length; ++j)
-                duration = Math.max(duration, keyframes[j].time);
-
-            mp.scaleKeyframes(keyframes[keyframes.length-1].time);
-        }
+                if (isNaN(keyframes[j].time))
+                    keyframes[j].time = duration;
+                else
+                    duration = Math.max(duration, keyframes[j].time);
+
+        }
+        for (i = 0; i < animationProperties.length; ++i)
+            animationProperties[i].scaleKeyframes(duration);

         animation = new Animation(duration);
         animation.animationProperties = animationProperties;


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

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

 package mx.containers.utilityClasses
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 19963
Author:   rfrishbe@adobe.com
Date:     2011-01-26T22:28:01.460813Z

Log Message:
-----------
Cleaning up some FIXMEs and fixing up Style metadata for LabelItemRenderer.  Only making changes to ASDoc

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

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/LabelItemRenderer.as
+++ frameworks/projects/mobilecomponents/src/spark/components/LabelItemRenderer.as
@@ -73,7 +73,18 @@
  *  @productversion Flex 4.5
  */
 [Style(name="alternatingItemColors", type="Array", arrayType="uint", format="Color", inherit="yes", theme="spark, mobile")]
-// FIXME (rfrishbe): what to do about theme?
+
+/**
+ *  The main color for a component.
+ *
+ *  @default 0xCCCCCC
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
+ */
+[Style(name="chromeColor", type="uint", format="Color", inherit="yes", theme="spark, mobile")]

 /**
  *  The color of the background of an item renderer when the item is being pressed down.
@@ -91,7 +102,7 @@
  *  @playerversion AIR 2.5
  *  @productversion Flex 4.5
  */
-[Style(name="downColor", type="uint", format="Color", inherit="yes")]
+[Style(name="downColor", type="uint", format="Color", inherit="yes", theme="spark, mobile")]

 /**
  *  Color of focus ring when the component is in focus.
@@ -154,7 +165,6 @@
  *  @productversion Flex 4.5
  */
 [Style(name="selectionColor", type="uint", format="Color", inherit="yes")]
-// FIXME (rfrishbe): figure out why this isn't on defaultitemrenderer or itemrenderer

 /**
  *  Color of any symbol of a component.
@@ -169,7 +179,6 @@
  *  @productversion Flex 4.5
  */
 [Style(name="symbolColor", type="uint", format="Color", inherit="yes", theme="spark,mobile")]
-// FIXME (rfrishbe): should we add chromeColor and other inheriting styles?

 /**
  *  The vertical alignment of the content when it does not have


Transferred from the Adobe Open Source Subversion Repository

Revision: 6860
Author:   srahim@adobe.com
Date:     2009-05-12T21:45:41.073155Z

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

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

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

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ScrollBarBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ScrollBarBase.as
@@ -42,7 +42,7 @@
 [Style(name="symbolColor", type="uint", format="Color", inherit="yes", theme="spark")]

 /**
- *  Number of milliseconds after the first pageevent
+ *  Number of milliseconds after the first page event
  *  until subsequent page events occur.
  *
  *  @default 500
@@ -87,7 +87,7 @@
  *
maximum:Maximum range value.

  *
value: Current position, which must be within the
  *    minimum and maximum range values.

- *
Viewport size: represents the number of items
+ *
Viewport size: Represents the number of items
  *    in the range that you can display at one time. The
  *    number of items must be less than or equal to the
  *    range, where the range is the set of values between
@@ -95,6 +95,11 @@
  *

  *
  *  @see spark.core.IViewport
+ *  @see spark.skins.default.ScrollerSkin
+ *  @see spark.skins.default.ScrollBarDownButtonSkin
+ *  @see spark.skins.default.ScrollBarLeftButtonSkin
+ *  @see spark.skins.default.ScrollBarRightButtonSkin
+ *  @see spark.skins.default.ScrollBarUpButtonSkin
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
@@ -260,6 +265,10 @@
      * for all ScrollBars.
      *
      * @default true
+     * @langversion 3.0
+     * @playerversion Flash 10
+     * @playerversion AIR 1.5
+     * @productversion Flex 4
      * @see #smoothScrolling
      */
     public static var smoothScrollingDefault:Boolean = true;
@@ -280,8 +289,13 @@
      * operations will jump directly to the paged/stepped locations.
      * When true, the scrollbar, and any content it is scrolling, will
      * animate to that location.
-     *
+     *
      * @default true
+     *
+     * @langversion 3.0
+     * @playerversion Flash 10
+     * @playerversion AIR 1.5
+     * @productversion Flex 4
      */
     public function get smoothScrolling():Boolean
     {
@@ -378,7 +392,7 @@
      *  The viewport controlled by this scrollbar.
      *
      *  If a viewport is specified, then changes to its actual size, content
-     *  size, and scroll position, cause the corresponding ScrollBar methods to
+     *  size, and scroll position cause the corresponding ScrollBar methods to
      *  run:
      *

      *
viewportResizeHandler()

@@ -389,14 +403,14 @@
      *

      *
      *
The VScrollBar and HScrollBar classes override these methods to
-     *  keep their pageSize, maximum, and value properties in sync with the
-     *  viewport.   Similarly, they override their page and step methods to
-     *  use the viewport's scrollPositionDelta methods to compute page and
+     *  keep their pageSize, maximum, and value properties in sync with the
+     *  viewport.   Similarly, they override their page() and step() methods to
+     *  use the viewport's scrollPositionDelta methods to compute page and
      *  and step offsets.

      *
      *  @default null
-     *       mx.components.VScrollBar
-     *  @see mx.components.HScrollBar
+     *  @see spark.components.VScrollBar
+     *  @see spark.components.HScrollBar
      *
      *
      *  @langversion 3.0
@@ -560,10 +574,10 @@

     /**
      *  Adds or subtracts pageSize from value.
-     *  For an add, the new value is the closest multiple of pageSize
+     *  For an addition, the new value is the closest multiple of pageSize
      *  that is larger than the current value.
-     *  For an subtraction, the new value
-     *  is the closets multiple of pageSize that is
+     *  For a subtraction, the new value
+     *  is the closest multiple of pageSize that is
      *  smaller than the current value.
      *  The minimum value of value is pageSize.
      *
@@ -594,13 +608,13 @@
     }

     /**
-     *  Calculate the size for the thumb from the current range, pageSize, and
+     *  Calculates the size for the thumb from the current range, pageSize, and
      *  trackSize settings.
      *
      *  If fixedThumbSize is true, then subclasses should return a value based
      *  on the thumb's preferred size instead.
      *
-     *  @see fixedThumbSize
+     *  @see #fixedThumbSize
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -652,7 +666,7 @@

    /**
-    *  Called when the viewport's width or height changes, does nothing by default.
+    *  Called when the viewport's width or height value changes. Does nothing by default.
     *
     *  @langversion 3.0
     *  @playerversion Flash 10
@@ -664,7 +678,7 @@
     }

    /**
-    *  Called when the viewport's contentWidth changes, does nothing by default.
+    *  Called when the viewport's contentWidth value changes. Does nothing by default.
     *
     *  @langversion 3.0
     *  @playerversion Flash 10
@@ -676,7 +690,7 @@
     }

     /**
-     *  Called when the viewport's contentHeight changes, does nothing by default.
+     *  Called when the viewport's contentHeight value changes. Does nothing by default.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -688,7 +702,7 @@
     }

     /**
-     *  Called when the viewport's horizontalScrollPosition changes, does nothing by default.
+     *  Called when the viewport's horizontalScrollPosition value changes. Does nothing by default.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -700,7 +714,7 @@
     }

     /**
-     *  Called when the viewport's verticalScrollPosition changes, does nothing by default.
+     *  Called when the viewport's verticalScrollPosition value changes. Does nothing by default.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -716,13 +730,18 @@
     //---------------------------------

     /**
-     *  Handle a click on the increment or decrement button of the scroll bar.
+     *  Handles a click on the increment or decrement button of the scroll bar.
      *  This should cause a stepping operation, which is repeated if held down.
      *  The delay before repetition begins and the delay between repeated events
      *  are determined by the repeatDelay and
      *  repeatInterval styles of the underlying Button objects.
      *
      *  @see spark.components.Button
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     protected function button_buttonDownHandler(event:Event):void
     {
@@ -762,9 +781,17 @@
     }

     /**
-     *  Handle releasing the increment or decrement button of the scrollbar.
+     *  Handles releasing the increment or decrement button of the scrollbar.
      *  This ends the stepping operation started by the original buttonDown
      *  event on the button.
+     *
+     *  @see spark.components.Button
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+
      */
     protected function button_buttonUpHandler(event:Event):void
     {
@@ -887,6 +914,25 @@
         trackScrollTimer.start();
     }

+    /**
+     * Animates the operation to move to newValue.
+     * The pageSize parameter is used to compute the amount
+     * of time taken to get to that value, so that the time taken to animate
+     * a paging operation is roughly the same as the non-animated version;
+     * both operations should end up at the same place at about the same time.
+     *
+     * @param newValue The final value being paged to.
+     * @param pageSize The amount of horizontal or vertical movement requested.
+     * This value is used to compute, with the repeatInterval style,
+     * the total time taken to move to the new value. pageSize
+     * is usually set dynamically by the containing Scroller to the value required
+     * to view content at a logical content boundary.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
     protected function animatePaging(newValue:Number, pageSize:Number):void
     {
         animatingSinglePage = false;
@@ -898,6 +944,26 @@
             nearestValidValue(newValue, pageSize), Linear.getInstance());
     }

+    /**
+     * Animates the operation to step to newValue.
+     * The stepSize parameter is used to compute the amount
+     * of time taken to get to that value, so that the time taken to animate
+     * a stepping operation is roughly the same as the non-animated version;
+     * both operations should end up at the same place at about the same time.
+     *
+     * @param newValue The final value being stepped to.
+     * @param stepSize The amount of stepping requested.
+     * This value is used to compute, with the repeatInterval style,
+     * the total time taken to step to the new value. stepSize
+     * is usually set dynamically by the containing Scroller to the value required
+     * to view content at a logical content boundary.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+
     protected function animateStepping(newValue:Number, stepSize:Number):void
     {
         steppingDown = (newValue > value);


Transferred from the Adobe Open Source Subversion Repository

Revision: 6792
Author:   jimurphy@adobe.com
Date:     2009-05-11T18:24:09.346026Z

Log Message:
-----------
Merged revisions 6729,6731,6746,6755,6757,6765,6767-6768,6770-6772,6775,6784-6786,6790 from http://p01weblab02.corp.adobe.com/svn/opensource/flex/sdk/branches/beta1

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/utilities/src/FlashContainerPlaceholder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/fxg/FlexFXG2SWFTranscoder.java</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/flex4/src/spark/components/Group.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/flash-integration/src/mx/flash/FlexContentHolder.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/flash-integration/src/mx/flash/ContainerMovieClip.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/TabNavigator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/TypeHelper.java</path>
<path kind="dir" copyfrom-path="/flex/sdk/branches/beta1/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/types" copyfrom-rev="6790" action="A">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/types</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Resize.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/ButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/fxg/swf/FXG2SWFTranscoder.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/SimpleText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/TileLayout.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/effects/supportClasses/ResizeInstance.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/flex4/src/spark/components/supportClasses/ScrollerLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/RadioButtonSkin.mxml</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/beta1/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/types/FXGMatrix.java" copyfrom-rev="6790" action="R">/flex/sdk/trunk/modules/fxgutils/src/java/com/adobe/internal/fxg/swf/types/FXGMatrix.java</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as
@@ -137,7 +137,7 @@
     /**
      *  @private
      */
-    private var doingWholesaleChanges:Boolean = false;
+    public var doingWholesaleChanges:Boolean = false;

     //----------------------------------
     //  dataProvider
@@ -258,7 +258,7 @@
      *  The proposed selected index. This is a temporary variable that is
      *  used until the selected index is committed.
      */
-    private var _proposedSelectedIndex:int = NO_PROPOSED_SELECTION;
+    public var _proposedSelectedIndex:int = NO_PROPOSED_SELECTION;

     /**
      *  @private
@@ -937,7 +937,7 @@
             else if (ce.kind == CollectionEventKind.RESET)
             {
                 // Data provider is being reset, clear out the selection
-                _selectedIndex = -1;
+                selectedIndex = -1;
             }
             else if (ce.kind == CollectionEventKind.REPLACE ||
                 ce.kind == CollectionEventKind.MOVE ||


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

 /**
  *  The color of the border for this component.
@@ -78,7 +78,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="contentBackgroundAlpha", type="Number", inherit="yes", theme="spark")]
+[Style(name="contentBackgroundAlpha", type="Number", inherit="yes", theme="spark", minValue="0.0", maxValue="1.0")]

 /**
  *  @copy spark.components.supportClasses.GroupBase#contentBackgroundColor
@@ -98,7 +98,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="focusAlpha", type="Number", inherit="no", theme="spark")]
+[Style(name="focusAlpha", type="Number", inherit="no", theme="spark", minValue="0.0", maxValue="1.0")]

 /**
  *  @copy spark.components.supportClasses.GroupBase#focusColor
@@ -527,6 +527,8 @@
     //----------------------------------
     //  maxChars
     //----------------------------------
+
+    [Inspectable(minValue="0.0")]

     /**
      *  @copy spark.components.RichEditableText#maxChars


Transferred from the Adobe Open Source Subversion Repository

Revision: 9237
Author:   hmuller@adobe.com
Date:     2009-08-11T23:19:14.165239Z

Log Message:
-----------
Only show a scrollbar if the content size is larger than the viewport's
size by 1.0 or more.

QE Notes: Mustella tests pass
Doc Notes:
Bugs: sdk-22615
Reviewer: Ryan

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as
@@ -35,6 +35,14 @@

     /**
      *  @private
+     *  SDT - Scrollbar Display Threshold.  If the content size exceeds the
+     *  viewport's size by SDT, then we show a scrollbar.  For example, if the
+     *  contentWidth >= viewport width + SDT, show the vertical scrollbar.
+     */
+    private static const SDT = 1.0;
+
+    /**
+     *  @private
      *  Used by updateDisplayList() to prevent looping.
      */
     private var invalidationCount:int = 0;
@@ -294,7 +302,9 @@
         // don't give up space if doing so would make an auto scrollbar visible.
         // In other words, if an auto scrollbar isn't already showing, and using
         // the preferred size would force it to show, and the current size would not,
-        // then use its current size as the measured size.
+        // then use its current size as the measured size.  Note that a scrollbar
+        // is only shown if the content size is greater than the viewport size
+        // by at least SDT.

         var viewport:IViewport = scroller.viewport;
         if (viewport)
@@ -304,8 +314,8 @@
             var viewportPreferredW:Number =  viewport.getPreferredBoundsWidth();
             var viewportContentW:Number = contentSize.x;
             var viewportW:Number = viewport.getLayoutBoundsWidth();  // "current" size
-            var currentSizeNoHSB:Boolean = !isNaN(viewportW) && (viewportW >= viewportContentW);
-            if (hAuto && !showHSB && (viewportPreferredW < viewportContentW) && currentSizeNoHSB)
+            var currentSizeNoHSB:Boolean = !isNaN(viewportW) && ((viewportW + SDT) > viewportContentW);
+            if (hAuto && !showHSB && ((viewportPreferredW + SDT) <= viewportContentW) && currentSizeNoHSB)
                 measuredW += viewportW;
             else
                 measuredW += Math.max(viewportPreferredW, (showHSB) ? hsb.getMinBoundsWidth() : 0);
@@ -313,8 +323,8 @@
             var viewportPreferredH:Number = viewport.getPreferredBoundsHeight();
             var viewportContentH:Number = contentSize.y;
             var viewportH:Number = viewport.getLayoutBoundsHeight();  // "current" size
-            var currentSizeNoVSB:Boolean = !isNaN(viewportH) && (viewportH >= viewportContentH);
-            if (vAuto && !showVSB && (viewportPreferredH < viewportContentH) && currentSizeNoVSB)
+            var currentSizeNoVSB:Boolean = !isNaN(viewportH) && ((viewportH + SDT) > viewportContentH);
+            if (vAuto && !showVSB && ((viewportPreferredH + SDT) <= viewportContentH) && currentSizeNoVSB)
                 measuredH += viewportH;
             else
                 measuredH += Math.max(viewportPreferredH, (showVSB) ? vsb.getMinBoundsHeight() : 0);
@@ -389,7 +399,8 @@
         var viewportH:Number = isNaN(explicitViewportH) ? (h - (minViewportInset * 2)) : explicitViewportH;

         // Decide which scrollbars will be visible based on the viewport's content size
-        // and the scroller's scroll policies.
+        // and the scroller's scroll policies.  A scrollbar is shown if the content size
+        // greater than the viewport's size by at least SDT.

         var oldShowHSB:Boolean = hsbVisible;
         var oldShowVSB:Boolean = vsbVisible;
@@ -405,7 +416,7 @@
                 if (hsb && viewport)
                 {
                     hAuto = true;
-                    hsbVisible = (contentW > viewportW);
+                    hsbVisible = (contentW >= (viewportW + SDT));
                 }
                 break;

@@ -424,7 +435,7 @@
                 if (vsb && viewport)
                 {
                     vAuto = true;
-                    vsbVisible = (contentH > viewportH);
+                    vsbVisible = (contentH >= (viewportH + SDT));
                 }
                 break;

@@ -450,10 +461,10 @@

         var hsbIsDependent:Boolean = false;
         var vsbIsDependent:Boolean = false;
-
-        if (vsbVisible && !hsbVisible && hAuto && (contentW > viewportW))
+
+        if (vsbVisible && !hsbVisible && hAuto && (contentW >= (viewportW + SDT)))
             hsbVisible = hsbIsDependent = true;
-        else if (!vsbVisible && hsbVisible && vAuto && (contentH > viewportH))
+        else if (!vsbVisible && hsbVisible && vAuto && (contentH >= (viewportH + SDT)))
             vsbVisible = vsbIsDependent = true;

         // If the HSB doesn't fit, hide it and give the space back.   Likewise for VSB.


Transferred from the Adobe Open Source Subversion Repository

Revision: 18051
Author:   rfrishbe@adobe.com
Date:     2010-10-07T04:15:11.763153Z

Log Message:
-----------
Removing iconDisplayHolder form MobileIconItemRenderer.  In order to do this, MobileIconItemRenderer now implements IGraphicElementContainer.  This requires some extra work, but from an API perspective, getting rid of iconDisplayHolder is a good thing.  MobileIconItemRenderer implements IGraphicElementContainer, but is only made to hold one graphicelement--the iconDisplay.  This change also seems to help with performance some, though, not as much as one would hope.

During this process, I also found a small bug in GraphicElement around invalidation.

QE notes: None
Doc notes: None
Bugs: -
Reviewer: Evtim
Tests run: checkintests, mustella Group, spark/primitives
Is noteworthy for integration: No

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

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

--- frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as
+++ frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as
@@ -651,6 +651,17 @@
     {
         _parent = value;
         invalidateLayoutDirection();
+
+        // if we now have a parent and we need to do some invalidation, let our parent know
+        if (parent)
+        {
+            if (invalidatePropertiesFlag)
+                IGraphicElementContainer(parent).invalidateGraphicElementProperties(this);
+            if (invalidateSizeFlag)
+                IGraphicElementContainer(parent).invalidateGraphicElementSize(this);
+            if (invalidateDisplayListFlag)
+                IGraphicElementContainer(parent).invalidateGraphicElementDisplayList(this);
+        }
     }

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


Fixed coding error.

Fixed coding error.

--- frameworks/projects/Graphics/as/src/org/apache/flex/core/graphics/GraphicShape.as
+++ frameworks/projects/Graphics/as/src/org/apache/flex/core/graphics/GraphicShape.as
@@ -17,28 +17,28 @@
 	COMPILE::AS3
     {
         import flash.geom.Point;
-        import flash.geom.Rectangle;
+        import flash.geom.Rectangle;
     }
     COMPILE::JS
     {
-        import org.apache.flex.core.WrappedHTMLElement;
+        import org.apache.flex.core.WrappedHTMLElement;
     }
-
+
 	import org.apache.flex.core.UIBase;
-
+
 	public class GraphicShape extends UIBase
 	{
 		private var _fill:IFill;
 		private var _stroke:IStroke;
-
+
 		public function get stroke():IStroke
 		{
 			return _stroke;
 		}
-
-		/**
-		 *  A solid color fill.
-		 *
+
+		/**
+		 *  A solid color fill.
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 9
 		 *  @playerversion AIR 1.1
@@ -48,14 +48,14 @@
 		{
 			_stroke = value;
 		}
-
+
 		public function get fill():IFill
 		{
 			return _fill;
 		}
 		/**
-		 *  A solid color fill.
-		 *
+		 *  A solid color fill.
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 9
 		 *  @playerversion AIR 1.1
@@ -65,11 +65,11 @@
 		{
 			_fill = value;
 		}
-
+
 		/**
 		 * Constructor
-		 *
-		 * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
+		 *
+		 * @flexjsignorecoercion org.apache.flex.core.WrappedHTMLElement
 		 */
         public function GraphicShape()
         {
@@ -81,10 +81,10 @@
                 element.offsetTop = 0;
                 element.offsetParent = null;
                 positioner = element;
-                positioner.style.position = 'relative';
-            }
-        }
-
+                positioner.style.position = 'relative';
+            }
+        }
+
         COMPILE::AS3
 		protected function applyStroke():void
 		{
@@ -93,7 +93,7 @@
 				stroke.apply(this);
 			}
 		}
-
+
         COMPILE::AS3
 		protected function beginFill(targetBounds:Rectangle,targetOrigin:Point):void
 		{
@@ -102,7 +102,7 @@
 				fill.begin(this, targetBounds,targetOrigin);
 			}
 		}
-
+
         COMPILE::AS3
 		protected function endFill():void
 		{
@@ -111,7 +111,7 @@
 				fill.end(this);
 			}
 		}
-
+
 		/**
 		 * This is where the drawing methods get called from
 		 */
@@ -119,20 +119,20 @@
 		{
 			//Overwrite in subclass
 		}
-
+
 		override public function addedToParent():void
 		{
             COMPILE::AS3
             {
-                super.addedToParent();
+                super.addedToParent();
             }
 			draw();
             COMPILE::JS
             {
-                element.style.overflow = 'visible';
-            }
-		}
-
+                element.style.overflow = 'visible';
+            }
+		}
+
         /**
          * @return {string} The style attribute.
          */
@@ -148,7 +148,7 @@
             {
                 fillStr = 'fill:none';
             }
-
+
             var strokeStr:String;
             if (stroke)
             {
@@ -158,12 +158,12 @@
             {
                 strokeStr = 'stroke:none';
             }
-
-
+
+
             return fillStr + ';' + strokeStr;
         }
-
-
+
+
         /**
          * @param x X position.
          * @param y Y position.
@@ -172,14 +172,14 @@
         COMPILE::JS
         public function resize(x:Number, y:Number, bbox:SVGRect):void
         {
-            var width:Number = Math.max(width, bbox.width);
-            var height:Number = Math.max(height, bbox.height);
-
+            var useWidth:Number = Math.max(this.width, bbox.width);
+            var useHeight:Number = Math.max(this.height, bbox.height);
+
             element.style.position = 'absolute';
             if (!isNaN(x)) element.style.top = String(x) + 'px';
             if (!isNaN(y)) element.style.left = String(y) + 'px';
-            element.style.width = String(width) + 'px';
-            element.style.height = String(height) + 'px';
+            element.style.width = String(useWidth) + 'px';
+            element.style.height = String(useHeight) + 'px';
             element.offsetLeft = x;
             element.offsetTop = y;
         }
@@ -192,7 +192,7 @@
         private var _xOffset:Number;
         COMPILE::JS
         private var _yOffset:Number;
-
+
         /**
          * @param x X position.
          * @param y Y position.
@@ -210,4 +210,4 @@
             element.offsetTop = yOffset;
         }
 	}
-}+}


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 16560
Author:   smgilson@adobe.com
Date:     2010-06-14T21:14:37.093170Z

Log Message:
-----------
Fix ASDoc version tags for several Flex 4 classes makred as Flex 3

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/NavigatorContent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RadioButtonGroup.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/LoaderInvalidationEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ListDropIndicator.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="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Application.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as
@@ -237,9 +237,9 @@
      *  @inheritDoc
      *
      *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     override public function get baselinePosition():Number
     {
@@ -621,8 +621,8 @@
             // the skin's styles should be the same as the components
             skin.styleName = this;

-			// Note: The Spark PanelAccImpl adds a child Sprite at index 0.
-			// The skin should be in front of that.
+            // Note: The Spark PanelAccImpl adds a child Sprite at index 0.
+            // The skin should be in front of that.
             super.addChild(skin);

             skin.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, skin_propertyChangeHandler);
@@ -794,14 +794,14 @@
      */
     protected function partAdded(partName:String, instance:Object):void
     {
-		// Dispatch a partAdded event.
-		// This event is an internal implementation detail subject to change.
-		// The accessibility implementation classes listen for this to know
-		// when to add their event listeners to skin parts being added.
-		var event:SkinPartEvent = new SkinPartEvent(SkinPartEvent.PART_ADDED);
-		event.partName = partName;
-		event.instance = instance;
-		dispatchEvent(event);
+        // Dispatch a partAdded event.
+        // This event is an internal implementation detail subject to change.
+        // The accessibility implementation classes listen for this to know
+        // when to add their event listeners to skin parts being added.
+        var event:SkinPartEvent = new SkinPartEvent(SkinPartEvent.PART_ADDED);
+        event.partName = partName;
+        event.instance = instance;
+        dispatchEvent(event);
     }

     /**
@@ -824,14 +824,14 @@
      */
     protected function partRemoved(partName:String, instance:Object):void
     {
-		// Dispatch a partRemoved event.
-		// This event is an internal implementation detail subject to change.
-		// The accessibility implementation classes listen for this to know
-		// when to remove their event listeners from skin parts being removed
-		var event:SkinPartEvent = new SkinPartEvent(SkinPartEvent.PART_REMOVED);
-		event.partName = partName;
-		event.instance = instance;
-		dispatchEvent(event);
+        // Dispatch a partRemoved event.
+        // This event is an internal implementation detail subject to change.
+        // The accessibility implementation classes listen for this to know
+        // when to remove their event listeners from skin parts being removed
+        var event:SkinPartEvent = new SkinPartEvent(SkinPartEvent.PART_REMOVED);
+        event.partName = partName;
+        event.instance = instance;
+        dispatchEvent(event);
     }

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 18376
Author:   chiedozi@adobe.com
Date:     2010-10-29T19:10:26.723219Z

Log Message:
-----------
ViewNavigator now dispatches the VIEW_ACTIVATE event a frame later so that the player has a chance to render the last frame of a view transition before giving control back to the application.

QE notes:
Doc notes:
Bugs: SDK-28230
Reviewer: Ryan
Tests run:
Is noteworthy for integration:

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
@@ -1637,19 +1637,6 @@
                 stage.focus = this;
         }

-        // At this point, currentViewDescriptor points to the new view
-        if (currentViewDescriptor)
-        {
-            var currentView:View= currentViewDescriptor.instance;
-
-            if (currentView)
-            {
-                currentView.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE,
-                                                view_propertyChangeHandler);
-                currentView.setActive(true);
-            }
-        }
-
         // Clear the returned object
         _poppedViewReturnedObject = null;

@@ -1659,7 +1646,12 @@
         mouseChildren = explicitMouseChildren;
         mouseEnabled = explicitMouseEnabled;

-        // FIXME (chiedozi): Comment revalidation
+        // ViewNavigator doesn't allow for another navigation operation to
+        // be run during a view change.  If the component attempts to do
+        // one, it is queued and run after the current transition is complete.
+        // The revalidateWhenComplete flag will be true in this case and will
+        // force another validation to commit that change.  If the flag is
+        // false, we can end the validation process.
         if (revalidateWhenComplete)
         {
             revalidateWhenComplete = false;
@@ -1668,13 +1660,48 @@
         }
         else
         {
-            lastAction = ViewNavigatorAction.NONE;
-            viewChanging = false;
-
-            // Notify listeners that the view change is complete
-            if (hasEventListener("viewChangeComplete"))
-                dispatchEvent(new Event("viewChangeComplete"));
-        }
+            // SDK-28230
+            // Wait a frame before sending the complete event so that the player
+            // has the chance to render the last frame before any custom actionscript
+            // is run in response to a VIEW_ACTIVATE event.
+            addEventListener(Event.ENTER_FRAME, completeViewCommitProcess);
+        }
+    }
+
+    /**
+     *  @private
+     *  Activates the current view.  Called on the frame following the
+     *  navigator commit so that the player can render before the activate events
+     *  are dispatched.
+     */
+    private function completeViewCommitProcess(event:Event):void
+    {
+        removeEventListener(Event.ENTER_FRAME, completeViewCommitProcess);
+
+        // At this point, currentViewDescriptor points to the new view.
+        // The navigator needs to listen for property change events on the
+        // view so that it can be notified when the template properties
+        // (e.g, title, titleContent, etc) are changed.
+        if (currentViewDescriptor)
+        {
+            var currentView:View = currentViewDescriptor.instance;
+
+            if (currentView)
+            {
+                currentView.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE,
+                    view_propertyChangeHandler);
+
+                // Activate the current view.  This will dispatch a VIEW_ACTIVATE event.
+                currentView.setActive(true);
+            }
+        }
+
+        // Notify listeners that the view change is complete
+        if (hasEventListener("viewChangeComplete"))
+            dispatchEvent(new Event("viewChangeComplete"));
+
+        lastAction = ViewNavigatorAction.NONE;
+        viewChanging = false;
     }

     /**
@@ -1730,7 +1757,8 @@
             // to take advantage of validation lifecycle events, such as CREATION_COMPLETE,
             // to update properties and states on the view.  If this wasn't done, it would be
             // possible to lose invalidation calls since ViewNavigator is still in its
-            // commitProperties call.
+            // commitProperties call.  Since we are using callLater, this will get called
+            // before the next render
             callLater(viewAdded, [(transitionsEnabled ? pendingViewTransition : null)]);
         }
         else


Transferred from the Adobe Open Source Subversion Repository

Revision: 18532
Author:   chiedozi@adobe.com
Date:     2010-11-10T22:11:29.162852Z

Log Message:
-----------
Added a new menuKeyPressed event to FlexEvent that is dispatched on an active view when the menu key is pressed
A View can now cancel MobileApplication's default menu logic by canceling the menuKeyPressed event
MobileApplicationBase.backKeyHandler() now takes a KeyboardEvent as a parameter

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/components/View.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ViewNavigatorBase.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/components/supportClasses/MobileApplicationBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/events/FlexEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
@@ -2070,7 +2070,7 @@
      */
     override mx_internal function backKeyHandler():void
     {
-        if (activeView && !activeView.backKeyHandler())
+        if (activeView && !activeView.backKeyHandledByView())
             popView();
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 8615
Author:   dsubrama@adobe.com
Date:     2009-07-16T00:06:27.325362Z

Log Message:
-----------
Added in enumerations to Inspectable metadata for a bunch of properties.

Reviewer: Ryan
QA: Yes, regress
Doc: No
Checkintests: Pass

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.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/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/core/IDeferredContentOwner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HGroup.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/primitives/BitmapImage.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/primitives/VideoElement.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -688,7 +688,7 @@
     private var _mouseEnabledWhereTransparent:Boolean = true;
     private var mouseEventReferenceCount:int;

-    [Inspectable(category="General")]
+    [Inspectable(category="General", enumeration="true,false")]

     /**
      *  When set to true the mouseOpaque flag ensures that the entire bounds


Transferred from the Adobe Open Source Subversion Repository

Revision: 3847
Author:   hmuller@adobe.com
Date:     2008-10-23T17:46:32.310457Z

Log Message:
-----------
Fixed 17690, 17706

Fixed Flex::distributeExtraWidth(), stop adding width to children when
there's less than 1 pixel of space left to distribute.

Fix GroupBase properties vertical,horizontalScrollPosition, and
clipContent.  All of these properties are just delegated to the layout
property, so they must be preserved when the layout property changes.

QE Notes: Should work OK in Japanese
Doc Notes: None
Bugs: sdk-17690, sdk-17706
Reviewer: Ryan

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/Flex.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -77,19 +77,19 @@
         _layout = new BasicLayout();
         _layout.target = this;
     }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Variables
-    //
-    //--------------------------------------------------------------------------
-
-
+
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+
     //----------------------------------
     //  layout
     //----------------------------------

     private var _layout:LayoutBase;  // initialized in the ctor
+    private var _layoutProperties:Object = null;

     /**
      *  The layout object for this container.
@@ -101,19 +101,121 @@
     }

     /**
-     * @private
+     *  Three properties are delegated to the layout: clipContent,
+     *  verticalScrollPosition, horizontalScrollPosition.
+     *  If the layout is reset, we copy the properties from the old
+     *  layout to the new one.   If the new layout is null, then we
+     *  temporarily store the delegated properties in _layoutProperties.
+     *
+     *  @private
      */
     public function set layout(value:LayoutBase):void
     {
         if (_layout == value)
             return;
-
-        _layout = value;
+
+        if (value)
+        {
+            value.clipContent = clipContent;
+            value.verticalScrollPosition = verticalScrollPosition;
+            value.horizontalScrollPosition = horizontalScrollPosition;
+            _layoutProperties = null;
+        }
+        else
+        {
+            _layoutProperties = {
+                verticalScrollPosition: _layout.verticalScrollPosition,
+                horizontalScrollPosition: _layout.horizontalScrollPosition,
+                clipContent: _layout.clipContent
+            };
+        }
+
+        if (_layout)
+            _layout.target = null;
+        _layout = value;
         if (_layout)
             _layout.target = this;
+
         invalidateSize();
         invalidateDisplayList();
     }
+
+    //----------------------------------
+    //  horizontalScrollPosition
+    //----------------------------------
+
+    [Bindable]
+
+    /**
+     *  @copy mx.core.IViewport#horizontalScrollPosition
+     */
+    public function get horizontalScrollPosition():Number
+    {
+        return (_layout)
+            ? _layout.horizontalScrollPosition
+            : _layoutProperties.horizontalScrollPosition;
+    }
+
+    /**
+     *  @private
+     */
+    public function set horizontalScrollPosition(value:Number):void
+    {
+        if (_layout)
+            _layout.horizontalScrollPosition = value;
+        else
+            _layoutProperties.horizontalScrollPosition = value;
+    }
+
+    //----------------------------------
+    //  verticalScrollPosition
+    //----------------------------------
+
+    [Bindable]
+
+    /**
+     *  @copy mx.core.IViewport#verticalScrollPosition
+     */
+    public function get verticalScrollPosition():Number
+    {
+        return (_layout)
+            ? _layout.verticalScrollPosition
+            : _layoutProperties.verticalScrollPosition;
+    }
+
+    /**
+     *  @private
+     */
+    public function set verticalScrollPosition(value:Number):void
+    {
+        if (_layout)
+            _layout.verticalScrollPosition = value;
+        else
+            _layoutProperties.verticalScrollPosition = value;
+    }
+
+    //----------------------------------
+    //  clipContent
+    //----------------------------------
+
+    /**
+     *  @copy mx.core.IViewport#clipContent
+     */
+    public function get clipContent():Boolean
+    {
+        return (_layout) ? _layout.clipContent : _layoutProperties.clipContent;
+    }
+
+    /**
+     *  @private
+     */
+    public function set clipContent(value:Boolean):void
+    {
+        if (_layout)
+            _layout.clipContent = value;
+        else
+            _layoutProperties.clipContent = value;
+    }

     //----------------------------------
     //  autoLayout
@@ -400,58 +502,6 @@
             _layout.updateDisplayList(unscaledWidth, unscaledHeight);
     }

-    //--------------------------------------------------------------------------
-    //
-    //  IViewport properties and methods that delegate to layout
-    //
-    //--------------------------------------------------------------------------
-
-    //----------------------------------
-    //  horizontalScrollPosition
-    //----------------------------------
-
-    [Bindable]
-
-    /**
-     *  @copy mx.core.IViewport#horizontalScrollPosition
-     */
-    public function get horizontalScrollPosition():Number
-    {
-        return (layout) ? layout.horizontalScrollPosition : 0;
-    }
-
-    /**
-     *  @private
-     */
-    public function set horizontalScrollPosition(value:Number):void
-    {
-        if (layout)
-            layout.horizontalScrollPosition = value;
-    }
-
-    //----------------------------------
-    //  verticalScrollPosition
-    //----------------------------------
-
-    [Bindable]
-
-    /**
-     *  @copy mx.core.IViewport#verticalScrollPosition
-     */
-    public function get verticalScrollPosition():Number
-    {
-        return (layout) ? layout.verticalScrollPosition : 0;
-    }
-
-    /**
-     *  @private
-     */
-    public function set verticalScrollPosition(value:Number):void
-    {
-        if (layout)
-            layout.verticalScrollPosition = value;
-    }
-
     //----------------------------------
     //  horizontal,verticalScrollPositionDelta
     //----------------------------------
@@ -555,27 +605,6 @@
         setContentHeight(h);
     }

-    //----------------------------------
-    //  clipContent
-    //----------------------------------
-
-    /**
-     *  @copy mx.core.IViewport#clipContent
-     */
-    public function get clipContent():Boolean
-    {
-        return (layout) ? layout.clipContent : false;
-    }
-
-    /**
-     *  @private
-     */
-    public function set clipContent(value:Boolean):void
-    {
-        if (layout)
-            layout.clipContent = value;
-    }
-
     //--------------------------------------------------------------------------
     //
     //  Properties: Overriden Focus management
@@ -807,4 +836,4 @@
         dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, prop, oldValue, value));
     }
 }
-}+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 5028
Author:   egeorgie@adobe.com
Date:     2009-02-21T00:02:17.627601Z

Log Message:
-----------
IGraphicElement interface clean-up and optimizations.
Animating a GraphicElement that doesn't share the Group's DO should be now faster and smoother since redrawing it won't redraw the Group anymore.

1. Group doesn't always clear the first sequence of display objects now
2. Moved the shared DO logic almost entirely into Group
3. More granular invalidation for GraphicElements

QE Notes: Make sure we have test that count the number of display objects for a given set of graphic elements and a group
Doc Notes:
Bugs: None
Reviewer: Glenn, Ryan, Jason
tests: None

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/core/InvalidatingSprite.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/mx/graphics/BitmapGraphic.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/ISharedDisplayObject.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/IGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/StrokedElement.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/ISharedGraphicsDisplayObject.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -26,10 +26,7 @@
 import mx.events.RendererExistenceEvent;
 import mx.events.PropertyChangeEvent;
 import mx.events.PropertyChangeEventKind;
-import mx.graphics.Graphic;
-import mx.graphics.IGraphicElement;
 import mx.graphics.MaskType;
-import mx.graphics.baseClasses.GraphicElement;
 import mx.layout.BasicLayout;
 import mx.core.ILayoutElement;
 import mx.layout.LayoutBase;
@@ -123,7 +120,7 @@
     /**
      * Constructor.
      */
-     public function GroupBase()
+    public function GroupBase()
     {
         super();
         tabChildren = true;
@@ -608,6 +605,28 @@
     {
         super.invalidateDisplayList();
         layoutInvalidateDisplayListFlag = true;
+    }
+
+    /**
+     *  @private
+     *  Invalidates the size, but doesn't run layout measure pass. This is useful
+     *  for subclasses like Group that perform additional work there - like running
+     *  the graphic element measure pass.
+     */
+    mx_internal function $invalidateSize():void
+    {
+        super.invalidateSize();
+    }
+
+    /**
+     *  @private
+     *  Invalidates the display list, but doesn't run layout updateDisplayList pass.
+     *  This is useful for subclasses like Group that perform additional work on
+     *  updateDisplayList - like redrawing the graphic elements.
+     */
+    mx_internal function $invalidateDisplayList():void
+    {
+        super.invalidateDisplayList();
     }

     /**
@@ -961,40 +980,7 @@
             invalidateDisplayList();
         }
     }
-
-    /**
-     *  Notify the host that an element has changed and needs to be redrawn.
-     *
-     *  @param e The element that has changed.
-     */
-    mx_internal function graphicElementChanged(e:IGraphicElement):void
-    {
-        // Call super, so that we don't invalidate the layout
-        super.invalidateDisplayList();
-    }
-
-    /**
-     *  Notify the host that an element size has changed.
-     *
-     *  @param e The element that has changed size.
-     */
-    mx_internal function graphicElementSizeChanged(e:IGraphicElement):void
-    {
-        // Call super so that we don't invalidate the layout
-        super.invalidateSize();
-    }
-
-    /**
-     *  Notify the host that an element layer has changed.
-     *
-     *  @param e The element that has layers size.
-     */
-    mx_internal function graphicElementLayerChanged(e:IGraphicElement):void
-    {
-        // Call super, so that we don't invalidate the layout
-        super.invalidateDisplayList();
-    }
-
+
    /**
      *  @private
      *


Transferred from the Adobe Open Source Subversion Repository

Revision: 5098
Author:   gauravj@adobe.com
Date:     2009-02-27T02:21:27.489350Z

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

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

Modified Paths:
--------------
151 paths were modified

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

--- frameworks/projects/spark/src/spark/effects/interpolation/IInterpolator.as
+++ frameworks/projects/spark/src/spark/effects/interpolation/IInterpolator.as
@@ -19,11 +19,21 @@
  * values. Implementors of this interface can provide arbitrary
  * interpolation capabilities so that Animations can be created between
  * arbitrary values.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
  */
 public interface IInterpolator
 {
     /**
      * Returns the type that an implementor can handle
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     function get interpolatedType():Class;

@@ -32,6 +42,11 @@
      * and start and end values, this function returns some value
      * based on whatever interpolation the implementor chooses to
      * provide.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     function interpolate(fraction:Number,
         startValue:Object, endValue:Object):Object;
@@ -45,6 +60,11 @@
      * needs to dynamically calculate a value given some starting
      * value and a 'by' value that should be added to it, both of
      * which are of type Object and cannot simply be added together.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     function increment(baseValue:Object, incrementValue:Object):Object;

@@ -57,6 +77,11 @@
      * needs to dynamically calculate a value given some ending
      * value and a 'by' value that should be subtracted from it, both of
      * which are of type Object and cannot simply be subtracted.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     function decrement(baseValue:Object, decrementValue:Object):Object;
 }


Lighter tick image added for records list

--- collect-flex/collect-flex-client/src/main/flex/org/openforis/collect/ui/Images.as
+++ collect-flex/collect-flex-client/src/main/flex/org/openforis/collect/ui/Images.as
@@ -54,7 +54,7 @@
 		[Embed("/assets/images/back.png")]
 		public static const BACK:Class;

-		[Embed("/assets/images/complete.png")]
+		[Embed("/assets/images/tick.png")]
 		public static const COMPLETE:Class;

 		[Embed("/assets/images/footer.jpg")]


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

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as
@@ -1,4 +1,15 @@
-
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2008 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+// AdobePatentID="B976"

 package spark.components.supportClasses
 {


[VectorEditor] improved feature deletion dialog

git-svn-id: adbdea8fc1759bd16b0eaf24a244a7e5f870a654@243 fe3f0490-d73e-11de-a956-c71e7d3a9d2f

--- VectorEditorStandalone/src/org/jbei/registry/mediators/MainContentPanelMediator.as
+++ VectorEditorStandalone/src/org/jbei/registry/mediators/MainContentPanelMediator.as
@@ -269,7 +269,11 @@
         {
             var feature:Feature = event.data as Feature;

-            Alert.show("Are you sure you want to remove this feature?", "Remove Feature", Alert.YES | Alert.NO, null, function onRemoveFeatureDialogClose(event:CloseEvent):void
+            if(!feature) {
+                return;
+            }
+
+            Alert.show("Are you sure you want to remove feature: '" + feature.name + "'?", "Remove Feature", Alert.YES | Alert.NO, null, function onRemoveFeatureDialogClose(event:CloseEvent):void
             {
                 if (event.detail == Alert.YES) {
                     applicationFacade.sequenceProvider.removeFeature(feature);


git-svn-id: http://dev.onionsoft.net/svn/openhsp/trunk@42 ceb3ebad-0e53-d446-8596-a45b2b8d79cd

--- package/win32/common/form_decode.as
+++ package/win32/common/form_decode.as
@@ -35,12 +35,12 @@
 			code = int("$" + strmid(txtbf, i, 2))
 			i += 2
 		}
-		if (sw & 1)&(code == '&') {
+		if sw & (code == '&') {
 			// '&'͉s
 			wpoke cnvbf, cnt, $0A0D
 			continue cnt + 2
 		}
-		if (sw >> 1 & 1)&(code == '+') {
+		if (sw >> 1) & (code == '+') {
 			// '+'͋󔒂
 			code = 32
 		}


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

--- frameworks/projects/mobilecomponents/src/spark/layouts/VerticalSpinnerLayout.as
+++ frameworks/projects/mobilecomponents/src/spark/layouts/VerticalSpinnerLayout.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2011 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.layouts
 {
 import flash.events.Event;


Demonstrate borded text input by switching bead type

git-svn-id: 00225d326fbeb9978ee2ea3564602c0fe18eb5d2@1445297 13f79535-47bb-0310-9956-ffa450edef68

--- examples/FlexJSTest_again/MySimpleValuesImpl.as
+++ examples/FlexJSTest_again/MySimpleValuesImpl.as
@@ -24,6 +24,7 @@
 	import org.apache.flex.html.staticControls.beads.TextButtonBead;
 	import org.apache.flex.html.staticControls.beads.TextFieldBead;
 	import org.apache.flex.html.staticControls.beads.TextInputBead;
+	import org.apache.flex.html.staticControls.beads.TextInputWithBorderBead;
 	import org.apache.flex.html.staticControls.beads.models.ArraySelectionModel;
     import org.apache.flex.html.staticControls.beads.models.TextModel;

@@ -36,7 +37,7 @@
 				ITextButtonBead: TextButtonBead,
 				ITextBead: TextFieldBead,
 				ITextModel: TextModel,
-				ITextInputBead: TextInputBead
+				ITextInputBead: TextInputWithBorderBead
 			}
 		}


Tidied up script code.

Tidied up script code.

--- Bin/Data/Scripts/Terrain.as
+++ Bin/Data/Scripts/Terrain.as
@@ -471,7 +471,7 @@

     if (liquidNode is null)
     {
-        Node@ liquidNode = testScene.CreateChild("Liquid");
+        liquidNode = testScene.CreateChild("Liquid");
         liquidNode.position = Vector3(0, -48.75, 0);
         liquidNode.scale = Vector3(2000, 100, 2000);


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

--- frameworks/projects/automation/src/mx/automation/events/AutomationRecordEvent.as
+++ frameworks/projects/automation/src/mx/automation/events/AutomationRecordEvent.as
@@ -0,0 +1,234 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.automation.events
+{
+
+	import flash.events.Event;
+	import mx.automation.IAutomationObject;
+
+	/**
+	 *  The AutomationRecordEvent class represents event objects that are dispatched
+	 *  by the AutomationManager. Used by the functional testing classes
+	 *  and any other classes that must record user interactions.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public class AutomationRecordEvent extends Event
+	{
+		include "../../core/Version.as";
+
+		//--------------------------------------------------------------------------
+		//
+		//  Class constants
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  The AutomationRecordEvent.RECORD constant defines the value of the
+		 *  type property of the event object for a record event.
+		 *
+		 *
The properties of the event object have the following values:

+		 *

+		 *
Property	Value

+		 *
args	Array of arguments to the method.

+		 *
automationObject	Delegate of the UIComponent
+		 *        that is dispatching the interaction.

+		 *
bubbles	true

+		 *
cacheable	true if the event
+		 *       should be saved in the event cache, and false if not.

+		 *
cancelable	true

+		 *
currentTarget	The Object that defines the
+		 *       event listener that handles the event. For example, if you use
+		 *       myButton.addEventListener() to register an event listener,
+		 *       myButton is the value of the currentTarget.

+		 *
methodName	A displayable Name of the operation

+		 *
replayableEvent	Underlying event that
+		 *         represents the interaction.

+		 *
target	The Object that dispatched the event;
+		 *       it is not always the Object listening for the event.
+		 *       Use the currentTarget property to always access the
+		 *       Object listening for the event.

+		 *

+		 *
+		 *  @eventType record
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public static const RECORD:String = "record";
+
+		/**
+		 *  refer recordCustomAutomationEvent in IAutomationManager for the usage of this constant
+		 */
+		public static const CUSTOM_RECORD:String = "customRecord";
+
+		//--------------------------------------------------------------------------
+		//
+		//  Constructor
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  Constructor.
+		 *
+		 *  @param type The event type; indicates the action that caused the event.
+		 *
+		 *  @param bubbles Whether the event can bubble up the display list hierarchy.
+		 *
+		 *  @param cancelable Whether the behavior associated with the event can be prevented.
+		 *
+		 *  @param automationObject Delegate of the UIComponent that is dispatching the interaction.
+		 *
+		 *  @param replayableEvent Underlying event that represents the interaction.
+		 *
+         *  @param args Array of arguments that are passed to the method that is currently being recorded.
+		 *
+		 *  @param methodName Displayable name of the operation.
+		 *
+		 *  @param cacheable true if the event should be saved in the event cache,
+		 *  and false if not.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public function AutomationRecordEvent(type:String = "record",
+											  bubbles:Boolean = true,
+											  cancelable:Boolean = true,
+											  automationObject:IAutomationObject = null,
+											  replayableEvent:Event = null,
+											  args:Array = null,
+											  name:String = null,
+											  cacheable:Boolean = false,
+											  recordTriggeredByCustomHandling:Boolean = false)
+		{
+			super(type, bubbles, cancelable);
+
+			this.automationObject = automationObject;
+			this.replayableEvent = replayableEvent;
+			this.args = args;
+			this.name = name;
+			this.cacheable = cacheable;
+			this.recordTriggeredByCustomHandling = recordTriggeredByCustomHandling;
+		}
+
+		//--------------------------------------------------------------------------
+		//
+		//  Properties
+		//
+		//--------------------------------------------------------------------------
+
+		//----------------------------------
+		//  automationObject
+		//----------------------------------
+
+		/**
+		 *  The delegate of the UIComponent object that is recording this event.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public var automationObject:IAutomationObject;
+
+		//----------------------------------
+		//  replayableEvent
+		//----------------------------------
+
+		/**
+		 *  The underlying interaction.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public var replayableEvent:Event;
+
+		/**
+		 *  A serialized representation of the event as an Array
+		 *  of it's property values.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public var args:Array;
+
+
+		/**
+		 *  The automation event name.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public var name:String;
+
+		/**
+		 *  Contains true if this is a cacheable event, and false if not.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public var cacheable:Boolean;
+
+		/**
+		 *  Contains true if this event current record is caused from a custom record event, and false if not.
+		 *  User can use this field to differentiate the record event triggered by the framework
+		 *  and the custom record.
+		 *  e.g if the list has the select event and currently it recors the selection details either with index
+		 *  or with the selected item. But user would like to record the details with both but would like to record it
+		 *  with the same event name, it will be pretty cumborosome to differentiate the select event triggerd by
+		 *  framework and the one triggered by using the recordCustomAutomationEvent() API on the automation manager.
+		 *  If the event was triggered using the recordCustomAutomationEvent() API this flag will be true. In all other cases
+		 *  framework will keep this flag with the default value
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public var recordTriggeredByCustomHandling:Boolean;
+
+		//--------------------------------------------------------------------------
+		//
+		//  Overridden methods: Event
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  @private
+		 */
+		override public function clone():Event
+		{
+			return new AutomationRecordEvent(type, bubbles, cancelable,
+				automationObject,
+				replayableEvent,
+				args,
+				name,
+				cacheable,
+				recordTriggeredByCustomHandling);
+		}
+	}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 20887
Author:   chiedozi@adobe.com
Date:     2011-03-17T01:19:46.062991Z

Log Message:
-----------
Merging hero_private revision 20885 into trunk

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="dir" action="M">/private/flex/sdk/trunk</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as
@@ -708,7 +708,8 @@
                 // Force a validation of the new navigator to prevent a flicker from
                 // occurring in cases where multiple validation passes are required
                 // to completely validate a view
-                navigator.validateNow();
+                if (initialized)
+                    contentGroup.validateNow();

                 if (navigator.activeView)
                 {