‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ 

Issue 15 (12/06/2021)

Open the newsletter in your browser


💙️ Support the newsletter 💙️


Latest news

Image The cursor controversy

While searching for content for this newsletter, I came across this article from the Register flag_lng. Its author makes the headlines by saying: "in Flutter, 6 to 10% of the CPU can be used to make a cursor blink".

What is he talking about?
There is indeed a bug flag_lng in the implementation of Flutter on macOS (as well as on iOS). When you have a TextField flag_lng displayed on the screen, the system monitor shows a CPU usage that oscillates between 6% and 10%. This comes from the blinking cursor that forces the drawing on the screen on a regular basis. From time to time, the activity falls back to 0% before returning to this 6-10% threshold depending on the configuration.

When the application is in the background
While this can be considered as "acceptable", this consumption persists when the application is no longer in the foreground. Indeed, whether the application has the focus or not, it will continue to animate this cursor. This bug, more than a year old, irritated the journalist who immediately made an article about it because, at the time, a Googler had more or less indicated that this behavior was "normal" flag_lng.

Where do we stand?
Faced with this controversy, the bug has come back to the forefront and both Tim Sneath and Eric Seidel have taken the lead on the subject. A short-term solution will consist in deactivating this animation if the application is no longer in the foreground. The idea is to eventually redraw only the bare minimum, rather than the entire screen – the real problem raised here.

Bad publicity
Although a solution flag_lng is still in progress, it shows that Flutter has become a major project and that this bug was perhaps not given the priority it deserved. Polemicists' power remains strong, even though the desktop is still a beta, as anyone can see the negative impact that such an article can have by looking at the comments on the article.

Image JetBrains pulls out the heavy artillery

Early last week, JetBrains announced several new products, some of which may seem very similar to existing features.

JetBrains designs some very nice products, but you have to admit that they have a lot of different IDEs and a lot of features that are not always useful or even known.

Fleet flag_lng's idea is to have one more IDE! But, rest assured, it will be for our own good!

This new IDE wants to correct both previously mentioned problems thanks to: multilanguage support; rewriting from scratch (= lighter), multi-user management (~ Code with Me) and the possibility to be run either locally or virtualized.

For the moment, access is limited by submitting a form flag_lng.

Developing remotely
In addition to this new IDE, you will also have to rely on JetBrains Gateway flag_lng. This completely free tool enables you to access an instance of IntelliJ IDEA remotely (or other IDEs of the Czech company). The connection can be made either via SSH or Spaces. The idea is to be able to access an IDE, no matter where you are, but especially to run it on a machine potentially more powerful than the one you own (for the moment, only Linux is supported).

Miscellaneous news in brief

⏫ A new beta version of Flutter is available: 2.8.0-3.3-pre. The stable version is getting closer and closer! Flutter 2.5 being released on September 8 and with a quarterly cycle, we might be in for some surprises in the next few days.

The creation of this newsletter takes me several hours each week.

You want to support the project and allow it to last in time? For that, you can donate from 1 euro on Patreon!

Support-me on Patreon

⏫ As every beginning of the month, the plugins for the IDEs have been updated:

  • For Visual Studio Code, version 3.29.0 flag_lng has a rather large changelog, but mainly brings bug fixes
  • For IntelliJ IDEA, months go by and we feel a definite slowdown. The 63.0 version focuses mainly on the support of the latest IDE versions…

