
RAD Studio 13 Florence brings significant updates to FireMonkey, especially for mobile platforms and AI integration. A major highlight is the improved rendering performance through a new Display Link Service, enabling smoother and more consistent animations. Bitmap copying is now GPU-accelerated for faster image processing, and a new MaskEdit control improves input handling. Enhancements to TPresentedScrollBox
and TAlignLayout
provide developers with finer control over layout and scrolling behaviors, while iOS and Android development benefit from expanded platform API headers and a more robust Java2OP importer, streamlining access to native APIs. These updates make creating modern, responsive UIs for iOS and Android apps easier and more efficient. Numerous bug fixes address long-standing mobile issues, such as password field behaviors, WebBrowser JavaScript evaluation, and popup rendering problems.
On the AI side, RAD Studio 13 introduces the SmartCore AI Component Pack, available via GetIt (soon it sounds like), which lets developers integrate AI capabilities directly into their FireMonkey apps. This includes a flexible AI connection component supporting multiple backends like OpenAI, Claude, Gemini, and Ollama, plus specialized request components for tasks involving text, images, or structured data. These components seamlessly bind to FireMonkey controls, making it straightforward to embed features like chatbots, image generation, or smart data processing into cross-platform mobile apps. Together, these enhancements position RAD Studio 13 as a powerful tool for building next-generation AI-enabled applications on both iOS and Android.
Sources:
Here is the list of FireMonkey related bug fixes.
Publish the property of TouchTargetExpansion for TShape and other visual controls | FireMonkey | RSS-1217 |
C++ Builder FMX TOpenDialog some events not firing | FireMonkey | RSS-1220 |
add an event onCheckedChange on FMX TListBoxItem | FireMonkey | RSS-1338 |
having a “reverse” property on a TTrackbar to change the direction of min to max | FireMonkey | RSS-1353 |
Add TextPrompt property for TMemo in FireMonkey | FireMonkey | RSS-1460 |
Allow TTexture to Define a GL_TEXTURE_EXTERNAL_OES Target | FireMonkey | RSS-1550 |
Property of TextSettings.Trimming cannot be saved | FireMonkey | RSS-1853 |
Missing Declaration of CTFontManagerRegisterGraphicsFont in Macapi.CoreText.pas | FireMonkey | RSS-1929 |
Popups sometimes appear behind other windows. | FireMonkey | RSS-2005 |
2 TWebBrowser components with WindowsEngine=EdgeOnly on different tabs will not be initialized correctly | FireMonkey | RSS-2061 |
Update TAlignLayout to Include New Alignment Options for Centering Controls | FireMonkey | RSS-2342 |
Enhance TCustomForm.DoAddObject and TCustomForm.DoRemoveObject to Properly Handle FUpdating State for Controls | FireMonkey | RSS-2388 |
Add the CAFrameRateRange record and preferredFramesPerSecond/preferredFrameRateRange to CADisplayLink interfaces in iOSapi.QuartzCore | FireMonkey | RSS-2424 |
TPointF.reflect is incorrect | FireMonkey | RSS-2429 |
Incorrect type declaration for Radius in TEllipse.PointInObjectLocal method | FireMonkey | RSS-2659 |
FSkew: TPosition; is declared in Tcontrol but is never used | FireMonkey | RSS-2690 |
iOS voice input deletes text before the cursor when used. | FireMonkey | RSS-2715 |
Bad behavior after unselect text in TEdit and TComboEdit on Android | FireMonkey | RSS-2781 |
Incorrect indentation of end; in TScreen.IndexFormOfObject | FireMonkey | RSS-2902 |
Missing class destructor in TWow64Redirection | FireMonkey | RSS-2933 |
Using mic input on iOS into a TMemo, deletes existing text | FireMonkey | RSS-2936 |
TTabChangeAction not working correctly on IOS 18.0 and High | FireMonkey | RSS-2944 |
Firemonkey TEdit with Password property set to True problem | FireMonkey | RSS-2962 |
Opening maps with TNSURL.Wrap doesn’t work with iOS SDK 18.2 | FireMonkey | RSS-2971 |
PhoneDialerService.Call doesn’t work with iOS SDK 18.2 | FireMonkey | RSS-2972 |
Add getEventTimeNanos and getHistoricalEventTimeNanos to JMotionEvent in Androidapi.JNI.GraphicsContentViewText.pas | FireMonkey | RSS-2992 |
Add function coalescedTouchesForTouch(touch: UITouch): NSArray; cdecl; to UIEvent interface in iOSapi.UIKit | FireMonkey | RSS-2993 |
Android – Full screen with Custom DropDownKind on TComboBox | FireMonkey | RSS-3078 |
Unused local variable ‘Handle’ in procedure viewWillTransitionToSize | FireMonkey | RSS-3161 |
Unable to run a created 64bit 3D component | FireMonkey | RSS-3165 |
Application crashes if the focus is on an edit field and made invisible (out of screen) | FireMonkey | RSS-3198 |
access violation when using TStyleStreaming.SaveToIndexedStream with a nil style | FireMonkey | RSS-3259 |
TControl.SetBounds: Missing ParentContentChanged Call on Size-Only Updates | FireMonkey | RSS-3264 |
Enhance TControl.FillTextFlags to fallback on Application.MainForm when Root = nil | FireMonkey | RSS-3377 |
Destroying a TWebBrowser does not destroy the underlying WKWebView on macOS and iOS | FireMonkey | RSS-3486 |
SaveDialog.Execute failing to run on MacOS | FireMonkey | RSS-3508 |
Move Caret crashes app when using Skia/Vulkan and shadow effect (Android) | FireMonkey | RSS-3637 |
When a long font name is set in Font.Family of Label, etc., an AccessViolation occurs. | FireMonkey | RSS-3795 |
minimize app (click by app icon in taskbar) bug | FireMonkey | RSS-3863 |
Missing kSecValueData constant in iOSapi.Security | FireMonkey | RSS-3922 |
PMAncesstorVisibleChanged must be written PMAncestorVisibleChanged in FMX.Presentation.Win.pas | FireMonkey | RSS-507 |
Missing crNone in FMX property editor for TCursor fields | FireMonkey | RSS-723 |
Add property AllowSingleSignOnUsingOSPrimaryAccount to TWebBrowser in FMX | FireMonkey | RSS-825 |
Modify Visibility and Virtual Status of MarginsChanged in TControl | FireMonkey | RSS-891 |
THeader.TextSettings.HorzAlign is not stored “Center” value | FireMonkey | RSS-951 |
TMenuBar, add a ItemMenu Height | FireMonkey | RSP-43736 |
IOS jerky / lagging with scroll (Video included) | FireMonkey | RSP-43528 |
Need methods to be virtual for FMX.Text.TextEditor and FMX.Text.SpellingManager | FireMonkey | RSP-43207 |
FMX.Consts: Unnecessary dependencies | FireMonkey | RSP-42473 |
CGEventTapCallBack is declared incorrectly | FireMonkey | RSP-42470 |
expose FContentHeight of the TExpander | FireMonkey | RSP-42096 |
[FMX] Using processor to copy images is a very dumb way of doing things | FireMonkey | RSP-41451 |
FMX TCommonCustomForm misses DoCreate and DoDestroy like VCL forms have | FireMonkey | RSP-41363 |
TImageObjectAppearance ScalingMode ‘Stretch’ and ‘StretchWithAspect’ equal | FireMonkey | RSP-41288 |
Hangul (backspace) error on iOS 16 | FireMonkey | RSP-39722 |
Wrong defination for Wow64RevertWow64FsRedirection | FireMonkey | RSP-37948 |
FMX TStringGrid TPopupColumn inconvenient input | FireMonkey | RSP-36841 |
FMX TComboEdit auto completion | FireMonkey | RSP-36780 |
TCustomForm and TScreen bounds precision | FireMonkey | RSP-34435 |
add NSWindow missing functions | FireMonkey | RSP-33791 |
[iOS] TWebBrowser displays nothing when navigating to a https address where there is no certificate | FireMonkey | RSP-33646 |
iOS binding should be updated | FireMonkey | RSP-32736 |
AutoTranslate missing in TMainMenu and TPopupMenu | FireMonkey | RSP-32014 |
add NSPersonNameComponents in iOSapi.Foundation.pas | FireMonkey | RSP-28096 |
Add protected virtual “DoChange” method to TRadioButton & TCheckBox to hook into state changing | FireMonkey | RSP-27585 |
FMX.TListBoxGroupHeader – add TextSetting.Trimming | FireMonkey | RSP-27469 |
publish hitTest for TGlyph component | FireMonkey | RSP-21927 |
Maskedit | FireMonkey | RSP-22395 |
miss some definition in IOSapi.Security | FireMonkey | RSP-20279 |
Return value of TWebBrowser.EvaluateJavaScript | FireMonkey | RSP-18928 |
make CanvasHelper of TCanvasGpu public | FireMonkey | RSP-18797 |
Add multi Hints to TBindNavigator | FireMonkey | RSP-18229 |
Implement a right to left mode for TTrackbar | FireMonkey | RSP-13644 |
By selecting the component in the form, it is not selected in the structure. | FireMonkey, IDE | RSP-36843 |
FMX Add Form without the dialog | FireMonkey, IDE | RSP-33853 |
Add support for Apple DeviceCheck API (new at iOS 11) | FireMonkey, RTL | RSP-20604 |
miss kCIFormatRGBA8 and kCIFormatBGRA8 in iOSapi.CoreImage.pas | FireMonkey, RTL, RTL\Delphi | RSP-44130 |
We miss the declaration of CGColorSpaceCopyICCData in iOSapi.CoreGraphics.pas | FireMonkey, RTL, RTL\Delphi | RSP-44206 |
Miss UITraitCollection.displayGamut in iOSapi.UIKit.pas | FireMonkey, RTL, RTL\Delphi | RSP-44208 |
Missing Declaration of maximumFramesPerSecond Function in UIScreen Interface | FireMonkey, RTL, RTL\Delphi | RSP-43458 |
Java2Op emits erroneous code | FireMonkey, RTL, RTL\Delphi, RTL\Delphi\Header Translations | RSP-15473 |
Request to Add Interfaces and Methods in Macapi.AppKit.pas | FireMonkey, RTL\Delphi | RSS-1933 |
Missing Functions in Macapi.CoreText.pas | FireMonkey, RTL\Delphi | RSS-1934 |
Missing &string Method in NSAttributedString Interface in Macapi.Foundation.pas | FireMonkey, RTL\Delphi | RSS-1935 |
Modify libImageIO Constant in Macapi.ImageIO.pas to Include iOS Support | FireMonkey, RTL\Delphi | RSS-1936 |
Missing Functions in Macapi.QuartzCore.pas | FireMonkey, RTL\Delphi | RSS-1937 |
Missing CVMetalTexture and CVMetalTextureCache Declarations in iOSapi.CoreVideo.pas | FireMonkey, RTL\Delphi | RSS-1939 |
Missing &string Method in NSAttributedString Interface in iOSapi.Foundation.pas | FireMonkey, RTL\Delphi | RSS-1940 |
Missing Method Declarations in UITextView and UITextField Interfaces in iOSapi.UIKit.pas | FireMonkey, RTL\Delphi | RSS-1941 |
Replace deprecated UIApplication.openURL: with openURL:options:completionHandler: in iOS Delphi headers | FireMonkey, RTL\Delphi | RSS-3535 |
When Skia is enabled, the fonts do not display correctly. | FireMonkey, RTL\Delphi | RSS-614 |
Missing Declaration for textContainer Property in UITextView Interface | FireMonkey, RTL\Delphi | RSS-860 |
Memory leak with TiOSOpenApplicationContext | FireMonkey\Runtime | RSP-40349 |
Exception ESkBitmapHelper with “Invalid bitmap” in Delphi 12.3 – SkLabel involvement suspected | 3rd Party, FireMonkey | RSS-3423 |
Structure view is not autoscrolling to view selected component | IDE, IDE\FireMonkey Designer | RSP-11282 |