Skip to content

Version 3.8.0

Compare
Choose a tag to compare
@tbuschto tbuschto released this 05 Oct 12:58
· 30 commits to master since this release

Threads.js compatibiltiy

Various compatibility issues have been fixed so that the Tabris.js Worker implementation is now compatible with threads.js. In addition, console logs from the worker now also appear on the remote (CLI) developer console.

API

CollectionView

The new fastScroll property enables the fast scroll thumb in Android that can be dragged to quickly scroll through the list of items. The feature is enabled by default in iOS devices starting from version 13 and cannot be disabled.

More powerful functional components

Manipulating the data object available on all widgets will now make the widget emit dataChanged events. This allows creating functional components displaying mutating models instead of static data.

It also works with any other object that emits change events, including any instance of ObservableData (new in 3.8) or object using the @prop decorator. Changes in nested objects are also recognized.

Better MVVM support

Binding viewmodels via the @bindAll decorator now supports value conversion. Combined with the new change event propagation feature this also allows bindings to nested properties, e.g. person.address.street.

Binding multiple widget properties to one viewmodel property is now also supported.

And finally, views can now react to viewmodel events, for example to trigger an animation.

tabris.Input

The new input service object allows intercepting all pointer events on the app window, regardless of the targeted widget. Supported are down, up, move, and cancel events.

Android

Improved performance

The communication between JavaScript and native code has been optimized.

Update to Cordova 9

Tabris now uses Cordova 9 to build apps targeting android.