Jetpack Compose
BasicTextField bubble wrap
A little hack for adding (content) padding to your (decoration) boxes.
Jetpack Compose
A little hack for adding (content) padding to your (decoration) boxes.
Talks
This is a follow-up to my last snapshots talk, Opening the Shutter on Snapshots, and a companion to my article How derivedStateOf works: a deep d(er)ive. I've also written a bunch of articles on Compose state, check them out here. Slides: Deriving derived state: derivedStateOf explained
Compose State Series
Compose's snapshot system is really neat, as I've talked and written about before. Once you know how it works, you can do some cool tricks with it, and derivedStateOf is a rich example of this. I recently gave a talk focused more on explaining the algorithms
Compose State Series
Often when thinking about Jetpack Compose state, we think in terms of what code will be re-executed when that state changes. We call functions that get re-executed like this “restartable functions”. Composable functions are generally restartable, but some other functions are restartable too, and you can make your own. 📖This
Talks
I've spent the last six months working on a new BasicTextField. Check out what we've been working on!
Talks
I was very excited to get to chat more with Seb and Ivan, this time about something I’ve been working on at Google: the new BasicTextField!
Talks
I had so much fun writing about Compose's state system that I decided to give a talk about how the snapshot system's algorithm works. I gave this talk initially at droidcon NYC in 2022, then again the next year at droidcon SF.
Talks
Slides: The Workflow Pattern, Composed (droidconSF 2022)Speaker Deck sources: The Workflow Pattern, Composed - droidconSquare, as we’ve told you over the last 4 Droidcons, has adopted the Workflow pattern - it’s now running about nearly two thirds of Square’s flagship Android codebase! This year, Workflows meet
Compose State Series
Up to this point in this blog series, I've discussed how to use Compose's snapshot state system, some advantages of how it's designed, and the occasional best practice. But I haven't talked about where the rubber meets the road: how does something
Spring 2022 Compose Hackathon
I meant to write this on Friday, but got caught up trying to gather some last bits of data after my dev environment fell over and decided to stop running benchmarks altogether. Since Wednesday… In the last post, I left off having built the piece table I initially meant to.
Spring 2022 Compose Hackathon
Well, so much for blogging every day. Better late than never, right? Anyway, I have a good excuse: I’ve been super busy writing code and tests, and it’s not going terribly. I'm calling this day 2.5 since I was up a large part of the
Spring 2022 Compose Hackathon
Introduction This week the Jetpack Compose team is doing a hackweek. I am using it as an excuse to try building something I've been thinking about basically since I joined the team. I'm not sure if it will work, or if it will be fast enough