Releases: KeyboardKit/KeyboardKitPro
9.7.2
9.7.1
💡 Adjustments
KeyboardAppView
now injects anEmojiContext
into the environment.
9.7.0
After developer feedback, this version reverts some previos deprecations and moves standard values back to the KeyboardAction
type.
The idea with the initial refactoring was to attach the standard value builders to each value type, to make them easier to find. But since each builder is related to a KeyboardAction
, it makes more sense to convert them back to action extensions, since this groups them all together.
✨ Features
EmojiContext
andEmojiSettings
are two new state types.EmojiKeyboard
will now show the last selected emoji skin tone.KeyboardAction.StandardActionHandler
registers the skin tone for selected emojis.
💡 Adjustments
Autocomplete.ToolbarItem
will automatically wrap itself in a scroll view if needed.
🐛 Bug Fixes
- KeyboardKit Pro adds missing localizations for Bengali.
KeyboardAction.shift
now renders correctly for caps lock.
🗑️ Deprecations
Color+Standard
has been deprecated and now useKeyboardAction
extensions.Font+Standard
has been deprecated and now useKeyboardAction
extensions.Keyboard.ButtonStyle+Standard
has been deprecated and now useKeyboardAction
extensions.KeyboardAction
has reverted itsstandard
button color deprecations.
9.6.0
This version adds new ways to get standard button styles directly from the style type.
The reason for this change is that it's easier to find, than to have standard style functions on other types.
✨ Features
Color
has newstandard
background and foreground button builders.Keyboard.ButtonStyle
has astandard(for:action:isPressed:)
builder.Keyboard.ButtonBorderStyle
has a newstandard(for:action:)
builder.Keyboard.ButtonShadowStyle
has a newstandard(for:action:)
builder.KeyboardFont
has newstandard
font, font size, and weight builders.
🇹🇯 Localization
- This version adds support for 🇦🇿 Azerbaijani.
- This version adds support for 🇧🇩 Bengali.
🐛 Bug Fixes
KeyboardFont+Standard
now returns a correct font size for.continue
.
🗑️ Deprecations
KeyboardAction
'sstandardButtonStyle(for:isPressed:)
has been deprecated.
9.5.3
This version adjusts some licenses.
9.5.2
This version updates some Pro licenses.
9.5.1
This version fixes a few bugs and adds some new style and theme features.
✨ Features
Keyboard.ButtonStyle
has a new font-agnosticfontWeight
property.
💡 Adjustments
Keyboard.ButtonStyle
now extends more properties withextended(with:)
.
👑 Pro
KeyboardTheme
has a newbuttonPressedOverlayColor
.KeyboardTheme.ButtonType
now implementsCaseIterable
.
🐛 Bug Fixes
KeyboardStyle.StandardStyleService
now applies the font weight, if defined.
9.5.0
This version adds ways to customize callout actions and keyboard styles with view modifiers instead of services.
The old callout and style services are used by default, but will be ignored if you apply the new view modifiers.
If these view modifiers prove successful, the services will be deprecated and removed in the next major version.
You still need a style service to customize a button's image and text, or use the KeyboardView's content builder.
✨ Features
Keyboard.ButtonStyle
has new standard style builders.Keyboard.ButtonStyle
has a newforegroundSecondaryOpacity
property.KeyboardAction
has many new value extensions with standard button values.KeyboardCallout.Actions
is a new type used to replace services with values.KeyboardContext
has a new, temporarydeviceTypeForKeyboardIsIpadPro
value.KeyboardViewStyle
is a new style type for theKeyboardView
view component.View.keyboardButtonStyle(builder:)
can be used to style any keyboard button.View.keyboardCalloutActions(_:)
can be used to customize the callout actions.View.keyboardViewStyle(_:)
can be used to style the main keyboard view component.
💡 Adjustments
KeyboardAction
adds more context checks to its standard text and image logic.KeyboardAction
improves iPad Pro button styles for more action & context states.KeyboardStyle.StandardStyleService
uses the new, extended keyboard action logic.
👑 Pro
KeyboardAction
has a newkeyboardThemeButtonType
property.KeyboardCallout.Actions
has localized value builders for all supported locales.KeyboardTheme
has newkeyboardButtonStyle(for:context:isPressed:)
andkeyboardViewStyle
values.View.keyboardTheme(_:context:)
can be used to apply themes without using a theme-based style service.
📦 Packages
- KeyboardKitTests has copied the MockingKit code base to avoid external dependencies.
9.4.1
💡 Adjustments
InputSet.shughni_tajik
replaces "j" with "ǰ".
9.4-b.1
This version adds new Emojis 16 emojis and localizes emojis in more languages.
This version also improves local autocomplete by extending the additional autocorrect replacement dictionary. This should lead to fewer typing errors when typing in English, since more combines words will now be autocorrected.
This version also aims to improve performance by reducing the number of redraws per keypress, which in turn leads to fewer layout calculations. Initial tests show that this improves the typing experience, since fewer redraws lead to a smoother experience.
✨ Features
- The
KeyboardContext
colorScheme
property is now mutable and available to all platforms. - The new
.keyboardButtonGestureConfiguration
view modifier can be used to configure the keyboard button gestures.
😀 Emojis
- This version adds Emojis 16 emojis to iOS 18.4 and aligned versions: 🇨🇶.
- Emojis are now localized in 🇫🇷 French, 🇮🇹 Italian, 🇧🇷 Portuguese (Brazil) & 🇷🇺 Russian.
🇹🇯 Localization
- This version adds support for 🇹🇯 Pamiri Shughni (Shughni Tajik)
👑 Pro
Autocomplete.TextReplacementDictionary.additionalAutocorrections
has more replacements.
💡 Adjustment
Autocomplete.TextReplacementDictionary
has been moved to KeyboardKit Pro.Dictation.DisabledDictationService
no longer needs a context to be initialized.Keyboard.RootView
no longer observes any contexts that it doesn't need to observe.
🐛 Bug Fixes
KeyboardInputViewController
now only shows license warning for license errors.
🗑️ Deprecations
Color
extensions that took aKeyboardContext
now takes aColorScheme
instead.KeybpardInput
has deprecated Vietnamese input types, which are now moved to the root.KeyboardLayout.Configuration
has been renamed toKeyboardLayout.DeviceConfiguration
.KKL10n
functions that take aKeyboardContext
have been deprecated in favor ofLocale
.