
Adds support for the following new platforms: UWP, macOS, Tizen and GTK.
Features
- New Platforms - Added support for the following new platforms:
- UWP - Universal Windows Platform
- Apple macOS
- Tizen - * Community Support
- GTK - * Community Support
- Xamarin does not support these platforms officially, however Web Atoms will support them as much as they can provided the bug/update is part of Web Atoms framework.
- Added a new JavaScript Engine - A new JavaScript Engine: YantraJS has been written specifically for Web Atoms, this engine is written in C#, so it can run anywhere where C# is supported, except Apple iOS as it does not allow loading of dynamic types.
- Added new Controls:
- AtomButtonBar - A native button bar.
- AtomCalendar - Calendar control to host date items.
- AtomDateField - A selectable date field built on top of AtomCalendar.
- AtomChoiceView - A simple dropdown with the ability to search and choose.
- AtomChips - Multiple list items, editable and searchable.
- Added new Console Debugging Hints:
bridge.root
, while in debugger console, you can typebridge.root
to inspect UI hierarchy.- You can also use
bridge.root
in Safari developer tools (Requires Mac).
- Added a new code Generator - Released source code for TypeScript definition generator from dll, which you can use to generate source code of your custom UI Elements.
- UWP Sample - Added UWP samples in
xf-samples
repository. - AtomPopup - Added new
AtomPopup
class which lets you create easy popups attached to any element. (Requires Grid in root of Page). You have to setPopupTemplate
andDisplayPopup
attached properties.Popup
will be created and displayed as long asDisplayPopup
is set to true. - IJSContext.CreateBoundFunction - Introducing the
IJSContext.CreateBoundFunction
method, in which a delegate receivesthis
parameter. In iOS, this function requires two steps, so you should useIJSContext.CreateBoundFunction
for faster execution. On other platforms it does not matter which one do you use. - Added new Method Overloads - Method overloads for
InvokeFunction
,CreateNewInstance
andInvokeMethod
inIJSValue
have been added to reduce array allocation. - Added new Type JSDelegate - Added new Type
JSDelegate
which creates a typed delegate for JavaScript function. So you can easily assign JavaScript function as delegates. - Added new TextToModel Delegate in AtomChips - Added new
TextToModel
property of typeFunc<string, object>
which will be used by the control to convert entered text into any object model. If it is null, entered text will be added toSelectedItems
array. - Added new AtomExpander Control - Added new
AtomExpander
control, which has the following properties.- IsExpanded - This is controlled by the drop down arrow, however, you can also bind it and update it from the code. If it is true, the details will be visible.
- Icon - ImageSource of an Image that will be be displayed on the left corner.
- Detail - You can set any
View
as child ofDetail
property, it will be hidden and it will be visible only whenIsExpanded
is set true. - DetailTemplate - Instead setting detail, you can set this property as
XF.DataTemplate
and a new detail will only be created if control is in expanded state. As soon as control is collapsed, detail View will be destroyed.
- Added new AtomChoiceView Control - Added new
AtomChoiceView
control, which is same asAtomXFComboBox
but it is written in C#. It has following properties:- ItemsSource - List of items to be displayed in popup, choices will be displayed even if it is empty.
- SearchEnabled - A text editor will be displayed as soon as the control is tapped, you can use
Search
property to filter your items source. - DropDownHeight - Height of the popup, default is 200.
- Prompt - A selection message displayed if
SelectedItem
is null. - EmptyItemTemplate - Prompt that will be displayed if
SelectedItem
is null, Prompt will be ignored and this template will be displayed as Prompt. - ItemTemplate - Item template for the choices and selected item.
- SelectionStartCommand - Executed when the choice popup was opened.
- SelectionEndCommand - Executed when the choice popup was canceled or closed.
- Search - The text that is entered in search box if
SearchEnabled
was set to true, you can use this to filter your items source.