Being a part of the development industry at this time is a wonderful experience. The name of the game is constant change and frequent upgrades. We always look forward to major updates, and this time, we’ll be checking out Flutter.
If you are a developer, you probably know about Flutter – a cross-platform, open-source framework that changed the way mobile apps were developed. There has been a continual growth in both the size and usage of the ecosystem. On top of the use on desktops and the web, over 1000 Flutter apps are released each day in the App Store and Play Store.
The momentum has not slowed down since the release of Flutter 3.0 three months ago. Flutter keeps improving with every new version released by the Flutter team.
A new version of Flutter has been released – Flutter 3.3.
In today’s post, we will discuss the latest update that brings a variety of improvements.
There is a lot to unpack with every new release. Here is a fine-tuned version of this revolutionary framework for you to explore!
What’s New in Flutter 3.3?
In Oslo, Norway, Flutter Vikings began on August 31, with the release of Flutter 3.3. It includes a number of fixes, upgrades, and new features, including improvements in framework, performance, desktop support, rendering layer, and stability.
For your better understanding, we are going to discuss each improvement in detail as it relates to its distinct scopes. Take a look at them below.
Selection on a global scale
Flutter web apps do not have a native feature that allows users to select elements with a single gesture. The situation has changed today with the introduction of Flutter 3.3. We now have a new widget called Selection Area that makes selecting elements in our Flutter Web App much easier. The descendants of this tree are now selectable. Check out the Selection Area API documentation for more information about the widget.
There are also some changes to the trackpad input in Flutter 3.3. There is now a better and faster way to control the trackpad. In addition, it also eliminates scrolling inconsistencies. Check out the document shared by the Flutter team for more information about trackpad input improvements.
How would it be if Flutter Applications could take advantage of Apple Pencil input on your iPad? It’s finally here! The credit goes to Jami Couch, a member of the Flutter Community. On Widgets like CupertinoTextField, TextField, and EditableText, the Scribble feature is enabled by default. The only thing you need to do is upgrade your Flutter version to Flutter 3.3.
Flutter’s latest version offers granular text updates through TextInputPlugin, which improves rich text editing. This allows developers to create input fields with different styled ranges that expand and contract as the user types. The demo can be viewed here.
Material Design 3:
Android theming has evolved since Android 12 introduced Material You, a dynamic theme engine. Material Design is becoming more integrated into the Android OS as it develops. As soon as those updates are released, Flutter catches up. Material Design has been modified in Flutter 3.3 for widgets like IconButton, Chip, and AppBar variants.
Material Design 3 themes are gradually being migrated to more widgets. The progress of Material 3 is available on Github.
Flutter For Desktop:
In the past, you had to change a file that was specific to Windows Applications to set the version of your Desktop Application based on Flutter. Fortunately, that has changed today with the release of an update that makes it easier to edit the pubspec.yaml file for a project.
As a result, the platform version is set in accordance with other platforms as well. Check out the Flutter Docs for more information about this feature.
Next-Generation Rendering Layer: Impeller
If you’ve been following Flutter since its beta days, you’re probably familiar with Skia Graphics Engine. All of Flutter is powered by the Graphics engine, which makes it capable of performing as well as it does.
The Flutter Team released Flutter 3.3, a new rendering layer called Impeller; A runtime capable of fully exploiting hardware-accelerated APIs like Metal for iOS and Vulkan for Android.
Flutter applications will now feature even silkier animation thanks to a new graphics engine. A cross-platform toolkit will be held to a higher standard. In addition, Impeller does not require runtime shader compilation, which is the main source of frame time janks in our apps.
As To ensure that you are running the latest version of Flutter, switch to the master channel of Flutter so you can test the latest graphics engine capabilities.
With the latest and greatest updates, Flutter continues to get stable updates on different platforms, including mobile, desktop, and the web. The more updates there are, the more complicated things become. Navigation is a big complexity. When it comes to complex navigations, we often scratch our heads, but thanks to the go router package, things just got a little easier. The Flutter Team manages the package. Packages simplify navigation and handling deep links by providing a declarative, URL-based API. Navigating and routing can be learned here.
Improvements to the VSCode extension
We can all agree that Dart: Add Dependency VS Code Extension makes adding third-party packages to our projects very easy. Adding multiple packages at the same time has just gone one step further with the ability to separate the names of the packages with a comma.
As Google’s Flutter team is extremely grateful for the tremendous work the community contributes to make Flutter what it is! As we continue to iterate on the work done so far, we look forward to focusing on what matters most – all of you!