3.0.0-alpha03
Pre-release
Pre-release
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 onlytype
extension property and theInputType
inline class. - Views DSL IDE Preview now supports
CoroutineContext
andCoroutineScope
as constructor parameters forUi
subclasses. - Added contracts for all the
lParams
functions from Views DSL and variants. Also added to theroomDb
function from Arch Room as well as theverticalListLayoutParams
andhorizontalListLayoutParams
functions from Views DSL RecyclerView. - Add support for unsigned numbers in Bit Flags (i.e.
UByte
,UShort
,UInt
andULong
).
Changes
- When using the
button
function from Views DSL,MaterialButton
is now automatically used in place ofAppCompatButton
if you also use Views DSL Material. - Make
mainHandler
async by default to avoid vSync delays. It is used forDispatchers.MainAndroid
, so it will result in speed improvements when using Lifecycle Coroutines. If you really need sync behavior, you can use the newmainHandlerSync
top level property instead. - Make
Dispatchers.MainAndroid
of typeMainCoroutineDispatcher
so theimmediate
property is available. - Make the
awaitState
function from Lifecycle Coroutines safe to use off the main thread, and document it. - Call
validate()
from thelParams { ... }
function forConstraintLayout
. - 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
andWifiAwareManager
. - 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 oferror
from Kotlin stdlib.
New artifact
This release has the following new artifact:
"com.louiscad.splitties:splitties-views-coroutines:3.0.0-alpha03"