Surface Duo Blog

Surface Duo Design Kit 2.2 update

Hello app designers! Our Surface Duo Design Kit is now updated to version 2.2. If you haven’t heard of this kit before, Surface Duo Design Kit is the go-to place where you can find all our UX design suggestions and UI components for both Surface Duo and Surface Duo 2. It includes many of the interface components which you can ...

Dual-screen example adds Jetpack Compose to the experience

Hello Compose developers! This week, we’re excited to announce two big updates to our dual-screen experience example: a Compose refactor of the catalog page and a brand new order history page. The dual-screen experience example provides an end-to-end experience centered around a travelling guitar salesperson, with options ...

Experimenting with postures in Flutter

The things I'm doing in this article are highly experimental. By the end of it hopefully you will agree with these two statements: To achieve the desired behavior, I end up using several hacky techniques which I would think twice before shipping to production. This article is not a tutorial. It is a story of the fun I had with ...

Test Kit Annotations update

Hello Android developers! We are excited to announce an update for the foldable Test Kit library. Test Kit provides utility methods and classes that help you write instrumented tests for large screen and foldable devices. This update adds annotations which are useful for creating tests for one posture at a time. Now, instead of ...

Making a gamepad for my Flutter game

Did you know that building games in Flutter is just as easy as building apps? There is even a game engine built on top of it called Flame. Today we are first going to explore building a simple game with Flame and then enhance the game for dual-screen and foldable devices. This space themed game will use an on-screen gamepad controller as ...

Drag and drop library for Jetpack Compose

Hello Compose developers! This week, we are excited to announce the release of DragAndDrop, a new utility library that will help you easily add interactive drag and drop capabilities to your app in Compose, following Google’s Drag and drop guidelines. It is the newest addition to Microsoft’s Compose SDK. On dual-screen ...

Responsive layouts in Flutter with TwoPane

Welcome to another Flutter update. This time we will dive into TwoPane, tell you how to get it from pub.dev and focus on the types of layouts you can build with it. Before we get to examples, we will first see what parameters it exposes. This widget has cousins in other frameworks, making its context interesting to explore. Let us first ...

Flutter foldable support is now stable

Hello! Flutter 3 was announced last week, and we have good news to share with you. The foldable support that we contributed to Flutter is now released in the latest stable branch. Let us dive into what this means for you. We will first go over the new API that you can use and then review what else Flutter now does for you out of the box...

Google I/O 2022 recap

Hello Android developers, Another Google I/O has flown by, and we were excited to see sessions on foldable user experience design as well as developer-focused talks for updating existing apps to be more responsive and using Jetpack Compose. Here are our favorite sessions and announcements from the past few days: Flutter 3 announced...