Fuse
- Added “Reset” menu option to the local preview, allowing you to manually force the application to reset itself to a default state if javascript interactions plus live reloaded markup has caused your application to behave irregularly. Performing a reset in this way functions as a broadcast, resetting every active preview. This function can also be reached using
fuse reset-preview
Fuselibs
DelayBack
-
The meaning of
DelayBack
andDurationBack
has now changed. The delay is now measured from the end of the timeline, and is the delay prior to the transiton starting. The transition still takesDurationBack
time, but does not start until afterDelayBack
time. This attempts to create a more understandable definition of the...Back
properties. -
ProgressAnimator
has been removed. TheTrackAnimator
should be used instead.
Handle renamed to Name
Docs update
- The
Node.Handle
andState.Handle
properties are renamed toNode.Name
andState.Name
respectively -
ux:Name
now sets theName
automatically onNode
andState
, and vice versa. (theux:
prefix is therefore no longer strictly required forName
onNode
andState
) - Script events that used to provide a
handle
property now provide aname
property instead
Previously:
<Page Handle="foo" />
Now:
<Page ux:Name="foo" />
Or alternatively:
<Page Name="foo" />
Misc
-
Number.Format
now takes a shorter format string, for example:F2
instead of{0:F2}
-
Effect.ExtendsRenderBounds
andEffect.RenderBounds
removed and replace withModifyRenderBounds
to allow chaining and effects to clip the bounds (as Mask does) -
RenderNode
now invalidates when children are added or removed and propagates layout to the children
FuseJS
- Added Observable.refreshAll + documentation
PullToReload
-
PullToReload
trigger added to support common behaviour of pulling down on a scroller to reload the contents -
ColumnLayout
added as a new layout type - The
ScrollViewer
has had some adjustments in how it responds to resizing. The result should be smoother now than before. -
ScrollViewer.SnapMinTransform
can now be set to false to disable any visual handling of the snap region at the top/left.
Text properties
- The
FontSize
,TextAlignment
,TextColor
, andFont
properties are no longer inherited properties and must be set specifically on the newTextControl
or derived types (specificallyTextInput
orText
). If you used such a property on a non-TextControl before and need it to cascade to the children set it in aStyle
on that node instead.
Previously:
<Panel FontSize="16">
<Text/>
Could become:
<Panel>
<Text FontSize="16"/>
Or to affect all Text children:
<Panel>
<Style>
<Text FontSize="16"/>
</Style>
-
Text
andTextEdit
derive from commonTextControl
. Shared properties moved into base class.TextElement
andTextEdit
must be embedded in one of these controls now (to acquire the newITextPropertyProvider
for rendering details)
Layout in Node class
-
Panel
acceptsNode
as children, not justElement
- Some properties/functions moved from
Element
intoNode
: LayoutRole, ArrangeMarginBox, GetMarginSize, InvalidateLayout, IsMarginBoxDependent, BringIntoView -
ArrangeMarginBox
requires a third parameter, the default wasSizeFlags.Both
before - Some types moved from
Fuse.Elements
intoFuse
: SizeFlags, LayoutRole, InvalidateLayoutReason, LayoutDependent -
Element.ParentElement
has been removed as the parent may not be an element (caseParent
toElement
if you really need this, be aware of null) -
Element.ElementRoot
has been removed as it is no longer clear what it means, and should not be used -
BringIntoViewArgs.Element
replaced withNode
-
InvalidateVisualReason
removed as it wasn’t provided consistently and wasn’t used -
Element.RenderNode
split intoRenderNodeWithEffects/WithoutEffects
.RenderBounds
becomes a property on Node, as doesHitTestBounds
. -
Element.Bounds
has been removed as it implied a feature that wasn’t there. Usenew Rect(float2(0),ActualSize)
if you should actually need the local logical bounds of the control.
ParentNode refactoring
-
Node.ParentNode
renamed toNode.Parent
-
INodeParent
,IResourceParent
andIWindow
removed. Accept aNode
instead. -
App
now suports behaviors (e.g.<JavaScript>
) directly (added to hidden root node)
Uno
- Renamed Experimental.Threading to Uno.Threading
- Optionally send in dispatcher to HttpMessageHandler.CreateRequest