Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Fix regression issue. Turns out LabelUtil.itemToLabel has side effects and text was not updated on control unless called

FLEX-34880 Added an asdoc recommendation that developers use Sort and SortField as immutable objects, although the current API allows for mutability.

  1. … 2 more files in changeset.
Revert FLEX-34880 part 3

This reverts commit 2b09e327281211d26d65dd5d061b02d645cbdd39.

    • -1
    • +1
    ./components/gridClasses/GridColumn.as
  1. … 8 more files in changeset.
Revert FLEX-34880 part 1 This reverts commit 0b5a634dabb00c04a492a08375e29c6885c1486f.

    • -2
    • +2
    ./components/gridClasses/GridColumn.as
  1. … 9 more files in changeset.
FLEX-34738 Fix BusyIndicator so the skin / timer is removed when it's removed from stage while still spinning.

  1. … 1 more file in changeset.
FLEX-34880 Placed the other ISortField setters behind mx_internal and removed them from the interface.

    • -2
    • +2
    ./components/gridClasses/GridColumn.as
  1. … 9 more files in changeset.
FLEX-34880 Placed only one state setter (SortField.compareFunction) behind mx_internal (thus also renaming it to SortField.compareFunction_) to provide the template for the others. Also removed it from the interface (ISortField).

    • -1
    • +1
    ./components/gridClasses/GridColumn.as
  1. … 8 more files in changeset.
FLEX-35126 Removing unused variables, making elligible functions static, correcting an asdoc typo, and removing superfluous multiplication by 1.

    • -8
    • +4
    ./components/gridClasses/GridViewLayout.as
  1. … 3 more files in changeset.
FLEX-34088 The fix for this bug became superfluous when the fix for FLEX-34078 was implemented, which also catered to this bug. So it can be safely removed (and should, because it causes other bugs - see the ticket).

FLEX-34088 Added unit test to reproduce the bug. Currently it passes, but I tested locally with some modifications to DropDownController and can certify it does indeed fail when it should - namely, when both the fix for FLEX-34088 and FLEX-34078 are removed. In other words, the fix for FLEX-34078 also fixes this issue, making the current fix superfluous. I'll remove it in the next commit.

    • -1
    • +1
    ./components/supportClasses/ButtonBase.as
  1. … 1 more file in changeset.
