Clone Tools
  • last updated 24 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
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.

fix missing import

FLEX-34944 CAUSE: GridItemRenderer implements its own logic for rendering tooltips in grids. However, it doesn't cater for the situation when those tooltips are due to Validation errors. In that situation it should leave the rendering to ToolTipManager.

SOLUTION: GridItemRenderer.toolTipShowHandler now avoids overriding the default tooltip behaviour when the errorString is not empty.

NOTES:

-in ToolTipManagerImpl I cleaned imports, made some functions static where appropriate, and removed an unused function parameter.

  1. … 1 more file in changeset.
FLEX-34941 Although not directly connected to this ticket, taking the opportunity to remove two unused (and identical) private static methods (for which, are they to be needed in the future, we have an alternative in mx.utils.ObjectUtil.getValue).

  1. … 1 more file in changeset.
FLEX-34028: Removed 2 variables that were not being used and changed the event ctrlKey/shiftKey selection check to before the dragEnabled check.

FLEX-34028: Changed how the down click drag preparation behavior works. If the CTRL key is down and the current item being clicked on is already selected (meaning would toggle it's selection) it will avoid the drag prep.

FLEX-34741: Corrected the dropIndicator. It will now use the grid.layout.centergridview.layout instead of the grid.layout directly. Also removed the calculateDropLocation from the DataGrid as it is no longer used.

FLEX-34837 Minor changes: asdocs, making some private functions static where applicable, removing unused namespaces.

    • -24
    • +19
    ./components/gridClasses/GridItemEditor.as