- Migrated the library to be using NSAttributedString underneath. The
text
property onSLKTextView
uses a NSAttributedString representation based on its font and text color, and doesn't forward to super. By @jacywu07 (slackhq#501) - As part of the migration to NSAttributedString, new helpers for attributed strings have been added to
SLKTextView+SLKAdditions
. - Introduced a new API to end users to open the auto-completion mode with a given prefix. By @jacywu07 (slackhq#506)
- Exposed the private
cacheTextView
method. By @acandelaria1 (slackhq#513)
- Updated the sample project to Swift 3! By @cyhsutw (slackhq#522)
- Added a property to allow the user to set how many lines of text SLKTextView's placeholder should have. By @jedmund (slackhq#505)
- Tweaked keyboard height calculations on invert mode. By @ZAndyL (slackhq#512)
- Fixed keyboard status updates inconsistencies, causing sometimes the text input bar not to follow the keyboard.
- Fixed bottom margin inconsistencies. Thanks @yury! 💪
- Fixed an edge case where the caret would jump to the end after double-space completion in middle of text. Thanks @mtackes
- Improved Carthage support
- Fixes a regression causing to trigger auto-completion text processing even if no prefix have been registered. This was causing a crash to many. Sorry about that!
- Ignores keyboard notifications when no valid first responder is detected. This fixes the text input not following the keyboard at times.
- Now
shouldProcessTextForAutoCompletion:
requires calling super.
- Better Swift 2.2 support with nullability annotations and shiny new Swift sample code. You rock @weijentu 🙇
- Introduced
SLKTextInput
protocol: AUITextInput
extension to decouple all the text processing features related to auto-completion, to reuse in any text component such as UISearchBar, UITextField, UITextView, etc. - Added a new API
-shouldProcessTextForAutoCompletion
to be able to opt-out from text processing for auto-completion. - The
registeredPrefixes
property are now of type NSSet (instead of NSArray). - Added animation to views when switching from a keyboard to a custom input view. Thanks @cyhsutw!
- Made
keyboardStatus
public, making it easier to check for the current keyboard state.
- Fixed a use case where the textInput would not follow the keyboard when dismissing.
- Improved text caching from the textInput, specially when moving the app to the background (in case the app crashes while being on the background).
- Fixed misaligned placeholder labels in the textView and out of bounds.
- Fixed the textInput not growing accordantly to the font size. This was a regressions since version
1.7.1
- Many, many, many auto-completion bug fixes 💪
- Renamed public
autoCompleteFormatting
toformattingEnabled
. - Doesn't opt-out anymore from the built-in menu menu items Define, Replace and Share.
- Made the collectionView's default background color to white.
- The auto-completion view is now presented above of the table/collection view avoiding to push it up/down every time. Much better UX!
- Stored all key commands in a instance variable, to avoid recreating the array at every character update.
- Fixed library from not compiling on iOS 8.
- Fixed the right button from stretching when animating the constrains. This was broken since iOS 9.
- Improved
UITabBar
support by consideringhidesBottomBarWhenPushed
too. - Fixed crash when double tapping the space bar while the textView was empty.
- Fixed issue causing not to forward all UITextViewDelegate callbacks.
- Deprecated the keyboard panning gesture on iOS 9, to drag the keyboard up and down. More information about this in #361
- Deprecated
isLoupeVisible
, which will cause issues when auto-completion mode is active and moving the cursor of the text view. More information about this in #361
- Enabled interaction while the right button and the auto-completion view are being presented animatedly
- Does not scroll to the bottom anymore, if the content size is smaller than its bounds, when
shouldScrollToBottomAfterKeyboardShows
is enabled.
- Fixed the keyboard status and custom notifications not being set on the right order.
- Fixed a crash when calling unrecognised selectors internally in the
UITextViewDelegate
method implementation, when using other subclasses of UITextView. - Fixed
UITabBar
support. This was a regression. Thanks @LHIOUI for the headsup 👊 - Fixed cursor dragging issues when deep pressing on the keyboard's trackpad.
- Fixed the auto-completion layout being busted in 1.8. This was a regression.
- Added Markdown Formatting ⚡️📝, a useful and simple way to allow your users to auto-complete any markdown formatting from within the text input. 1 small step to make writing markdown quicker.
- The shake gesture now presents an
UIAlertController
for iOS 8 and above. Still supports the old and goodUIAlertView
for legacy versions.
- Fixed some content inset non-sense
- Scrolling to top now really scrolls to top. Not down. Oopsie.
- Scrolling down when the keyboard gets presented is also working now. Yay 🎉 !
- The placeholder font now matches the textView font, for real this time.
- Avoids reloading the text view when there is no key for cache. Thanks @susieyy!
- Removed annoying iOS 8 warnings.
- Better Carthage support 🙏
- Fixed the textInput's right margin not being honored or honoured. Thanks @ikesyo 🙌
- Fixed the textView's contentSize to never be higher than its bounds. Very useful for stuff.
- Changed how the auto-completion API worked: it now allows asynch auto-completion! Have a look at how to set it up / update it](https://github.com/slackhq/SlackTextViewController#autocompletion)
- Added keyboard trackpad detection for iOS 9. Used internally for disables auto-completion while its detected, so we avoid crazy things! 👻
- Improved the magnifying glass detection.
- Gonna get a nice warning to remind you to
super
inviewDidLoad
now. Fancy! - Slowed down bouncy animation by 0.15 seconds
- Disabled
cellLayoutMarginsFollowReadableWidth
on iOS 9 for the auto-completion view. No need for large margins, come on!
- Fixed compatibility issues with Cocoapods 0.39.0 new requirements. All sources are now in the same root level.
- Fixed keyboard presentation when pushing a view controller instance. Thanks @fastred!
- Fixed auto-layout issues on the Edit Mode.
- Fixed
maximumHeightForAutoCompletionView
calculations. Maths! - Fixed crash caused by calling
layoutIfNeeded
too early - Removed duplicated declarations, specially causing nightmares to Swifters.
- Removed unused internal methods.
- Better (Carthage)[https://github.com/Carthage/Carthage] support 🙏
- Removed
shouldForceTextInputbarAdjustment
and replace it with-forceTextInputbarAdjustmentForResponder:
- Renamed
canShowTypeIndicator
and replace it withcanShowTypingIndicator
- Renamed
editortLeftButton
witheditorLeftButton
, andeditortRightButton
witheditorRightButton
- Added iOS 9 (beta 5) support, with fixes for multi-tasking on iPad and external keyboard shortcut hud support, and many small layout tweaks.
- Added the ability to show/hide the text input bar, with animation support, using
setTextInputbarHidden:animated:
. Thanks @aryaxt! - Added better Accessibility support with Dynamic Type
- Improved the keyboard panning gesture by dragging the text input bar from the bottom (feature flagged as it needs more testing)
- Added 2 more
UIScrollViewDelegate
method declarations to SLKTextViewController's header.super
is required!
- Fixed wrong auto-completion view height calculations.
- Fixed a very bad retain cycle reported in #234
- Fixed the keyboard view detection on iOS 9
- Fixed swift compiler warning. Thanks @csjones
- Added support for custom typing indicator, following the same pattern of registering a class using
registerClassForTypingIndicatorView:
, while this class conforms toSLKTypingIndicatorProtocol
. Please refer to the documentation for more details about the feature. Thanks @sveinhal! (#207) - Added support for registering longer auto-completion prefixes
- Improved drastically the keyboard panning experience, making it much more smooth now. Awesome stuff @camitox!
- Added the ability to ignore the text inputbar adjustment when the keyboard is presented, using
ignoreTextInputbarAdjustment
. This is generally useful when SLKTVC is used in a custom modal presentation and when you want to manipulate the view's alignment yourself.
- No longer overriding the default background color of UITableView. Oupsi! (#205)
- Made sure not to register the same notifications twice.
- Fixes issue where the text input would not adjust on top of the keyboard when presenting an
UIAlertViewController
(UIAlertView
orUIActionSheet
) in iOS8
For more release notes of this project, please visit https://github.com/slackhq/SlackTextViewController/releases