I would love to see them doing it. I have to provide a method for each possible parameter combination, while Xojo team can write code in the code generator to add such an invoke method to the generated code for the delegate.
You can’t just magically invoke a method on a different thread. Under the hood, you have to do one of two things.
(1) Queue up events and execute them later.
(2) Stop one thread, start the other, execute the call, back to first thread.
There are just no shortcuts with this when your underlying frameworks aren’t thread-safe. The convenience you think you gain is quickly dwarfed by the performance hit you take.
Internally we use Grand Central Dispatch or a timer. The thing with the feature request was to have Xojo generate the required code automatically. This makes coding much easier. Similar to Cocoa’s peformOnMainThread.