Keyboard extensions and reserved regions

I have a keyboard extension in my app and I'm seeing some inconsistent behavior with the system-provided Globe and Dictation buttons. For the system keyboards, these buttons are displayed to the side of the keyboard, insetting the bottom row of keys on the folded screen and insetting the entire keyboard on the unfolded screen. What is the expected behavior for custom keyboards on the folded screen?

My test results: When the Duo simulator is folded, sometimes the Globe and Dictation buttons appear next to my keyboard and the entire custom keyboard is squeezed to be really narrow. Other times my UI gets the full width and the Globe and Dictate keys are on TOP of my UI. The latter seems preferable, assuming I can then use the reserved regions API to avoid the overlap. Is that the intent?

PS: The reserved regions API doesn't seem to work in keyboard extensions in this beta, neither in SwiftUI or UIKit. Hopefully that's fixed in the next beta.

I have submitted FB24979539 about the reserved region API not working in keyboard extensions.

I experienced the same issue with safe areas and reported it here: FB24979367

But now in Xcode 27.1 RC the layout of the native keyboard has changed (not sure if it's intentional change) and globe and dictate buttons are gone, they appear as normal keys instead.

However, the SDK always return "needsInputModeSwitchKey = false" for custom keyboards... so I reported it as another bug: FB25073949

On top of that, hinge detection and reserved regions don't work either... Reported as: FB24883137

27.1 release is an insane mess. iPhone Duo release experience will be a spectacular failure for the users.

Keyboard extensions and reserved regions
 
 
Q