Delphi 10 Seattle was released today with new and upgraded functionality for Windows, Android, IOS, and OSX. Obviously a big change is the new name which meshes nicely with Windows 10 and Mac OS 10. One major change for Firemonkey is the new C++11 compiler (in C++Builder) for all four supported FMX platforms). Another major upgrade is the added IOS64 Debugger support. Android Services are also now fully supported. Rounding out the release is all new support for Windows 10 APIs and functionality like notifications. Here is a full run down of the new functionality that jumps out at me:
Firemonkey officially supports the following mobile operating systems: iOS 7.x, iOS 8.x, Android Ice Cream Sandwich (4.0.3, 4.0.4), Android Jelly Bean (4.1, 4.2, 4.3), Android Kit Kat (4.4), and Android Lollipop (5.x). Android devices that are running Kit Kat and higher should also be able to automatically run on Intel CPUs through libHoudini which ships with Kit Kat (as was the case with XE8).
On the Android side some Material Design animations have been added to controls like TListBox, TButton, TCornerButton, and TSpeedButton. A new project type has been added for Android which allows you to create Android Services (apps that run in the background). Additionally, Android Intents can also be registered for any intent type. A demo is provided for sending and receiving intents. In the Android Manifest the InstallLocation parameter is now set to “auto” as well. Plus lots of bug fixes.
On the IOS side debugging in IOS64 is now supported. TPresentedScrollBox now has the option to be set as a native IOS control. TListView’s native control support has also been upgraded. Background mode on IOS is now supported through a new flag in the Info.plist file (UIBackgroundModes). There are also a lot of bug fixes for IOS support as well.
More broadly, the TTabControl has been upgraded to support scrolling when there are more tabs that will fit in the width of the TTabControl space. The TCalendar control (including on IOS) has been upgraded to have no size constraints. The TListView control has been refactored which it claims will make it easier to extend with additional functionality.
On the desktop there is added support for drag and drop operations on Mac OSX. There are new FMX styles called Win10 Modern, Win10 Modern Blue, and Win 10 Modern Dark which are obviously for Windows 10. Additionally, there have been some native controls added to the Windows side of FMX which include TEdit, TMemo, and TPresentScrollBox. There is also upgraded Z-Order support for these new native Windows controls which controls whether you can have one control overlap or cover another control. And one nice piece of polish functionality is the adding Display Hints support which gives you mouse hints when you hover your mouse cursor over a control. There is a whole host of support for Windows 10 APIs as well.
The Bitmap Style Designer has been upgraded and TStyleBook has been modified to support a collection of styles so you only need one TStyleBook on your form. Beacons, Bluetooth, and Bluetooth LE support have been enhanced. JSON support has been enhanced and BSON support has been added in addition to a new MongoDB driver for FireDAC. Be aware that App Tethering has been refactored and you will probably need to upgrade your current App Tethering code for it to connect and work correctly in Delphi 10. In past versions App Tethering was also not compatible between versions (TAppTethering XE7 couldn’t talk to TAppTethering XE8) so that may be the case here as well.
Finally, the IDE itself has received some much needed love and includes support for larger projects that require more memory. The object inspector has been enhanced to support filtering of properties and hiding of non-visual components at design time. A whole host of productivity features were also integrated and you will find CodeSite Express in the GetIt Package Manager.
Head over to Embarcadero’s website to get the full run down of all of the new features and functionality available in Delphi 10 Seattle Firemonkey on Android, IOS, Windows, and OSX. You can also check out the release notes for Delphi 10 Seattle which contains some workarounds and additional explanations for some functionality.