The Future Is Now

This post is lifted from an article by Fotis Georgiadis, please do follow the link to read more and to give credit to the author. I have reproduced a large part of it here because I think it illustrates the viability of Delphi for modern cross-platform development. Lumicademy is an excellent example of what can […]

Android Hard Back Button Tip

Some Android phones have a hard back button, like the Samsung Galaxy 7 or Note 9. Others like the Pixel 4a use a short gesture from the left or right edge of the phone to trigger the effect of a hard back button press. If you don’t handle this event, your application will automatically go […]

FMX Android Deployment Tip

To deploy an FMX application you need to configure the deployment settings for your project. This can get a little tedious when working with multiple platforms. For example, if you want to deploy to an Android phone in debug and release mode for 64 bit, you have to configure settings for both debug and release. […]

FMX Mobile Update

My FMX application is coming along nicely, many of the issues have been fixed. I’ve just begun work on the Articles section so it’s rough. There’s still quite a bit to do, including work on the theme and icons. It is much more performant and responsive now. FMX Project Framework What I set out to […]

FMX Form Can’t Open Tip

If you use visual inheritance, especially with frames, for some unknown reason the IDE decides to randomly update the .fmx file. It changes inherited to object. You may get the following error: The solution is to close the project, open the affected .fmx file in a different text editor, and change object back to inherited. […]

FMX Font Size Tip

The inspiration for this tip comes from a developer on the Delphi Developer FB Group. Thank you! Please see his excellent post here for more information. By default, Delphi will set your font size to 12. When your application starts, it will read the system settings and automatically adjust all font sized 12 to the […]

Broken Word Wrap Fix

In Delphi 10.4.2 word wrap on text components is broken: The problem is due to some code being removed from FMX.TextLayout.GPU.pas: This is a noted issue, see RSP-33914 in quality control. To temporarily fix the problem, copy FMX.TextLayout.GPU.pas to your project folder and insert the removed code. I suspect this breaks the text trimming functionality, […]

Static Function Variables in Delphi

Delphi doesn’t have the concept of static function variables as you find in languages like C++. However, it is still possible to achieve the same behavior via a compiler directive. Consider this simple example: The {$J+} directive instructs the compiler to allow the constant to be written to, as described here. For more information on […]

FMX AppBar Touch Sensitivity Tip

FMX Android often misses tap events, even if a control gives a visual indication that a tap occurred. This can become frustrating for the user, requiring them to tap two, sometimes three times. I had a suspicion that FMX was receiving the touch event correctly, but had problems identifying less precise user gestures. I had […]

Speeding up FMX Tab Animations Tip

Recently I received feedback on the application I am currently developing that the tab transitions are too slow. I’m not sure of a better way, but this process worked for me: Copy FMX.TabControl.pas to your project folder Update the code to set TTabControl.DefaultSlidingDuration to 0.1 The only drawback was the Woll2Woll Image Control which was […]