FLEX-33311 CAUSE: It is possible for a call to ConstraintLayout.parseElementConstraints() to trigger, after a long series of other functions, a validation cycle on the same component whose layout is that ConstraintLayout instance. (If you want to see that series of stack traces, open stack.xml on the Jira ticket.) When this happens, either ConstraintLayout.measure() or ConstraintLayout.updateDisplayList() ends up calling clearConstraintCache(). (This is expected behaviour when there's no convoluted stack trace which ends up re-validating the same component, as we have here.) Now, when this inner validation cycle ends, and the outer call to parseConstraints() continues execution, it does so with all the cache variables nulled. This can result in a fatal if there is still a layout element remaining in parseConstraints() to parse via parseElementConstraints(). The latter function needs the cache Vector "rowBaselines", which is now null.

SOLUTION:

To cater for the special case when the call to parseConstraints() triggers another call to the same function, on the same ConstraintLayout instance, we use a counter to know when we're back in the outer call (when the counter is 0).

NOTES:

-The unit test now passes.

-Also removed an unused local variable.

FLEX-33311 Correcting some typos in the asdoc.

FLEX-35082: Changed the way regex was being used to compare the given pattern for dataProvider objects in the findRowIndex / findRowIndices methods.

    • -2
    • +2
    ./components/supportClasses/ListBase.as
FLEX-31948 Removing the fatal by checking whether the column exists. Plus some minor code changes while reading code: simplifying if clauses, removing superfluous brackets, adding semicolons.

  1. … 3 more files in changeset.
FLEX-26808 Added unit tests to make sure that the selection (made either programmatically or through ctrl-clicking on the grid) is preserved when the user starts dragging the items. The tests pass locally.

-Also added VectorUtil.toArrayObject() to convert a Vector.<Object> to an Array (uses the same private function as VectorUtil.toArrayInt(), so I haven't added unit tests).

-Added a missing semicolon in Grid.as

  1. … 2 more files in changeset.
FLEX-34926 fixed misplaced [PercentProxy] metatag

    • -2
    • +2
    ./components/gridClasses/GridColumn.as
FLEX-35028 stop RTE when clicking on DG header

FLEX-26808 Minor refactoring while reading the code: asdocs improvements, and adding missing semicolon.

FLEX-26808 Optimizing imports.

FLEX-26808 Terminating statements, correcting asdocs, and removing an unused variable and unused method.

FLEX-26808 CAUSE: DataGrid.grid_mouseDownHandler() committed the selection before checking whether the user was likely to begin a drag operation.

SOLUTION: Following the pattern in the spark List component, we're committing the selection on MOUSE_DOWN only if the user has clicked on an item which isn't selected yet, or the grid is not dragEnabled, or we're not in row selection mode (i.e. either GridSelectionMode.SINGLE_ROW or GridSelectionMode.MULTIPLE_ROWS). But when it looks like the user might start a dragOperation, we're deferring the selection adjustment to the MOUSE_UP event (caught either in DataGrid.grid_mouseUpHandler() or in DataGrid.sandbox_mouseUpHandler() ).

NOTES:

-also removed some duplication between DataGrid.grid_mouseDownHandler() and DataGrid.removeMouseHandlersForDragStart().

-also corrected some asdocs @see references.

FLEX-26808 Improved asdocs and comment.

FLEX-26808 Renamed getFirstItemValue to getFirstItem.

  1. … 2 more files in changeset.
FLEX-26808 Moving Vector-related function List.getFirstItemValue() to new VectorUtil class (unit tested in VectorUtilTests.as)

  1. … 2 more files in changeset.
update version to 4.16.0

  1. … 19 more files in changeset.
FLEX-34979 Adding Apache header.

    • -0
    • +19
    ./collections/AdvancedStyleClient_.as
FLEX-34979 CAUSE: The transformation of the spark Sort and SortField from extending AdvancedStyleClient to implementing its interfaces and using an instance of it as a class member had some more bugs: -the id setter didn't exist -when AdvancedStyleClient dispatched an event, Sort / SortField didn't pick up on it and dispatch forward -When AdvancedStyleClient initialized it added itself as a styleClient to the document. This is undesired for Sort and SortField because from then on the style code would used the AdvancedStyleClient member instead of the Sort / SortField instances, as before, which meant that their relevant functions (such as setStyle or styleChanged) were never called.

SOLUTION:

-there is now an id setter in AdvancedStyleClientImplementation

-AdvancedStyleClient_ was introduced to be able to override some functions of AdvancedStyleClient

-Sort and SortField now listen to the events dispatched via their AdvancedStyleClient_ member and pass on the events if there's a listener for them

-on initialization we now add the Sort / SortField instances as styleClients to the document instead of their AdvancedStyleClient members, which should now be hidden from any code interacting with Sort and SortField (this is achieved in AdvancedStyleClient_)

-all the instances where AdvancedStyleClient interacted with the StyleProtoChain using 'this' were changed into using the Sort / SortField instances

NOTES:

-Since some of the public functions in AdvancedStyleClient (getStyle, setStyle, styleChanged) are also called internally from other AdvancedStyleClient functions (or could be, in the future), and we need them to hit the Sort / SortField implementations instead, AdvancedStyleClient_ now overrides those functions and makes sure that the Sort / SortField versions are called.

-AdvancedStyleClient.setDeferredStyles() was made protected so that AdvancedStyleClient_.as can override it to make sure that StyleProtoChain.setStyle is always called referring to Sort or SortField instead of the instance of AdvancedStyleClient_ they use internally.

    • -1
    • +23
    ./collections/AdvancedStyleClientImplementation.as
    • -0
    • +107
    ./collections/AdvancedStyleClient_.as
  1. … 1 more file in changeset.
FLEX-34979 CAUSE: When the transition was made from the spark Sort and SortField extending AdvancedStyleClient to implementing its interfaces, the omission was that only IAdvancedStyleClient was implemented, as opposed to all three relevant interfaces (IAdvancedStyleClient, IFlexModule, IMXMLObject). More specifically the mustella failures reflected that the function initialized() wasn't present anymore, as that function, called automatically by the framework, is responsible for registering the Sort and SortField instances with the IFlexModuleFactory implementor (FlexModuleFactory or SystemManager, etc.).

SOLUTION:

The spark versions of Sort and SortField now also implement IFlexModule and IMXMLObject via AdvancedStyleClientImplementation.

NOTES:

-also cleaned some imports in AdvancedStyleClient.

    • -0
    • +22
    ./collections/AdvancedStyleClientImplementation.as
  1. … 1 more file in changeset.
FLEX-33537: Updated to force properties to be validated before setting the focus to the textDisplay. This seems to stop it tripping over itself with the visible skin states.

Revert "FLEX-33537: Changed the internal setfocus to the textDisplay call to be callLater. This allows for the skin/child components to be setup before receiving focus."

This reverts commit d5c329722cd60568c53210973024b591b912b486.