How to handle sequential key events with hotkey computation in UITextField (UIKit)

Hello,

I am building a UIKit application where I need to handle key events in a UITextField with the following requirements:

Normal key presses (e.g. A, B, etc.) should insert characters into the text field.

A hotkey combination (Ctrl+K) should trigger a custom computation that runs on a background thread, and once completed, its result (e.g. $) should be inserted into the text field.

All events (normal keys and hotkeys) must appear in the exact order they were pressed by the user. For example:

If the user types A, B, then Ctrl+K, the field should show AB$.

If the user types A, Ctrl+K, C, the field should show A$C, even if the computation for $ takes longer.

I want strict sequential processing: no later keystroke should be inserted until an earlier hotkey computation finishes.

I have tried overriding pressesBegan(_:with:) in a custom UITextField subclass, and I can detect both normal keys and Ctrl+K.

Questions:

  1. Is there a recommended UIKit API or pattern for handling this kind of ordered key event processing with hotkeys?
  2. Are there best practices for mixing UI updates with background computations in this context, while preserving event order?

Thanks!

How to handle sequential key events with hotkey computation in UITextField (UIKit)
 
 
Q