Newsletter Issue #16

Published: 2020-06-02

In this week’s issue, we will take a look at the new dev12 release, learn about the role of ambients, and explore a bit about how to use reflection with Compose.

One Off the Stack, One Off the Slack

You’ve got questions. That’s understandable!

Ordering Modifiers

The order in which you apply modifiers to a composable matters! Using padding() before drawBackground(), versus using padding() after drawBackground(), has significant impact on what you get.

The Role of Ambients

Google’s Jim Sproch warns us about over-use of ambients in this week’s highlighted Kotlinlang Slack thread!

Composable Commentary

Posts, videos, and other new information related to Jetpack Compose!

Compose dev12 Release Notes

The thing that will affect most Compose users is that @Model is now officially deprecated, as was mentioned here a couple of weeks ago.

They also changed the output of the Compose compiler plugin for Kotlin, changing what parameters get added automatically to a composable function. More on this later in the issue!

Compose UI dev12 Release Notes

There were lots of changes here, including an official DropdownMenu, tweaks to VerticalScroller and HorizontalScroller, and animate() support for a bunch of types.

From Custom View to Jetpack Compose

Martin Sumera reviews how his firm rewrote one of their custom views — a “donut”-style circular form of a bar chart — using Compose.

All About Jetpack Compose

In this YouTube video, Alex Zhukovich spent a couple of hours with the DutchAUG covering the basics of Compose, including testing!

Talking Kotlin: Jetpack Compose with Leland Richardson

Google’s Leland Richardson stopped by the (virtual) Talking Kotlin studios for a 40-minute podcast about Compose.

Jetpack Compose: Calculator UI

Ahmed Rizwan took a shot at reproducing the Calculator app from Android 10 using Compose, complete with animated sliding panels.

Jetpack Compose(Series 1 : Basics Ep2) — The Scroll App

Here, Akshay Sawant takes a look at TextLayout, VerticalScroller, and related composables.

Reflection and Composables

In this blog post, I explore how to call @Composable functions via reflection, and what the aforementioned changes to the dev12 compiler plugin output have on making those calls.

Resource Roundup

100% pure code!

GitHub - saraju2249/JetExplore

Saraju Pradhan is working on a Compose-powered app for hiking, showing various hiking locations for people who are much more serious about hiking than I am… 😁

(I mean, seriously: I’m not climbing in the Himalayas any time real soon)

…And One More Thing

[This week, this space intentionally left blank]