Swiftpack.co - Swift Packages by KeyboardKit

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.

Packages published by KeyboardKit

KeyboardKit/KeyboardKit 7.9.5
KeyboardKit helps you create custom keyboards for iOS and iPadOS.
⭐️ 1,225
🕓 2 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2 days ago
This version adjusts things in KeyboardKit Pro.
3 days ago
This version adjusts things in KeyboardKit Pro.
6 days ago
* `EmojiVersion` adjusts iOS and tvOS versions for emoji v15. * `SystemKeyboardPreview.Configuration` no longer applies a color scheme by default. ### 🗑️ Deprecations * `EmojiKeyboardButton` has been deprecated. * `EnglishCalloutActionProvider` has been soft deprecated.
1 week ago
This version adjusts things in KeyboardKit Pro.
3 weeks ago
This version adjusts things in KeyboardKit Pro.
6 weeks ago
This release prepares the library for the upcoming major version bump, which will clean up the library and make it easier to use. Many types have been deprecated with proper `@available` annotations, but those that can't be deprecated yet are soft deprecated with a `[DEPRECATED]` comment. `> v8.0: ` comments are added where structural or architectural changes will, but currently can't be made. Many keyboard types are moved into a new `Keyboard` namespace, and that many styles are moved into a new `KeyboardStyle` namespace. This introduction of namespace types will make it easier to overview the library and find types within it. Another big change is that the `InputSetProvider` concept is replaced by just using `InputSet`s. This removes a lot of complexity and makes it easier to create custom layouts and use various input sets together. Other big changes are that the `KeyboardAppearance` is renamed to `KeyboardStyleProvider`, the `Appearance` namespace to `Styling` and that the `KeyboardFeedbackHandler` is merged into the `KeyboardActionHandler` to just have a single type. ### ✨ New Features * `AutocompleteActionProvider.disabled` is a new alias for `DisabledAutocompleteProvider`. * `CalloutActionProvider.disabled` is a new alias for `DisabledCalloutActionProvider`. * `DictationService.disabled` is a new alias for `DisabledDictationService`. * `HapticFeedbackConfiguration` has new `press` and `release` configurations. * `Image.keyboardShift` is a new image. * `InputSet` has new `English` builders. * `Keyboard` is a new namespace type for some keyboard-specific types. * `Keyboard.ReturnKeyType` has new `continue`, `emergencyCall` and `route` types. * `Keyboard.ReturnKeyType` has a new `prefersAutocomplete` property. * `KeyboardActionHandler` has new feedback functions. * `KeyboardDictationService.disabled` is a new alias for `DisabledKeyboardDictationService`. * `KeyboardFeedbackSettings` has new enabled and disabled configurations. * `KeyboardInputViewController` has new view lifecycle functions for registering and unregistering as the shared controller. * `KeyboardLayoutProviderProxy` has new standard functionality. * `KeyboardStyle` is a new style namespace that contains most style types. * `KeyboardStyleProvider` has a new function for the button content bottom margin. * `PreviewKeyboardInputViewController` is a new preview type. * `StandardKeyboardActionHandler` has new feedback functions. * `StandardKeyboardFeedbackHandler` has new feedback functions. * `StandardKeyboardLayoutProvider` has a new default initializer. * `SystemKeyboard` is now available on all platforms. * `View` has a new `withEnvironment(from:)` extension. ### 💡 Adjustments * `AudioFeedbackEngine` has been converted from a protocol to an open class. * `AutocompleteToolbar` items now use `.current` as default locale. * `KeyboardActionHandler` has a new `triggerFeedback(for:on:)` function. * `SpaceCursorDragGestureHandler` no longer needs a feedback handler. * `StandardKeyboardLayoutProvider` no longer requires an input set provider. * `StandardKeyboardStyleProvider` adjusts the bottom padding for some keys. * `SystemKeyboardLayoutProvider` now returns switcher actions for all keyboard types. ### 👑 Pro Adjustments * `AutocompleteToolbarPreview` is a new preview component. * `InputSet` has new input sets for some locales. * `InputSet` has new throwing properties for the localized input sets. * `KeyboardThemeAppearance` has a been renamed to `ThemeBasedKeyboardStyleProvider`. * `ProInputSetProvider` and all its locale-specific types have been deprecated. * `ProKeyboardLayoutProvider` and all localized subclasses use input sets instead of providers. * `ProKeyboardLayoutProvider` and all localized subclasses can now be provided with custom input sets. * `SystemKeyboardPreview` is a new preview component. * `KeyboardThemeLivePreview` has been renamed to `SystemKeyboardThemePreview`. * `KeyboardThemeLivePreviewHeader` has been renamed to `SystemKeyboardThemePreviewHeader`. * `SystemKeyboardThemePreview` now works on all platforms. ### 🐛 Bug fixes * `EmojiCategoryKeyboard` no longer requires two gestures when it's presented by the `SystemKeyboard`. This was strangely enough fixed by the `SystemKeyboardLayoutProvider` adjustment. * `EmojiCategoryKeyboard` now applies an interactable background to the grid, to make scrolling work even where there are no emojis. * `KeyboardContext` now switching to alphabetic when inserting a new line after a sentence delimiter in numeric and symbolic keyboards. ### 🗑️ Deprecations * `AudioFeedbackConfiguration.noFeedback` has a been renamed to `.disabled`. * `AudioFeedbackConfiguration.standard` is replaced by `.enabled`. * `ActionCalloutContext` has been renamed to `KeyboardCalloutContext.ActionContext`. * `AutocompleteSpaceState` has been deprecated. * `AutocompleteSuggestion.isAutocomplete` has been renamed to `isAutocorrect`. * `AutocompleteToolbarStyle` has been renamed to `KeyboardStyle.AutocompleteToolbarItem`. * `AutocompleteToolbarItemBackgroundStyle` has been renamed to `KeyboardStyle.AutocompleteToolbarItemBackground`. * `AutocompleteToolbarItemStyle` has been renamed to `KeyboardStyle.AutocompleteToolbarItem`. * `AutocompleteToolbarSeparatorStyle` has been renamed to `KeyboardStyle.AutocompleteSeparator`. * `Callout` views have been soft deprecated and will be made internal in 8.0. * `EmojiAnalyzer` has been deprecated. * `EmojiCategoryKeyboardMenu` has been soft deprecated and will be made internal in 8.0. * `EmojiCategoryTitle` has been soft deprecated and will be made internal in 8.0. * `EnglishInputSetProvider` has been deprecated. * `HapticFeedbackConfiguration.noFeedback` has a been renamed to `.disabled`. * `AudioFeedbackConfiguration.standard` is replaced by `.minimal`. * `InputCalloutContext` has been renamed to `KeyboardCalloutContext.InputContext`. * `InputSetProvider` and all related types have been deprecated. * `InterfaceOrientationResolver` has been deprecated. * `KeyboardActionCalloutStyle` has been renamed to `KeyboardStyle.ActionCallout`. * `KeyboardAppearance` has been renamed to `KeyboardStyleProvider`. * `KeyboardAutocapitalizationType` has been renamed to `Keyboard.AutocapitalizationType`. * `KeyboardBackgroundStyle` has been renamed to `KeyboardStyle.Background`. * `KeyboardBackspaceRange` has been renamed to `Keyboard.BackspaceRange`. * `KeyboardButtonStyle` has been renamed to `KeyboardStyle.Button`. * `KeyboardButtonBorderStyle` has been renamed to `KeyboardStyle.ButtonBorder`. * `KeyboardButtonShadowStyle` has been renamed to `KeyboardStyle.ButtonShadow`. * `KeyboardCalloutContext` has been renamed to `CalloutContext`. * `KeyboardCalloutContext.action` has been renamed to `actionContext`. * `KeyboardCalloutContext.input` has been renamed to `inputContext`. * `KeyboardCalloutStyle` has been renamed to `KeyboardStyle.Callout`. * `KeyboardCase` has been renamed to `Keyboard.Case`. * `KeyboardCase.standardButtonImage` has been deprecated. * `KeyboardCaseAdjustable` has been deprecated. * `KeyboardEnabledState` has been renamed to `KeyboardEnabledContext`. * `KeyboardHostingController` has been soft deprecated. * `KeyboardFontType` has been renamed to `KeyboardFont.FontType`. * `KeyboardFontWeight` has been renamed to `KeyboardFont.FontWeight`. * `KeyboardInputCalloutStyle` has been renamed to `KeyboardStyle.InputCallout`. * `KeyboardInputViewController` `keyboardAppearance` has been renamed to `keyboardStyleProvider`. * `KeyboardReturnKeyType` has been renamed to `Keyboard.ReturnKeyType`. * `KeyboardType` has been renamed to `Keyboard.KeyboardType`. * `NumericInputSet.english` has been renamed to `englishNumeric`. * `NumericInputSet.standard` has been renamed to `standardNumeric`. * `DisabledAudioFeedbackEngine` has been deprecated. * `DisabledHapticFeedbackEngine` has been deprecated. * `HapticFeedbackConfiguration.tap` has been replaced by `press` and `release`. * `KeyboardActions` has been renamed to `KeyboardAction.Row`. * `KeyboardActions` image initializer has been deprecated. * `KeyboardActionRows` has been renamed to `KeyboardAction.Rows`. * `KeyboardLayoutItemRow` has been renamed to `KeyboardLayoutItem.Row`. * `KeyboardLayoutItemRows` has been renamed to `KeyboardLayoutItem.Rows`. * `KeyboardLayoutItemSize` has been renamed to `KeyboardLayoutItem.Size`. * `KeyboardLayoutItemWidth` has been renamed to `KeyboardLayoutItem.Width`. * `KeyboardFeedbackHandler` has been deprecated. * `LocalizedCalloutActionProvider` has been deprecated. * `LocalizedKeyboardLayoutProvider` has been deprecated. * `PrefersAutocompleteResolver` has been deprecated. * `PreviewKeyboardActionHandler` has been renamed to `KeyboardPreviews.ActionHandler` * `PreviewKeyboardAppearance` has been renamed to `KeyboardPreviews.StyleProvider`. * `PreviewKeyboardInputViewController` has been renamed to `KeyboardPreviews.InputViewController` * `PreviewKeyboardLayoutProvider` has been renamed to `KeyboardPreviews.LayoutProvider` * `PreviewKeyboardStyleProvider` has been renamed to `KeyboardPreviews.StyleProvider` * `PreviewTextDocumentProxy` has been renamed to `KeyboardPreviews.TextDocumentProxy` * `StandardAudioFeedbackEngine` has been deprecated. * `StandardHapticFeedbackEngine` has been deprecated. * `StandardKeyboardAppearance` has been renamed to `StandardKeyboardStyleProvider`. * `StandardKeyboardFeedbackHandler` has been deprecated. * `StaticKeyboardBehavior` has been deprecated. * `SymbolicInputSet.english` has been renamed to `englishSymbolic`. * `SymbolicInputSet.standard` has been renamed to `standardSymbolic`. * `SystemKeyboardLayoutProvider` utility extensions have been deprecated. ### 💥 Breaking changes * `EnglishKeyboardLayoutProvider` no longer has an open layout provider function. * `StandardKeyboardActionHandler` no longer uses a feedback handler.
12 weeks ago
### ✨ New Features * `KeyboardActionHandler` has a new `handle` function. * `KeyboardBackgroundStyle` has many new properties and builder functions. * `KeyboardButtonStyle` now has separate border and shadow properties. * `KeyboardContext` has a new `hasMultipleLocales` property. * `KeyboardLayoutConfiguration` now has mutable standard values. * `KeyboardLayoutConfiguration` has new standard row height properties. * `NextKeyboardButton` no longer throws assert failures by default. * `PreviewAutocompleteProvider` is a new preview service. * `SystemKeyboard` has a new `renderBackground` property. * `ToggleToolbar` is a new toolbar that can be used to toggle between two toolbars. ### 👑 Pro changes * `KeyboardTheme` has a new `isPredefined` property. * `KeyboardTheme` has a new `copyWithoutAuthor` function. * `KeyboardTheme` style variations have been adjusted to use the new background style model. * `KeyboardThemeAppearance` is now open for inheritance. * `KeyboardThemeAppearance` will now use the largest shadow size to determine the bottom edge insets. * `KeyboardThemeCopyable`'s `copy` function has a new `newName` parameter. * `KeyboardThemeFormModel` is a new observable type. * `KeyboardThemeLivePreview` has new initializers. * `KeyboardThemeLivePreviewHeader` is a new header preview. * `ToggleToolbar` is now part of the main library, and is no longer throwing. ### 🐛 Bug fixes * `StandardKeyboardActionHandler` now sets a correct initial space drag offset position. * `StandardKeyboardActionHandler` now adjusts the space drag offset to handle combined emojis. ### 🗑️ Deprecations * `KeyboardBackgroundStyle` has deprecated the type-based initializer and its property. * `KeyboardBackgroundType` has been deprecated. * `KeyboardInputViewController` pro setup functions have been redesigned. * `SpaceCursorDragGestureHandler` no longer requires a context. * `ToggleToolbar` throwing initializers have been deprecated. ### 💥 Breaking changes * `KeyboardTheme.Author` now uses `String` instead of `URL` for its url.
14 weeks ago
### 💡 Adjustments * `EnglishCalloutActionProvider` `localeKey` is now mutable. * `EnglishInputSetProvider` is now open to inheritance. * `EnglishInputSetProvider` `localeKey` is now mutable. * `EnglishKeyboardLayoutProvider` `localeKey` is now mutable. * `StandardKeyboardAppearance` `backgroundStyle` is now `open`. * `StandardKeyboardAppearance` `foregroundColor` is now `open`. ### 🐛 Bug fixes * `StandardKeyboardActionHandler` once again activates the space drag gesture on long press instead of on press.
15 weeks ago
This version aims to reduce the amount of lost keystrokes by adding a release outside tolerance, to let a button trigger a release event even if the release is a bit outside of the button bounds. The lack of such a tolerance may have caused lost keystrokes before, since it's easy to slide with your finger while typing and ending up with your finger outside the button bounds. Since the best tolerance amount is still unclear, the `keyboardButtonGestures` view extension now lets you specify a tolerance, which is a percentage of the button width. This version also adds a vertical threshold when moving the input cursor with the space button, since dragging the finger too much up and down can result in unexpected movement. This version also tweaks the emoji keyboards to look better and closer to the native ones. There are also new keyboard actions, new url opening utilities, and a bunch of theme adjustments. ### ✨ New Features * `KeyboardAction` has new `systemSettings` and `url` actions. * `KeyboardAction` has a new `standardAction` property. * `KeyboardAppearance` has new, optional `foregroundColor` property. * `KeyboardController` has a new `openUrl` function. * `KeyboardLayout` has a new `hasEmojiKeyboardSwitcher`. * `KeyboardUrlOpener` is a new class for opening URLs. ### 💡 Adjustments * Thanks to [krizhanovskii](https://github.com/krizhanovskii) the Pro Max layout configuration has been improved. * `KeyboardEmojiKeyboard` `KeyboardEmojiCategoryKeyboard` are tweaked to look closer to the system keyboards. * `KeyboardGestures` now handles a release outside as a release inside, if the release happens within a tolerance area. ### 👑 Pro changes * `KeyboardTheme` has new `author`, `collectionName` and `foregroundColor` properties. * `KeyboardThemeLivePreview` now renders light mode only as default. * `License` has new `localizedCalloutActionProviders`, `localizedInputSetProviders` and `localizedKeyboardLayoutProviders` properties. * Some themes define a foreground color to make the emoji keyboard look good. * The license-based `StandardInputSetProvider` convenience initializer has been deprecated. * The license-based `StandardKeyboardLayoutProvider` convenience initializer has been deprecated. ### 🐛 Bug fixes * `KeyboardTheme` didn't set the identifier when it was created with a `MinimalStyle`. * `View+SystemKeyboardButton` didn't send the pressed state to the system keyboard button body. ### 🗑️ Deprecations * `KeyboardThemePreview` has been renamed to `KeyboardThemeLivePreview`. * The `keyboardGestures` view extensions have been renamed to `keyboardButtonGestures`. ### 💥 Breaking changes * `KeyboardTheme` no longer has a `styleName` property.
18 weeks ago
This version updates the new dictation beta feature, adjusts a lot of emoji skin tones and fixes some bugs. The version also adds tools that make it possible to start keyboard dictation from DocumentGroup-based apps. ### 🚨 Important information After receiving reports that the new dictation features required all apps to add dictation permissions to their `Info.plist`, a lot of work has been put into separating speech recognition from dictation. As a result, you must now provide a `SpeechRecognizer` when using the built-in dictation features. An already implemented recognizer can be copied from the `SpeechRecognizer` docs. Removing the speech recognizer parts from the library makes the feature a little harder to use, but removes the need for all apps to specify the permission keys they really don't need. ### ✨ New Features * `DictationContext` has new initializers for specific usages. * `DictationContext` has a new `silenceLimit` that can be used to define after how many seconds of silence dictation should finish. * `DictationContext` has a new `isDictationStartedByKeyboard` that can be used when a deep link can't be used to start dictation. * `KeyboardDictationConfiguration` has a new `matchesDeepLink` that simplifies checking if a specific deep link should start dictation. ### 💡 Behavior changes * More parts of the dictation implementations now update the `DictationContext` `lastError`. ### 👑 Pro changes * `DictationIndicator` has been renamed to `DictationBarVisualizer`. * `DictationOverlay` has been renamed to `DictationScreen`. * `DictationScreen` now supports adding a done button. * `DictationScreen` supports a style instead of using many parameters. * `SpeechRecognizer` is a new protocol that is used to separate speech recognition from dictation. * `StandardDictationService` now requires a speech recognizer. * `StandardKeyboardDictationService` now requires a speech recognizer. * `View.keyboardDictation(...)` now requires a speech recognizer. * `View.keyboardDictationOnAppear(...)` is a new view modifier that can be used in DocumentGroup-based apps. * `View.keyboardDictationOnDeepLink(...)` is a new view modifier that can be used to start dictation without an overlay. ### 🐛 Bug fixes * A duplicate emoji has been removed. * Incorrect Pro themes have been adjusted. * Incorrect `Emoji` skin tone variants have been adjusted. * Incorrect `Emoji` neutral skin tone variants have been adjusted. * `GestureButton` no longer triggers timed events if it's removed before it's released. ### 💥 Breaking changes * `KeyboardDictationService` `stopDictationInKeyboard` has been renamed to `handleDictationResultInKeyboard`. * `KeyboardInputViewController` `viewWillPerformDictation` has been renamed to `viewWillHandleDictationResult`.
iOS macOS watchOS tvOS
KeyboardKit/KeyboardKitPro 7.9.5
KeyboardKit Pro helps you create custom keyboards for iOS and iPadOS.
⭐️ 70
🕓 2 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2 days ago
This version adjusts things in KeyboardKit Pro.
3 days ago
This version adjusts things in KeyboardKit Pro.
6 days ago
### 👑 Pro Adjustments * `EmojiVersion` adjusts iOS and tvOS versions for emoji v15. * `SystemKeyboardPreview.Configuration` no longer applies a color scheme by default. ### 🗑️ Deprecations * `EmojiKeyboardButton` has been deprecated. * `EnglishCalloutActionProvider` has been soft deprecated.
1 week ago
This version adjusts things in KeyboardKit Pro.
3 weeks ago
This version adjusts things in KeyboardKit Pro.
6 weeks ago
This release prepares the library for the upcoming major version bump, which will clean up the library and make it easier to use. Many types have been deprecated with proper `@available` annotations, but those that can't be deprecated yet are soft deprecated with a `[DEPRECATED]` comment. `> v8.0: ` comments are added where structural or architectural changes will, but currently can't be made. Many keyboard types are moved into a new `Keyboard` namespace, and that many styles are moved into a new `KeyboardStyle` namespace. This introduction of namespace types will make it easier to overview the library and find types within it. Another big change is that the `InputSetProvider` concept is replaced by just using `InputSet`s. This removes a lot of complexity and makes it easier to create custom layouts and use various input sets together. Other big changes are that the `KeyboardAppearance` is renamed to `KeyboardStyleProvider`, the `Appearance` namespace to `Styling` and that the `KeyboardFeedbackHandler` is merged into the `KeyboardActionHandler` to just have a single type. ### ✨ New Features * `AutocompleteActionProvider.disabled` is a new alias for `DisabledAutocompleteProvider`. * `CalloutActionProvider.disabled` is a new alias for `DisabledCalloutActionProvider`. * `DictationService.disabled` is a new alias for `DisabledDictationService`. * `HapticFeedbackConfiguration` has new `press` and `release` configurations. * `Image.keyboardShift` is a new image. * `InputSet` has new `English` builders. * `Keyboard` is a new namespace type for some keyboard-specific types. * `Keyboard.ReturnKeyType` has new `continue`, `emergencyCall` and `route` types. * `Keyboard.ReturnKeyType` has a new `prefersAutocomplete` property. * `KeyboardActionHandler` has new feedback functions. * `KeyboardDictationService.disabled` is a new alias for `DisabledKeyboardDictationService`. * `KeyboardFeedbackSettings` has new enabled and disabled configurations. * `KeyboardInputViewController` has new view lifecycle functions for registering and unregistering as the shared controller. * `KeyboardLayoutProviderProxy` has new standard functionality. * `KeyboardStyle` is a new style namespace that contains most style types. * `KeyboardStyleProvider` has a new function for the button content bottom margin. * `PreviewKeyboardInputViewController` is a new preview type. * `StandardKeyboardActionHandler` has new feedback functions. * `StandardKeyboardFeedbackHandler` has new feedback functions. * `StandardKeyboardLayoutProvider` has a new default initializer. * `SystemKeyboard` is now available on all platforms. * `View` has a new `withEnvironment(from:)` extension. ### 💡 Adjustments * `AudioFeedbackEngine` has been converted from a protocol to an open class. * `AutocompleteToolbar` items now use `.current` as default locale. * `KeyboardActionHandler` has a new `triggerFeedback(for:on:)` function. * `SpaceCursorDragGestureHandler` no longer needs a feedback handler. * `StandardKeyboardLayoutProvider` no longer requires an input set provider. * `StandardKeyboardStyleProvider` adjusts the bottom padding for some keys. * `SystemKeyboardLayoutProvider` now returns switcher actions for all keyboard types. ### 👑 Pro Adjustments * `AutocompleteToolbarPreview` is a new preview component. * `InputSet` has new input sets for some locales. * `InputSet` has new throwing properties for the localized input sets. * `KeyboardThemeAppearance` has a been renamed to `ThemeBasedKeyboardStyleProvider`. * `ProInputSetProvider` and all its locale-specific types have been deprecated. * `ProKeyboardLayoutProvider` and all localized subclasses use input sets instead of providers. * `ProKeyboardLayoutProvider` and all localized subclasses can now be provided with custom input sets. * `SystemKeyboardPreview` is a new preview component. * `KeyboardThemeLivePreview` has been renamed to `SystemKeyboardThemePreview`. * `KeyboardThemeLivePreviewHeader` has been renamed to `SystemKeyboardThemePreviewHeader`. * `SystemKeyboardThemePreview` now works on all platforms. ### 🐛 Bug fixes * `EmojiCategoryKeyboard` no longer requires two gestures when it's presented by the `SystemKeyboard`. This was strangely enough fixed by the `SystemKeyboardLayoutProvider` adjustment. * `EmojiCategoryKeyboard` now applies an interactable background to the grid, to make scrolling work even where there are no emojis. * `KeyboardContext` now switching to alphabetic when inserting a new line after a sentence delimiter in numeric and symbolic keyboards. ### 🗑️ Deprecations * `AudioFeedbackConfiguration.noFeedback` has a been renamed to `.disabled`. * `AudioFeedbackConfiguration.standard` is replaced by `.enabled`. * `ActionCalloutContext` has been renamed to `KeyboardCalloutContext.ActionContext`. * `AutocompleteSpaceState` has been deprecated. * `AutocompleteSuggestion.isAutocomplete` has been renamed to `isAutocorrect`. * `AutocompleteToolbarStyle` has been renamed to `KeyboardStyle.AutocompleteToolbarItem`. * `AutocompleteToolbarItemBackgroundStyle` has been renamed to `KeyboardStyle.AutocompleteToolbarItemBackground`. * `AutocompleteToolbarItemStyle` has been renamed to `KeyboardStyle.AutocompleteToolbarItem`. * `AutocompleteToolbarSeparatorStyle` has been renamed to `KeyboardStyle.AutocompleteSeparator`. * `Callout` views have been soft deprecated and will be made internal in 8.0. * `EmojiAnalyzer` has been deprecated. * `EmojiCategoryKeyboardMenu` has been soft deprecated and will be made internal in 8.0. * `EmojiCategoryTitle` has been soft deprecated and will be made internal in 8.0. * `EnglishInputSetProvider` has been deprecated. * `HapticFeedbackConfiguration.noFeedback` has a been renamed to `.disabled`. * `AudioFeedbackConfiguration.standard` is replaced by `.minimal`. * `InputCalloutContext` has been renamed to `KeyboardCalloutContext.InputContext`. * `InputSetProvider` and all related types have been deprecated. * `InterfaceOrientationResolver` has been deprecated. * `KeyboardActionCalloutStyle` has been renamed to `KeyboardStyle.ActionCallout`. * `KeyboardAppearance` has been renamed to `KeyboardStyleProvider`. * `KeyboardAutocapitalizationType` has been renamed to `Keyboard.AutocapitalizationType`. * `KeyboardBackgroundStyle` has been renamed to `KeyboardStyle.Background`. * `KeyboardBackspaceRange` has been renamed to `Keyboard.BackspaceRange`. * `KeyboardButtonStyle` has been renamed to `KeyboardStyle.Button`. * `KeyboardButtonBorderStyle` has been renamed to `KeyboardStyle.ButtonBorder`. * `KeyboardButtonShadowStyle` has been renamed to `KeyboardStyle.ButtonShadow`. * `KeyboardCalloutContext` has been renamed to `CalloutContext`. * `KeyboardCalloutContext.action` has been renamed to `actionContext`. * `KeyboardCalloutContext.input` has been renamed to `inputContext`. * `KeyboardCalloutStyle` has been renamed to `KeyboardStyle.Callout`. * `KeyboardCase` has been renamed to `Keyboard.Case`. * `KeyboardCase.standardButtonImage` has been deprecated. * `KeyboardCaseAdjustable` has been deprecated. * `KeyboardEnabledState` has been renamed to `KeyboardEnabledContext`. * `KeyboardHostingController` has been soft deprecated. * `KeyboardFontType` has been renamed to `KeyboardFont.FontType`. * `KeyboardFontWeight` has been renamed to `KeyboardFont.FontWeight`. * `KeyboardInputCalloutStyle` has been renamed to `KeyboardStyle.InputCallout`. * `KeyboardInputViewController` `keyboardAppearance` has been renamed to `keyboardStyleProvider`. * `KeyboardReturnKeyType` has been renamed to `Keyboard.ReturnKeyType`. * `KeyboardType` has been renamed to `Keyboard.KeyboardType`. * `NumericInputSet.english` has been renamed to `englishNumeric`. * `NumericInputSet.standard` has been renamed to `standardNumeric`. * `DisabledAudioFeedbackEngine` has been deprecated. * `DisabledHapticFeedbackEngine` has been deprecated. * `HapticFeedbackConfiguration.tap` has been replaced by `press` and `release`. * `KeyboardActions` has been renamed to `KeyboardAction.Row`. * `KeyboardActions` image initializer has been deprecated. * `KeyboardActionRows` has been renamed to `KeyboardAction.Rows`. * `KeyboardLayoutItemRow` has been renamed to `KeyboardLayoutItem.Row`. * `KeyboardLayoutItemRows` has been renamed to `KeyboardLayoutItem.Rows`. * `KeyboardLayoutItemSize` has been renamed to `KeyboardLayoutItem.Size`. * `KeyboardLayoutItemWidth` has been renamed to `KeyboardLayoutItem.Width`. * `KeyboardFeedbackHandler` has been deprecated. * `LocalizedCalloutActionProvider` has been deprecated. * `LocalizedKeyboardLayoutProvider` has been deprecated. * `PrefersAutocompleteResolver` has been deprecated. * `PreviewKeyboardActionHandler` has been renamed to `KeyboardPreviews.ActionHandler` * `PreviewKeyboardAppearance` has been renamed to `KeyboardPreviews.StyleProvider`. * `PreviewKeyboardInputViewController` has been renamed to `KeyboardPreviews.InputViewController` * `PreviewKeyboardLayoutProvider` has been renamed to `KeyboardPreviews.LayoutProvider` * `PreviewKeyboardStyleProvider` has been renamed to `KeyboardPreviews.StyleProvider` * `PreviewTextDocumentProxy` has been renamed to `KeyboardPreviews.TextDocumentProxy` * `StandardAudioFeedbackEngine` has been deprecated. * `StandardHapticFeedbackEngine` has been deprecated. * `StandardKeyboardAppearance` has been renamed to `StandardKeyboardStyleProvider`. * `StandardKeyboardFeedbackHandler` has been deprecated. * `StaticKeyboardBehavior` has been deprecated. * `SymbolicInputSet.english` has been renamed to `englishSymbolic`. * `SymbolicInputSet.standard` has been renamed to `standardSymbolic`. * `SystemKeyboardLayoutProvider` utility extensions have been deprecated. ### 💥 Breaking changes * `EnglishKeyboardLayoutProvider` no longer has an open layout provider function. * `StandardKeyboardActionHandler` no longer uses a feedback handler.
12 weeks ago
### ✨ New Features * `KeyboardActionHandler` has a new `handle` function. * `KeyboardBackgroundStyle` has many new properties and builder functions. * `KeyboardButtonStyle` now has separate border and shadow properties. * `KeyboardContext` has a new `hasMultipleLocales` property. * `KeyboardLayoutConfiguration` now has mutable standard values. * `KeyboardLayoutConfiguration` has new standard row height properties. * `NextKeyboardButton` no longer throws assert failures by default. * `PreviewAutocompleteProvider` is a new preview service. * `SystemKeyboard` has a new `renderBackground` property. * `ToggleToolbar` is a new toolbar that can be used to toggle between two toolbars. ### 👑 Pro changes * `KeyboardTheme` has a new `isPredefined` property. * `KeyboardTheme` has a new `copyWithoutAuthor` function. * `KeyboardTheme` style variations have been adjusted to use the new background style model. * `KeyboardThemeAppearance` is now open for inheritance. * `KeyboardThemeAppearance` will now use the largest shadow size to determine the bottom edge insets. * `KeyboardThemeCopyable`'s `copy` function has a new `newName` parameter. * `KeyboardThemeFormModel` is a new observable type. * `KeyboardThemeLivePreview` has new initializers. * `KeyboardThemeLivePreviewHeader` is a new header preview. * `ToggleToolbar` is now part of the main library, and is no longer throwing. ### 🐛 Bug fixes * `StandardKeyboardActionHandler` now sets a correct initial space drag offset position. * `StandardKeyboardActionHandler` now adjusts the space drag offset to handle combined emojis. ### 🗑️ Deprecations * `KeyboardBackgroundStyle` has deprecated the type-based initializer and its property. * `KeyboardBackgroundType` has been deprecated. * `KeyboardInputViewController` pro setup functions have been redesigned. * `SpaceCursorDragGestureHandler` no longer requires a context. * `ToggleToolbar` throwing initializers have been deprecated. ### 💥 Breaking changes * `KeyboardTheme.Author` now uses `String` instead of `URL` for its url.
15 weeks ago
This version aims to reduce the amount of lost keystrokes by adding a release outside tolerance, to let a button trigger a release event even if the release is a bit outside of the button bounds. The lack of such a tolerance may have caused lost keystrokes before, since it's easy to slide with your finger while typing and ending up with your finger outside the button bounds. Since the best tolerance amount is still unclear, the `keyboardButtonGestures` view extension now lets you specify a tolerance, which is a percentage of the button width. This version also adds a vertical threshold when moving the input cursor with the space button, since dragging the finger too much up and down can result in unexpected movement. This version also tweaks the emoji keyboards to look better and closer to the native ones. There are also new keyboard actions, new url opening utilities, and a bunch of theme adjustments. ### ✨ New Features * `KeyboardAction` has new `systemSettings` and `url` actions. * `KeyboardAction` has a new `standardAction` property. * `KeyboardAppearance` has new, optional `foregroundColor` property. * `KeyboardController` has a new `openUrl` function. * `KeyboardLayout` has a new `hasEmojiKeyboardSwitcher`. * `KeyboardUrlOpener` is a new class for opening URLs. ### 💡 Adjustments * Thanks to [krizhanovskii](https://github.com/krizhanovskii) the Pro Max layout configuration has been improved. * `KeyboardEmojiKeyboard` `KeyboardEmojiCategoryKeyboard` are tweaked to look closer to the system keyboards. * `KeyboardGestures` now handles a release outside as a release inside, if the release happens within a tolerance area. ### 👑 Pro changes * `KeyboardTheme` has new `author`, `collectionName` and `foregroundColor` properties. * `KeyboardThemeLivePreview` now renders light mode only as default. * `License` has new `localizedCalloutActionProviders`, `localizedInputSetProviders` and `localizedKeyboardLayoutProviders` properties. * Some themes define a foreground color to make the emoji keyboard look good. * The license-based `StandardInputSetProvider` convenience initializer has been deprecated. * The license-based `StandardKeyboardLayoutProvider` convenience initializer has been deprecated. ### 🐛 Bug fixes * `KeyboardTheme` didn't set the identifier when it was created with a `MinimalStyle`. * `View+SystemKeyboardButton` didn't send the pressed state to the system keyboard button body. ### 🗑️ Deprecations * `KeyboardThemePreview` has been renamed to `KeyboardThemeLivePreview`. * The `keyboardGestures` view extensions have been renamed to `keyboardButtonGestures`. ### 💥 Breaking changes * `KeyboardTheme` no longer has a `styleName` property.
18 weeks ago
This version updates the new dictation beta feature, adjusts a lot of emoji skin tones and fixes some bugs. The version also adds tools that make it possible to start keyboard dictation from DocumentGroup-based apps. ### 🚨 Important information After receiving reports that the new dictation features required all apps to add dictation permissions to their `Info.plist`, a lot of work has been put into separating speech recognition from dictation. As a result, you must now provide a `SpeechRecognizer` when using the built-in dictation features. An already implemented recognizer can be copied from the `SpeechRecognizer` docs. Removing the speech recognizer parts from the library makes the feature a little harder to use, but removes the need for all apps to specify the permission keys they really don't need. ### ✨ New Features * `DictationContext` has new initializers for specific usages. * `DictationContext` has a new `silenceLimit` that can be used to define after how many seconds of silence dictation should finish. * `DictationContext` has a new `isDictationStartedByKeyboard` that can be used when a deep link can't be used to start dictation. * `KeyboardDictationConfiguration` has a new `matchesDeepLink` that simplifies checking if a specific deep link should start dictation. ### 💡 Behavior changes * More parts of the dictation implementations now update the `DictationContext` `lastError`. ### 👑 Pro changes * `DictationIndicator` has been renamed to `DictationBarVisualizer`. * `DictationOverlay` has been renamed to `DictationScreen`. * `DictationScreen` now supports adding a done button. * `DictationScreen` supports a style instead of using many parameters. * `SpeechRecognizer` is a new protocol that is used to separate speech recognition from dictation. * `StandardDictationService` now requires a speech recognizer. * `StandardKeyboardDictationService` now requires a speech recognizer. * `View.keyboardDictation(...)` now requires a speech recognizer. * `View.keyboardDictationOnAppear(...)` is a new view modifier that can be used in DocumentGroup-based apps. * `View.keyboardDictationOnDeepLink(...)` is a new view modifier that can be used to start dictation without an overlay. ### 🐛 Bug fixes * A duplicate emoji has been removed. * Incorrect Pro themes have been adjusted. * Incorrect `Emoji` skin tone variants have been adjusted. * Incorrect `Emoji` neutral skin tone variants have been adjusted. * `GestureButton` no longer triggers timed events if it's removed before it's released. ### 💥 Breaking changes * `KeyboardDictationService` `stopDictationInKeyboard` has been renamed to `handleDictationResultInKeyboard`. * `KeyboardInputViewController` `viewWillPerformDictation` has been renamed to `viewWillHandleDictationResult`.
18 weeks ago
This version updates the new dictionary beta feature. ### 🚨 Important information After receiving reports that the new dictation features required all apps to add dictation permissions to their `Info.plist`, a lot of work has been put into separating speech recognition from dictation. As a result, you must now provide a `SpeechRecognizer` when using the built-in dictation features, which fixes this problem. An already implemented recognizer can be copied from the `SpeechRecognizer` docs. ### ✨ New Features * `DictationContext` has new initializers for specific usage. * `DictationContext` has a new `silenceLimit` property. * `DictationContext` has a new `isDictationStartedByKeyboard` property. * `KeyboardDictationConfiguration` has a new `matchesDeepLink`. ### 💡 Behavior changes * More dictation logic now updates the `DictationContext` `lastError`. ### 👑 Pro changes * `DictationIndicator` has been renamed to `DictationEqualizer`. * `DictationOverlay` now supports adding a done button. * `DictationOverlay` renders many thinner lines by default. * `DictationOverlay` supports a style instead of using many parameters. * `SpeechRecognizer` is a new specialized protocol used by the pro dictation services and view modifiers. * `View.keyboardDictation(...)` now requires a speech recognizer. * `View.keyboardDictationOnAppear(...)` is a new view modifier that can be used in DocumentGroup-based apps. * `View.keyboardDictationOnDeepLink(...)` is a new view modifier that can be used to start dictation without presenting an overlay. ### 🐛 Bug fixes * A duplicate emoji has been removed. * Incorrect Pro themes have been adjusted. * Incorrect `Emoji.skinToneVariant` values have been adjusted. * Incorrect `Emoji.neutralSkinToneVariant` values have been adjusted. * `GestureButton` no longer triggers timed events if it's removed before it's released. ### 💥 Breaking changes * `KeyboardDictationService` `stopDictationInKeyboard` has been renamed to `handleDictationResultInKeyboard`. * `KeyboardInputViewController` `viewWillPerformDictation` has been renamed to `viewWillHandleDictationResult`.
iOS macOS watchOS tvOS

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics