GExperts: Export and Import Your Complete Configuration

GExperts stores its settings in the Windows registry, under a key that is specific to each installed Delphi version. Copying that configuration to another machine, or from one Delphi version to another, used to mean exporting registry keys by hand and editing them so they pointed at the right version and then importing them into … Continue reading GExperts: Export and Import Your Complete Configuration

build-settings-shortcut.sh: One-Tap Android Settings Shortcuts, Built From a Single Bash Script

AI;DR - This blog post and the script it describes were developed with significant help from Claude. If you don't want to read "AI slop", stop reading now. Some Android settings screens are buried several taps deep, and the one I reach for most often, the WiFi hotspot / tethering toggle, is a particularly annoying … Continue reading build-settings-shortcut.sh: One-Tap Android Settings Shortcuts, Built From a Single Bash Script

build-webview-app.sh: Turning Any URL into an Android App, No Root Required

AI;DR - This blog post and the script it describes were developed with significant help from Claude. If you don't want to read "AI slop", stop reading now. Edit: I just realized that neither was the script content part of the blog post nor did I provide a download link to it or the dummzeuch-blog.apk. … Continue reading build-webview-app.sh: Turning Any URL into an Android App, No Root Required

New in GExperts 1.3.26: Auto Switch Desktop

At the Pascal Conference 2025 in Sundern Heiko Rompel (kralle) made a presentation about a plugin (or was it a patch?) for Lazarus that automatically switched between two desktop layouts whenever you toggled between the form designer and the code editor with F12. The reasoning was simple: some windows, such as the Object Inspector, are … Continue reading New in GExperts 1.3.26: Auto Switch Desktop

Delphi VCL: Owner drawing a TStringGrid

Embarcadero has broken owner drawing of TStringGrid several times. To get the text positioned correctly you need version-specific X and Y offsets. Here is the case statement GExperts uses (from GX_StringGridDrawFix.pas): [delphi] procedure DetermineTextOffsets(_Focused: Boolean; out _XOffset, _YOffset: Integer); begin case GetBorlandIdeVersion of ideD600..ideRSXE1U1: begin // Versions before XE2 worked fine with an offset of … Continue reading Delphi VCL: Owner drawing a TStringGrid