KeyboardKit 10.5 is out
KeyboardKit 10.5 is out! This release adds support for Arabic (PC) π¦πͺ and accessibility settings to increase the font weight and key height. It also improves autocomplete, tweaks the layout and design, and fixes some bugs.

New Locale
KeyboardKit 10.5 adds support for π¦πͺ Arabic (PC), which is a variant of the classic Arabic layout, with different keys and callout actions.
π± Essentials
The KeyboardController protocol has a new resetKeyboardInputType function which is used by the system to disable emoji search when the text input moves.
βΏοΈ Accessibility
This version adds a new KeyboardAccessibility namespace, with new accessibility settings that let you adjust the font weight and button height.
π‘ Autocomplete
This version adds a new additionalAutocompletions dictionary, and adds more standard suggestions to additionalAutocorrections. This makes suggestions more accurate, and lets you register custom values.
For instance, the default autocompletions dictionary now contains the suggestion βheβllβ for βhellβ. Unlike before, this manual addition will be a regular suggestion, and not an autocorrecting one.
The Autocomplete.SettingsScreen has a new toggle that can be used to hide the autocomplete toolbar. You can also toggle the AutocompleteSettings.isToolbarEnabled property with code.
Besides all this, the Autocomplete.StandardAutocompleteService has been improved to filter out any duplicate suggestions.
π£ Layout
The KeyboardLayout.DeviceConfiguration type now supports defining custom edgeInsets, which is applied to the edge of the keyboard. The standard layouts are adjusted to use it on Liquid Glass iPad devices.
The standard keyboard layouts now place the keyboard switcher first on Liquid Glass iPad devices, which aligns better with the native Liquid Glass layouts.
π Localization
The new KeyboardLocale namespace is used to contain all locale-specific types. This lets us use Locale for Foundation-specific extensions.
The native Locale has a new .arabic_pc locale, which adds Arabic (PC)-specific layouts and callouts to KeyboardKit.
π Emojis
The EmojiKeyboard now supports skin tones in emoji search. The KeyboardInputViewController will now also cancels emoji search when the cursor moves.
π Proxy
The UITextDocumentProxy has a new moveTextInputCursorToRefreshContext(sleepInterval:) extension, which can be used to move the cursor in a controlled way, to refresh the document context.
ποΈ Settings
The Keyboard.SettingsScreen is moved to KeyboardSettings and LocaleSettingsScreen has been moved to KeyboardLocale.
π¨ Styling
The new version slightly increases the font weight for image and lowercase keys, and redesigns the content view of all swipe down-enabled keys to look a bit more like native.
Conclusion
KeyboardKit 10.5 adds support for a new locale, and adds new accessibility features. It also adds several small capabilities to the various types, polishes the design, and fixes some bugs.
For more details, see the KeyboardKit 10.5 release notes. Upgrade now to take advantage of all improvements.
Discussions & More
If you found this interesting, please share your thoughts on Bluesky and Mastodon. Make sure to follow to be notified when new content is published.