✨ On the plugin/community side, what's new?

  • The plugin to have the "Sign in with Apple" button is now compatible with Flutter Web! (PR #263 flag_lng).
  • You can now manage the amount of logs generated by the CachedNetworkImage flag_lng plugin [PUB] (PR #351 flag_lng).
  • In version 2.4.0, it will be possible to load a file or give HTML in String format on the official WebView flag_lng (PR #4544 flag_lng)
  • Also in version 2.4.0 of webview_flutter, you will be able to manage cookies sent to the WebView (PR #4561 flag_lng)
  • The path_provider flag_lng plugin in its future 2.1.0 version will have an implementation for the getDownloadsDirectory method on Android (PR #4559 flag_lng))

📺 Android 12 is now available on TVs via the Android TV and Google TV platforms… On the agenda flag_lng: 4K interface, HDMI CEC 2.0… One hitch, however: only the ADT-3 (the box dedicated to developers) can benefit from it today. Chromecasts and other televisions should only get it in 2022.

👾 Swift Playgrounds flag_lng lets you develop iOS apps in no-code mode from an iPad. At WWDC last June, Apple had announced it would be possible to publish to the AppStore without going through the Mac / Xcode pair thanks to this tool. After months without news, some developers are currently testing this feature via Testflight, proof that it should not be long before it is deployed.

🐛 On a simulator on iOS 15, 100% of your processor is used by Spotlight? Here's how to fix the problem flag_lng.

💸 Want an .io domain name? Hurry up since, as of January 1, prices will go up! flag_lng

🤖 GitHub Copilot opens up to "Labs" and the first experiment allows you to explain jn text flag_lng what the code snippet does.

📸 Qualcomm, the famous smartphone chip maker has announced the Snapdragon 8 Gen 1. It will be the new industry spearhead in 2022. Apart from its ever-improving** performance**, it's the Always-on camera feature that is that is a matter of debate and concern flag_lng

🍏 Amazon is going to offer EC2 instances flag_lng with Mac Mini M1s (16GB variation). Perfect for running your tests for iPhone, iPad…

😢 The Flutter community must unfortunately bid farewell to Kevin Gray flag_lng, who had notably worked on the Hamilton application. Our thoughts are with his family!

Dart/Flutter articles and tutorials

The tweet

Twitter logo
So I built a game engine which works with widgets instead of sprites because I have zero experience with graphic design and no intention to learn it. Also I have a few cool ideas of what to do with something like this. In the mean time, here's a basic widget flappy bird I guess:
Image tweet

Deven Joshi, Google Developer Dart/Flutter had fun creating a little engine that lets you to make a Flappy Bird with Flutter Widgets! He also designed a brick-breaker with the conversation of a cat flag_lng. A great idea for an easter egg!

Dart/Flutter libraries

Lib ota_generator / ota_string

ota_generator / ota_string : Manage your translations remotely

Android iOS Web Linux Mac Windows

OtaString is a tool that has two objectives: to provide the translation of an application and to allow remote updating. Its particularity is that it can be hosted anywhere (a public GitHub is enough), which eliminates the sometimes staggering costs incurred by specialized services. To know how to use these two libraries, the easiest way is to follow this guide flag_lng.

Lib fire

fire : Hot Reload for pure Dart

Android iOS Web Linux Mac Windows

One of the big advantages of Flutter is its famous Hot Reload feature, which saves a lot of time during development. But Flutter is not Dart. If you want to design a command line application, then you have to go through a dependency like this one to benefit from it.

Lib Storybook

Storybook : Testing the UI

Android iOS Web Linux Mac Windows

Storybook is initially a Javascript tool to test its components independently. In its Flutter version, it allows you to test your Widgets. The practical aspect is that the result can be exported as an image and then be tested for "visual" non-regression via platforms like Percy or reg-suit.


Image Clean Architecture in Flutter

Clean Architecture in Flutter

Here is the replay of the Flutter France session organized by Elaine Dias Batista. Leticia Baleiro explains how to use the notion of Clean Architecture in Flutter. The presentation is in English, but it is very well documented.

Image 100 seconds to...

100 seconds to...

The YouTuber Fireship has launched more than 90 videos where he explains languages, frameworks, tools… in 100 seconds. You will find Dart, Kotlin, Swift, VS Codeand many others!

The tools

Image Outil Responsively

Responsively : Testing Web Flutter on multiple sizes

Responsively is more a tool for web developers… but let's not forget about Flutter Web. It allows you to display a site in parallel on several screen sizes and perform actions in a synchronized way on all of them, at the same time. And the good news is this tool is both opensource and free!

Image Outil Refurb Tracker

Refurb Tracker : Up to 40% off on Apple products

Nope, no this is not a sponsored link, but a tool that uses the official Apple "Refurb". As a reminder, this service allows you to get refurbished products of the brand with a big discount. The Refurb Tracker tool flag_lng enables you to activate alerts by product and by price range.

Upcoming events


Online & Oslo

Flutter Vikings


Montrouge, France

Android Makers
Your opinion on this issue