
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.rootto inspect UI hierarchy.- You can also use
bridge.rootin 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-samplesrepository. - AtomPopup - Added new
AtomPopupclass which lets you create easy popups attached to any element. (Requires Grid in root of Page). You have to setPopupTemplateandDisplayPopupattached properties.Popupwill be created and displayed as long asDisplayPopupis set to true. - IJSContext.CreateBoundFunction - Introducing the
IJSContext.CreateBoundFunctionmethod, in which a delegate receivesthisparameter. In iOS, this function requires two steps, so you should useIJSContext.CreateBoundFunctionfor faster execution. On other platforms it does not matter which one do you use. - Added new Method Overloads - Method overloads for
InvokeFunction,CreateNewInstanceandInvokeMethodinIJSValuehave been added to reduce array allocation. - Added new Type JSDelegate - Added new Type
JSDelegatewhich creates a typed delegate for JavaScript function. So you can easily assign JavaScript function as delegates. - Added new TextToModel Delegate in AtomChips - Added new
TextToModelproperty 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 toSelectedItemsarray. - Added new AtomExpander Control - Added new
AtomExpandercontrol, 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
Viewas child ofDetailproperty, it will be hidden and it will be visible only whenIsExpandedis set true. - DetailTemplate - Instead setting detail, you can set this property as
XF.DataTemplateand 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
AtomChoiceViewcontrol, which is same asAtomXFComboBoxbut 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
Searchproperty to filter your items source. - DropDownHeight - Height of the popup, default is 200.
- Prompt - A selection message displayed if
SelectedItemis null. - EmptyItemTemplate - Prompt that will be displayed if
SelectedItemis 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
SearchEnabledwas set to true, you can use this to filter your items source.