Well of course it doesn't do that, they explicitly avoided it. And it's as you said, to make apps look and behave the same on all platforms. But that doesn't stop you from using their "Material" components on android and "Cupertino" components on iOS.
yes! And for those who have struggled with getting RecyclerView to work as expected, or with changing a text typeface in an action bar on some older android version, or felt that the Fragment plus ViewPager routine was a little more complicated than they'd hoped, in short for those who are looking for some different way to organize the UI and display logic, Flutter is an interesting alternative.
I had a "pleasure" of working with Xamarin Forms and interactions between native UI, behaviour difference between Android manufactures and versions, etc. were a constant source of pain.
With Flutter, if something works on one device it will almost certainly work on all devices. You can also customize per platform.
It is also possible to run it on desktop (although not officially supported). IMO that's a big deal and a potential Electron killer.
Dart is meh though.
Curious that you mention fast, because it is something Electron definitely fails on.
Web apps are for my already installed browser.
QML is as pretty as the design skills of the developer, just like CSS. And better because the full power of the graphics stack is available to the developer, down to pixel perfect graphics, unlike CSS where Houdini still isn't a thing.
Any native application is faster than a Electron based app. It is quite trivial to achieve.
On the desktop, most Mac apps looked like most other Mac apps. On the web, authors often created their own components, and could completely customize their look. Mobile has largely tacked towards the web, where Airbnb looks more like Airbnb than it does like any other Android or iOS app.
Spotify uses its own skin, as does Windows iTunes. NetBeans uses Swing with the Nimbus look-and-feel. Firefox and Chrome use their own toolkits (e.g. on their Settings windows). Even Microsoft Word feels like 'its own thing'. UWP applications don't tend to feel native. At least RoboMongo and the CMake GUI feel like proper Windows applications, but they both use Qt.
Flash/AIR and desktop Java are other well-known technologies that controlled how the actual pixels were drawn. If you wanted a native-looking UI, you had to mimic one in framework code.
React lead Tom Occhino pointed this out at the React Native launch. With the React Native approach, your app matches the iOS N+1 style when the user upgrades. With the Flutter/Flash approach, your app matches N+1 when you upgrade your version of Flutter and push a new release.
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Or then just use SWT.Unless Apple starts implementing its own cross-platform sdk in swift... But judging by the slow pace at which swift is moving (compared to its "worl domination" ambitions, that is), i don't think it'll happen anytime soon.
Usually either everyone gets the same kind of device, or the same UI regardless of the underlying OS.