What's New in Flutter 3.44: Material & Cupertino Widgets Update

July 8, 2026 BlueSparrow Labs
FlutterMaterialCupertinoUIUX

Flutter 3.44 isn't just about under-the-hood changes-it also debuts several UI widget enhancements. These touch both Material and Cupertino libraries and polish common components. Below, we highlight the most notable updates and show how you can start using them today.

Decoupling Material & Cupertino

First, an important context: Flutter 3.44 freezes the Material and Cupertino libraries in the core framework. Going forward, they'll move to standalone packages (material_ui, cupertino_ui). For now, all the updates we discuss are the final ones included in the framework. In practice, this means you should prepare to add a dependency (like material_ui) in future releases, but for 3.44 there's nothing you must change immediately.

New Menu Widgets and Animations

A major focus was on menus. The Material library added new animations to the MenuAnchor widget (introduced last year). With Flutter 3.44, MenuAnchor supports Material 3-style open/close animations. For example, if you have a dropdown button in a desktop app, enabling MenuAnchor.animated = true makes the submenu fade and slide smoothly. Also, a new hoverOpenDelay property on SubmenuButton lets you control how quickly hovering opens submenus-useful for tricky UI flows.

On the Cupertino side, there's the new CupertinoMenuAnchor (built on RawMenuAnchor). This provides native-looking context menus on iOS. If you had previously struggled to display a widget-based menu on iOS, this solves it. It even handles adaptive positioning for smaller screens. We tried it out: wrapping any widget (like a custom list item) in CupertinoMenuAnchor allowed us to attach a CupertinoMenuItem popup without writing platform-specific code. It feels very natural on iOS.

Improved Cupertino Sheets

Another nice touch: scrollable content in CupertinoSheets. In older Flutter, if a CupertinoSheet (a bottom sheet) contained a long ListView, dragging wasn't smooth-you had to scroll to the top first to dismiss. Now, with the new scrollableBuilder parameter, the sheet's drag gesture is coordinated with inner scrollables. This means users can seamlessly drag a sheet closed even if it's been scrolled halfway. For example, we added a scrollableBuilder to our settings sheet, passing the inner ScrollController. The result: flick down on any part of the list to dismiss, which is much more intuitive on iOS.

CarouselView Infinite Scroll

If you use carousels, Flutter 3.44 makes them better. The CarouselView widget now supports infinite scrolling (carousel loops). We had a testimonials carousel in our app; upgrading to 3.44 meant changing one property (controller.infiniteScroll = true), and it loops the content infinitely. Additionally, a new onIndexChanged callback gives precise feedback when the carousel slides to a new item. This was a wishlist item for us, so it's a welcome tweak.

Shaped Borders & Superellipse Support

Design-wise, there are also some handy additions. The ShapedInputBorder now allows using any ShapeBorder for text fields. This means you can easily apply a superellipse (iOS-style) border to a material TextField. In fact, RoundedSuperellipseBorder is provided, so achieving iOS-like inputs is easier. We changed one of our forms to use ShapedInputBorder(border: RoundedSuperellipseBorder()) and it instantly got that gentle rounded effect matching our iOS theme.

Also, CupertinoFocusHalo (the ring shown when a widget is focused on iOS) now respects superellipse shapes. This makes focus highlights consistent even if your button corners are more unusual.

Expansible and ListTiles

Under the hood, the Expansible widget (which powers ExpansionTile) got updates. It now has a toggle() method on its controller, so you can programmatically open/close expansion panels. We used this to automatically collapse all expansion panels when the user taps a "Collapse All" button. Also, Material list tiles (CheckboxListTile, etc.) now correctly accept a WidgetStatesController for state management, enabling richer stateful interactions. These are subtle, but if you maintain complex UIs, they offer more control.

Summary

In summary, Flutter 3.44's widget improvements focus on polish and productivity. The big-picture themes are smoother animations, more native feel, and better control over UI state. You can try these right away by upgrading:

flutter upgrade

Then explore the new widgets in the docs (links in the release notes). Your code mostly just uses them if you opt in. For example, adding animated: true to a MenuAnchor, or using CupertinoMenuAnchor instead of showCupertinoDialog. We plan to incorporate these refinements wherever we can-our users should see fewer janky menus and more fluid interactions in the next release.

For readers: check out the official blog for more details (Khanh Nguyen's post) and browse the API docs for any widget you use. Often, these fixes land quietly, but they add up to a more polished app.

Built by BlueSparrow Labs

We build utility applications that respect your data and help you live mindfully. Explore our matching live apps:

India Money Calc icon

India Money Calc

Made for personal finance, petirement planning & FIRE enthusiasts.

Google Play
RideReady icon

RideReady

Rule driven weather based recommendations to go out biking.

Google Play
LensNote icon

LensNote

Private journal & mood tracker. Offline-first, secure, insightful.

Google Play
TutorPal icon

TutorPal

Tutor scheduling, lesson packs, parent links, family snapshots, invoices & exports.

Google Play