New in version 0.9.10

Released one year ago

Please remember to uno clean your projects after upgrading Fuse.

Summary
  • A number of fonts were removed from the BasicTheme to avoid bloat. If your project depends on any of these you can explicitly add them.
  • New Color properties makes things more consistent (yeay!) and makes it a lot simpler to animate colors (double-yeay!)
    • Fuse.Controls.GraphicsView.Background has been removed entirely in favor of simply using Control.Color
  • Several updates and additions relating to animation, interaction and layout. The most notable ones are:
    • Changes in how you use Pulse and TimeLine
    • New gestures (none of them rude!)
  • Several bug fixes, such as the ability to have folder names starting with "u".
New Color Properties

All controls (panels, shapes, text etc.) as well as Stroke now have a general purpose Color property, which is of type float4. This property controls the main color of the object. For a Panel it corresponds to Background. For a Shape, it corresponds to Fill, etc.

The main benefit of this property (beyond just being a nicer and more consistent name), is that Color as it is a float4 can be animated using <Change something.Color=.., while Background, Fill and Brush cannot (as they are brushes).

We reccommending changing all uses of Background and Fill to Color when you only want to assign a static color. All examples and docs are updated to reflect this.

Removed fonts from Fuse.BasicTheme

A number of Roboto fonts were removed to avoid unnecessary bloat. In order to use them in your projects you can simply add them as globals yourself, as described here.

Various updates to layout, animation and gestures
  • New ColumnLayout.ColumnSize that allows a dynamic ColumnCount based on the availabe size
  • Attractor now better works with 2-way bindable values (something else can modify the target value that is also used in an attractor)
  • Added RelativeTo="Size" to Resize allowing resizing to the size of another element
  • Added ZoomGesture, RotateGesture, PanGesture and InteractiveTransform
  • All interactions can now be cancelled, the CancelGestures action can be used to do this.
  • A Cancelled argument is added to Node.BeginInteraction. Behaviours must support this is they support interaction.
  • Timeline is now off by default at progress 0, use OnAtZero="true" to force it to be on at progress=0. This setting is actually uncommon, and should only be used if you're certain it is applicable (when the animators don't have a rest state)
  • Pulse should no longer be used on a WhileValue /WhileTrue trigger and will trigger deprecation warnings. Use a Timeline instead if you need Pulse funtionality
  • New PulseForward that plays a Timeline to the end and then deactivates it
  • New PulseBackward that plays a Timeline to from the end to the start
Bug fixes in FuseJS
  • Fixed a bug where certain UX filenames (e.g. folders starting with 'u' on Windows) caused exceptions in JavaScript elements due to unescaped paths.
  • UTF-8 in JavaScript on Windows DotNet builds should now work.
Bug fix in Uno C++ backend
  • Fixed a bug where the finally block in a try-finally statement was not run if the try block returned.