Skip to content

3.0.0-alpha03

Pre-release
Pre-release
Compare
Choose a tag to compare
@LouisCAD LouisCAD released this 05 Feb 23:55

This release introduces a new split: Views Coroutines.

New features

  • Added radioGroup { ... } functions in Views DSL.
  • Added first class support for ConstraintLayout barriers, guidelines and groups.
  • New styledView function for use when making an API for xml styles usage in Kotlin. See an example in AppCompatStyles.
  • The MaterialComponentsStyles class brings access to all the xml styles defined in Google's Material Components library for Android in a typesafe way.
  • Add materialCardView { ... } functions in Views DSL Material.
  • Add navigationView { ... } functions in Views DSL Material.
  • Make EditText inputType typesafe with the set only type extension property and the InputType inline class.
  • Views DSL IDE Preview now supports CoroutineContext and CoroutineScope as constructor parameters for Ui subclasses.
  • Added contracts for all the lParams functions from Views DSL and variants. Also added to the roomDb function from Arch Room as well as the verticalListLayoutParams and horizontalListLayoutParams functions from Views DSL RecyclerView.
  • Add support for unsigned numbers in Bit Flags (i.e. UByte, UShort, UInt and ULong).

Changes

  • When using the button function from Views DSL, MaterialButton is now automatically used in place of AppCompatButton if you also use Views DSL Material.
  • Make mainHandler async by default to avoid vSync delays. It is used for Dispatchers.MainAndroid, so it will result in speed improvements when using Lifecycle Coroutines. If you really need sync behavior, you can use the new mainHandlerSync top level property instead.
  • Make Dispatchers.MainAndroid of type MainCoroutineDispatcher so the immediate property is available.
  • Make the awaitState function from Lifecycle Coroutines safe to use off the main thread, and document it.
  • Call validate() from the lParams { ... } function for ConstraintLayout.
  • Make xml styles related classes inline again (thanks to compiler bug fixed in Kotlin 1.3.20).
  • The reified generic variant of view from Views DSL is now an internal API.
  • ViewFactory and related symbols are now an internal API.
  • Mark some SystemServices as nullable to be instant app tolerant. That includes WallpaperManager,WifiManager, WifiP2pManager, UsbManager, DevicePolicyManager, FingerprintManager,ShortcutManager and WifiAwareManager.
  • The Views DSL IDE Preview documentation now states that running the compileDebugKotlin gradle task is enough to update the preview. This is faster than a full build.

Fixes

  • Make viewFactory from Views DSL internal API compatible with IDE Preview.

Deprecation

  • The illegal top level function from Exceptions has been deprecated in favor of error from Kotlin stdlib.

New artifact

This release has the following new artifact:

"com.louiscad.splitties:splitties-views-coroutines:3.0.0-alpha03"