All Versions
98
Latest Version
Avg Release Cycle
29 days
Latest Release
-

Changelog History
Page 1

  • v4.6.0 Changes

    • feat(fabric.util): added fabric.util.transformPath to add transformations to path points #7300
    • 📜 feat(fabric.util): added fabric.util.joinPath, the opposite of fabric.util.parsePath #7300
    • 🛠 fix(fabric.util): use integers iterators #7233
    • feat(fabric.Text) add path rendering to text on path #7328
    • feat(fabric.iText): Add optional hiddenTextareaContainer to contain hiddenTextarea #7314
    • 🛠 fix(fabric.Text) added pathStartOffset and pathSide to props lists for object export #7318
    • feat(animate): add imperative abort option for animations #7275
    • 🛠 fix(Fabric.text): account for fontSize in textpath cache dimensions ( to avoid clipping ) #7298
    • feat(Observable.once): Add once event handler #7317
    • feat(fabric.Object): Improve drawing of controls in group. #7119
    • 🛠 fix(EraserBrush): intersectsWithObject edge cases #7290
    • 🛠 fix(EraserBrush): dump canvas bg/overlay color support #7289
    • feat(fabric.Text) added pathSide property to text on path #7259
    • 🛠 fix(EraserBrush) force fill value #7269
    • 🛠 fix(fabric.StaticCanvas) properly remove objects on canvas.clear #6937
    • feat(fabric.EraserBrush): improved erasing:end event #7258
    • 🛠 fix(shapes): fabric.Object._fromObject never should return #7201
    • feat(fabric.filters) Added vibrance filter (for increasing saturation of muted colors) #7189
    • 🛠 fix(fabric.StaticCanvas): restore canvas size when disposing #7181
    • feat(fabric.util): added convertPointsToSVGPath that will convert from a list of points to a smooth curve. #7140
    • 🛠 fix(fabric.Object): fix cache invalidation issue when objects are rotating #7183
    • 🛠 fix(fabric.Canvas): rectangle selection works with changing viewport #7088
    • 👍 feat(fabric.Text): textPath now support textAlign #7156
    • 🛠 fix(fabric.EraserBrush): test eraser intersection with objects taking into account canvas viewport transform #7147
    • 🛠 fix(fabric.Object): support excludeFromExport set on clipPath #7148.
    • 🛠 fix(fabric.Group): support excludeFromExport set on objects #7148.
    • 🛠 fix(fabric.StaticCanvas): support excludeFromExport set on backgroundColor, overlayColor, clipPath #7148.
    • 🛠 fix(fabric.EraserBrush): support object resizing (needed for eraser) #7100.
    • 🛠 fix(fabric.EraserBrush): support canvas resizing (overlay/background drawables) #7100.
    • 🛠 fix(fabric.EraserBrush): propagate clipPath of group to erased objects when necessary so it is correct when ungrouping/removing from group #7100.
    • 🛠 fix(fabric.EraserBrush): introduce erasable = deep option for fabric.Group #7100.
    • feat(fabric.Collection): the contains method now accepts a second boolean parameter deep, checking all descendants, collection.contains(obj, true) #7139.
    • 🛠 fix(fabric.StaticCanvas): disposing canvas now restores canvas size and style to original state.
  • v4.5.1 Changes

    • 🛠 fix(fabric.Text): fixes decoration rendering when there is a single rendering for full text line #7104
    • 🛠 fix(fabric.Text): spell error which made the gradientTransform not working #7059
    • 🛠 fix(fabric.util): unwanted mutation in fabric.util.rotatePoint #7117
    • 🛠 fix(svg parser): Ensure that applyViewboxTransform returns an object and not undefined/null #7030
    • 🛠 fix(fabric.Text): support firefox with ctx.textAlign for RTL text #7126
  • v4.5.0 Changes

    • 🛠 fix(fabric.PencilBrush) decimate deleting end of a freedrawing line #6966
    • 👍 feat(fabric.Text): Adding support for RTL languages by adding direction property #7046
    • feat(fabric) Add an eraser brush as optional module #6994
    • 🛠 fix v4: 'scaling' event triggered before object position is adjusted #6650
    • 🛠 Fix(fabric.Object): CircleControls transparentCorners styling #7015
    • 🛠 Fix(svg_import): svg parsing in case it uses empty use tag or use with image href #7044
    • 🛠 fix(fabric.Shadow): offsetX, offsetY and blur supports float #7019
  • v4.4.0 Changes

    • 🛠 fix(fabric.Object) wrong variable name cornerStrokeColor #6981
    • 🛠 fix(fabric.Text): underline color with text style ( regression from text on a path) #6974
    • 🛠 fix(fabric.Image): Cache CropX and CropY cache properties #6924
    • 🛠 fix(fabric.Canvas): Add target to each selection event #6858
    • 🛠 fix(fabric.Image): fix wrong scaling value for the y axis in renderFill #6778
    • 🛠 fix(fabric.Canvas): set isMoving on real movement only #6856
    • 🛠 fix(fabric.Group) make addWithUpdate compatible with nested groups #6774
    • 🛠 fix(Fabric.Text): Add path to text export and import #6844
    • 🛠 fix(fabric.Canvas) Remove controls check in the pixel accuracy target #6798
    • feat(fabric.Canvas): Added activeOn 'up/down' property #6807
    • feat(fabric.BaseBrush): limitedToCanvasSize property to brush #6719
  • v4.3.1 Changes

    • 🛠 fix(fabric.Control) implement targetHasOneFlip using shorthand #6823
    • 🛠 fix(fabric.Text) fix typo in cacheProperties preventing cache clear to work #6775
    • 🛠 fix(fabric.Canvas): Update backgroundImage and overlayImage coordinates on zoom change #6777
    • 🛠 fix(fabric.Object): add strokeuniform to object toObject output. #6772
    • 🛠 fix(fabric.Text): Improve path's angle detection for text on a path #6755
  • v4.3.0 Changes

    • 🛠 fix(fabric.Textbox): Do not let splitbygrapheme split text previously unwrapped #6621
    • 🚚 feat(fabric.controlsUtils) Move drag to actions to control handlers #6617
    • feat(fabric.Control): Add custom control size per control. #6562
    • 🛠 fix(svg_export): svg export in path with gradient and added tests #6654
    • 🛠 fix(fabric.Text): improve compatibility with transformed gradients #6669
    • feat(fabric.Text): Add ability to put text on paths BETA #6543
    • 🛠 fix(fabric.Canvas): rotation handle should take origin into account #6686
    • 🛠 fix(fabric.Text): Text on path, fix non linear distance of chars over path #6671
  • v4.2.0 Changes

    September 26, 2020
    • 🛠 fix(fabric.utils): ISSUE-6566 Fix SVGs for special Arc lines #6571
    • 🛠 fix(fabric.Canvas): Fix mouse up target when different from action start #6591
    • ➕ added: feat(fabric.controlsUtils): Fire resizing event for textbox width #6545
    • ➕ added: feat(fabric.controlsUtils) Move drag to actions to control handlers #6617
  • v4.1.0 Changes

    August 24, 2020
    • feat(Brushes): add beforePathCreated event #6492;
    • 📜 feat(fabric.Path): Change the way path is parsed and drawn. simplify path at parsing time #6504;
    • feat(fabric.Path): Simplify S and T command in C and Q. #6507;
    • 🛠 fix(fabric.Textbox): ISSUE-6518 Textbox and centering scaling #6524;
    • 🛠 fix(fabric.Text): Ensure the shortcut text render the passed argument and not the entire line #6526;
    • feat(fabric.util): Add a function to work with path measurements #6525;
    • 🛠 fix(fabric.Image): rendering pixel outside canvas size #6326;
    • 🛠 fix(fabric.controlsUtils): stabilize scaleObject function #6540;
    • 🛠 fix(fabric.Object): when in groups or active groups, fix the ability to shift deselect #6541;
  • v4.0.0 Changes

    August 06, 2020
    • 🛠 fixed the gesture module to not break with 4.0 #6491;
    • 🛠 fix(fabric.IText): copy style in non full mode when typing text #6454;
    • feat(fabric.Controls) expose the extra utils for control handling.
      💥 Breaking: rename fabric.controlHandlers and fabric.controlRenderers to fabric.controlsUtils.
  • v4.0.0-rc.1 Changes

    July 04, 2020
    • 🛠 fix(fabric.Canvas): ISSUE-6314 rerender in case of drag selection that select a single oobject. #6421;
    • feat(text): allow correct cursor/selection position if text is edited inside a group. #6256;
    • 🚚 feat(fabric.Control): remove position option in favor of x and y #6415;
    • 🛠 fix(fabric.Object) ISSUE-6340 infinite recursion on groups #6416;
    • 🛠 fix(fabric.Object): geometry mixin fix partiallyOnscreen #6402;
    • 🛠 fix(fabric.Image): ISSUE-6397 modify crossOrigin behaviour for setSrc #6414;
    • 💥 Breaking: fabric.Image.setCrossOrigin is gone. Having the property on the fabric.Image is misleading and brings to errors. crossOrigin is for loading/reloading only, and is mandatory to specify it each load.
    • 💥 Breaking: fabric.Control constructor does not accept anymore a position object, but 2 properties, x and y.