Change Log - exyte/Macaw GitHub Wiki
-
#706, #709, #719: Swift 5.3 support
-
#652, #664: Added Swift Package Manager support
- New API:
-
-
#689:
CGPath.toMacaw
, NSBezierPath.toMacaw
, UIBezierPath.toMacaw
-
-
#718:
Node.nodeBy(predicate: (Node) -> Bool)
-
-
#561:
MacawView.zoom.enable(move:scale:rotate:)
-
#717: Fixed retain cycle between GroupRenderer and
parentRenderer
-
#716: Fixed retain cycles between MacawView and MacawZoom
-
#715: Fixed
onTap(..)
handler - unable to add second tap handler
-
#702, #703: Moved to the latest Xcode
-
#701: Dropped uses of regular expressions for parsing
-
#698, #700: Updated ios support to 9.0 in the Readme
-
#695, #696: Fixed wrong vector rotation
-
#692, #694: Fixed unexpected animation when changing Shape's fill color
-
#687: Fixed polyline and polygon points parsing
-
#680: Respect scale on rendering
-
#671: Added correct zoom-scroll handling
-
#644: Fixed SVG gradient issues
-
#640, #641: Fixed crash in
SVGParser.doubleFromString
method
-
#638: Fixed SVG parser
-
#637, #639: Fixed crash in parsing pattern
-
#610, #616: Enabled Macaw Catalyst support
-
#597, #599, #661: Fixed memory leak when using Event handlers
-
#578, #579, #581: Added more SVG tests
-
#573: Fixed memory leak with Image objects
-
#571: Fixed crash during font loading with "bold" weight
-
#568: Added animation layer hierarchy
-
#548, #574: Made imageContextStack safe
-
#528: Fixed SVGParser.parse() memory leak issue
-
#445, #583, #584, #586, #587, #600: Added rendering tests
-
#399, #575: Process defs inside group with no id SVG
-
#396, #582: Improve displaying of gradients SVG
-
#395, #577: Flags for 'a' path segment type may not be separated properly SVG
-
#393, #590: Improved mask support
-
#388, #576: Process more than one color for a node SVG
-
#387, #535: 'system' color support SVG
-
#71: Base64 support for Image.src enhancement
- New API:
-
-
#125, #468:
Node.toNativeImage(size:layout:) -> UIImage/NSImage
-
-
-
#502, #507:
TouchPoint.location(in: .parent | .scene)
-
#331, #506: Made
SVGParser
thread safe to allow using it in different threads
-
#191: Added clip support to SVG serializer
-
#347: Fixed issues related to usage of stroke and fill together
-
#425, #512: Improved morphing from one SVG to another when they have different viewboxes
-
#473, #474: Fixed custom font loading
-
#486: Added minor events optimizations
-
#488: Allowed using node instance across different views
-
#489, #490, #510: Fixed bounds calculation exception
-
#491: Added listener for
Image.src
changes
-
#492: Allowed
<style>
tag to be used everywhere in SVG
-
#493: Added group selectors support for SVG
-
#494: Added XML namespaces support for SVG
-
#496, #497: Fixed
Stroke.offset
animation
-
#498: Fixed parsing of radial gradient radius to include gradient transform
-
#499: Fixed
display: none
in SVG
-
#500: Fixed ignored mask attributes
-
#501: Fixed
use
parsing in SVG
-
#515: Added
dx/dy
values support for <tspan>
-
#517: Fixed SVG in Example project to make it easier to try content mode
-
#519: Fixed Swift version in podspec
-
#520: Added missed dependencies in Carthage
-
#522: Fixed slow animation start
-
#525: Fixed animation layers overlay
-
#480, #481: Added Swift 4.2/Xcode 10 support
-
#463: Added spring animation support
-
#424, #450: Added ability to check equality of any
Fill
instances
-
#485: Replaced fatal errors with exception throws in SVGParser
-
#471: Fixed crash on multi-touch
-
#451: Added class tag support for text/css predefined styles
-
#462: Fixed animation of fill var after first tap
-
#452: Improved support of styles attributes in SVG Parser
-
#460: Improved SVG parsing API
-
#461: Fixed some font rendering
-
#453: Added serialization of new components: clip, mask, etc.
-
#457: Fixed memory leaks
-
#418, #427: Fixed SVG morphing issues
-
#449: Fixed typo in Rect.center()
- Huge SVG parser improvements (filters, masks, clips, viewBox and much more)
- Integrated W3C tests with 30%+ coverage
-
#33, #34, #116: Added effects API
-
#108, #218, #374: Implemented content mode and content layout
-
#252, #411: Added
Node.bounds
API
-
#161, #284: Added multi tap and long press support
-
#87: Added support for SVG viewBox attribute
-
#123: Added support for SVG filters
-
#137: Fixed problems with clipping during animation
-
#149: Cleaned up model source code
-
#169: Fixed incorrect SVG color parsing
-
#172: Added support for fill-rule
-
#173: Implemented elliptical Arc support in path SVG shape
-
#185: Implemented px m Stroke-dasharray
-
#186: Supported stroke-dashoffset in SVG parser, renderer and serializer
-
#213: Added event managing in case of overlapped views
-
#216: Fixed SVG parser issue when close path not recognized if there is no space
-
#229: Fixed characters warnings
-
#234: Fixed iOS minimal version to 9.0
-
#236: Fixed SVGView transparency
-
#238: Added
LinearGradient(degree:stops:)
constructor
-
#241: Fixed Text bounds to consider font weight
-
#249: Fixed Node tap handler break after animating
-
#250: Fixed issue with bad position of a shape's group
-
#251: Fixed issue with getting unsupported locus
-
#258: Added quadratic path segments support
-
#260: Fixed Shape rendering without fill and stroke
-
#261: Fixed SVG path parsing
-
#271: Fixed issue with ellipses rendering
-
#274: Fixed rendering of Figma generated svgs
-
#276: Added
UIBezierPath
alternative for macOS
-
#285: Added
MacawView.findNodeAt(Point)
-
#289: Added parsing of defs section anywhere in SVG file
-
#303: Fixed gradients with stop offset > 1
-
#306: Fixed rendering of named colors in gradient
-
#309: Added "display" attribute support
-
#313: Added parsing of gradients anywhere in group
-
#318: Fixed translate attributes parsing
-
#320: Added "currentColor" support
-
#323: Fixed reverse shape animation
-
#325: Added "visibility" attribute support
-
#328: Fixed parsing of opacity > 1
-
#335: Added generic fonts supports in SVG
-
#337: Added font weight support for custom fonts
-
#342: Added percent support for svgSize
-
#348: Added "stroke-miterlimit" attribute support
-
#354: Fixed rendering of paths with M
-
#356: Fixed reversed stroke-dasharray
-
#376: Fixed parsing of a path with invalid symbols
-
#378: Added parsing of gradient color in rgb() format
-
#380: Fixed parsing of negative numbers without leading space symbol
-
#406: Fixed
RoundRect
export to SVG
-
#407: Fixed
Shape
export to SVG
-
#435: Added 'SVGView(frame:)' initializer for
IBDesignable
-
#436: Fixed image clip path
-
#437: Fixed transform on clipped images
-
#440: Fixed SVG shape fill color parsing
-
#226: Fixed carthage build issues
-
#170: Added basic CSS styles support for SVG
-
#205: Fixed skewX/skewY in SVG parser
-
#217: Fixed tap events for gradient-filled shapes
- Improved SVG support
0.9.0 (20 September 2017)
0.8.3 (14 September 2017)
-
#107: Added OSX Support
-
#112: Added ability to serialize
Node
to SVG
-
#127: Allowed to create an
Image
from UIImage
-
#48: Implemented utils for
Node
center rotation transform generation
-
#147: Fixed slow/choppy animation
-
#141: Fixed sequence of morphing animations
-
#136: Fixed issues with polygon animation
-
#133: Fixed rotate animation when Node has translation
-
#121: Fixed MacawView redrawing issue
-
#118: Avoided scaling during rotate animation
-
#111: Fixed ScaleAspectFit for non square SVG's
-
#90: Fixed Macaw.xcodeproj warnings
- API extensions:
-
Animation.state() -> AnimationState
-
Node.nodeBy(tag: String) -> Node?
-
Node.nodesBy(tag: String) -> [Node]
- Fixed various memory leaks
- Fixed morphing cycle animation
-
#74: Improved linear gradient parsing
-
#110: Fixed Swift 3 Warnings
-
#120: Avoided stroke around shape during morphing animation
-
#119: Fixed image rotation
-
#115: Added touch events support for text nodes
-
#114: Fixed Polyline animation
-
#109: Corrected MacawView deinit
- Morphing animation
- Translate SVG id attribute to Node.tag
-
#103: Touch API proposal
-
#104: Few issues with Touch events
-
#94: Add TouchEvent enhancement
-
#98: Can't rerun content animation bug
-
#102: Can't stop animation with delay bug
-
#100: Invalid line position after stopping animation bug
-
#99: OnComplete callback called on looped animation bug
-
#96: Blinking content animation bug
-
#97: Can't stop content animation bug
-
#95: After changing group content tap handle stopped working bug
-
#92: Easing.easeOut doesn't work correctly in content animation
-
#93: Can't clear group content bug
- Get rid of RxSwift dependency. This library was too complicated for our modest needs. Check out new events API (even simpler now).
- Various SVG parser improvements
-
#62: Implemented content animation
-
#67: Introduced SVGView
-
#68: Improved SVGParser.parse API
-
#76: Implemented event bubbling
-
#81: Added
Animation.cycle
method with no arguments for infinite animation
-
#82: Fixed
Animation.autoreversed
issues
-
#53: Improved text bounds calculation for all baselines
-
#83: Avoided SVG blurring when scaled through animation
-
#80: Added easing example page
-
#77: Speeded up SVG parsing
-
#69: Fixed SVGView size and content bug
-
#72: Fixed few SVG parser issues
⚠️ **GitHub.com Fallback** ⚠️