This repository has been archived by the owner on Oct 30, 2018. It is now read-only.
Releases: slackhq/SlackTextViewController
Releases · slackhq/SlackTextViewController
Version 1.7
Deprecations:
- Removed
shouldForceTextInputbarAdjustment
and replace it with-forceTextInputbarAdjustmentForResponder:
- Renamed
canShowTypeIndicator
and replace it withcanShowTypingIndicator
- Renamed
editortLeftButton
witheditorLeftButton
, andeditortRightButton
witheditorRightButton
Features & enhancements:
- 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!
Hot Fixes:
Version 1.6
Features:
- 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.
Hot Fixes:
- 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
Version 1.5.2
Minor release including a tag to better identify internal alerts (see #196)
Version 1.5.1
Features:
- Added Carthage support. Big up @brsmith080 & @hankbao!
- Added customization hooks to override the char counter colors and layout.
- Added a new char counter countdown style. Thanks @johannth!
- Added basic unit tests with Travis CI and Coveralls support.
- Deprecated the
shouldForceTextInputbarAdjustment
property. It has now be replaced by the-forceTextInputbarAdjustmentForResponder:
overridable method to allow a more selective verification of when the text input bar should adjust even when it is not the first responder. This uses an experimental API to detect the current first responder.
Hot Fixes:
- Fixed
limitExceeded
getter method - Fixed an issue with third-party (Swiftkey) keyboards not forwarding events properly sometimes.
- Improved how text caret selection/movement is really detected, not using UITextViewDelegate anymore (not reliable enough).
- Fixed an issue when text was cached while auto-completing, it would present the auto-completion view before the view is visible, disabling scroll gesture and causing other side effects.
- Disabled animation in the textview placeholder's layout cycle.
- Fixed the send button not being disabled/hidden after sending a message.
- Fixed several issues regarding auto-completion vs auto-correction on iOS 8.3
- Fixed autocomplete on Japanese keyboards.
- Fixed crash on iOS7 caused by a misused auto-layout API.
- Hot fixes for iOS7 base SDK. Thanks @poolqf!
New examples:
- Push example for UITabBarController.
- Carthage requieres to have an XCode project capable of building a framework: that's what the Builder sample project is for. The project also contains basic tests using
XCTest
to be sure it builds and imports the framework properly and delivers basic initializers fromSLKTextViewController
(more test should be added in the future). - A new Tests project, decoupled from other sample projects to allow dedicated and automated tests. Uses Specta, FBSnapshotTestCase and Expecta+Snapshots amazing OSS frameworks.
Version 1.5
Features:
- Extended: SLKTextViewController to support arbitrary scroll views. Thanks @eanagel!
- Added: Thanks to @sprynmr, a super-whizzy iPad UIModalPresentationFormSheet support.
- Exposed: the typing indicator label, for further cunning customization.
- Exposed: verticalPanGesture. Let your gesturing with pans no longer be hidden, nor confined to the horizontal plane.
- Exposed: initWithCoder and associated updates to documentation.
- Exposed: All conforming delegates. Be free, conforming delegates!
- Added: new API to to remove the prefix when accepting auto-completion.
Hot fixes:
- Fixed: Improved external keyboard detection (thank you again @sprynmr).
- Fixed: Some pesky placeholder rendering stuff with unicode characters (Chinese and Japanese) and other related issues.
- Fixed: placeholder-not-hidden problem while
textInputBar.autoHideRightButton = false
(thank you, @f33chobits <3). - Fixed: By ignoring the status bar height we've fixed the issue of problematic popover presentation.
- Fixed: A bunch of minor quibbles with auto-completion. That docket has been cleared.
- Fixed: Several knotty substring and string appending crashes are now much nicer.
- Fixed: Layout issue when embedding SLKTextViewController inside of a UITabBarController not showing the text input.
- Fixed: Inaccuracy in character counter issues by considering white spaces and dramatic pauses. Or spaces, anyway.
- Fixed: Left/Right cursor change with external keyboard, overriding native cursor shift. Upsi!
- Added: A slk prefix to all private APIs, to avoid unwanted overrides.
- Removed: deprecated APIs.
New examples:
- To better test iPad modal presentation of SlackTextViewController, you will find a new target called Messenger-iPad-Sheet (@sprynmr, you're literally on fire with this one)(NB: not actually "literally").
- Example implementation of
didPasteMediaContent:
Boom!
Version 1.4.1
Hot fixes:
- Fixed issue regarding left/right arrow keys from not being recognized while using an external keyboard
- Fixed the scrollView's offset while dragging the keyboard (on both inverted modes)
- Fixed crashes caused by processing auto-completion text in a separate thread.
- Fixed text from not being cached on memory warning.
- Fixed storyboard initialization for UICollectionView (not being created properly)
- Fixed auto-correction conflict while auto-completion, when the predictive text is disabled but auto-correction not.
- Fixed an issue when auto-repeated text deletion is interrupted when reaching auto-completed words.
- Fixed bottom margin calculations (for better UITabBarController and custom ViewController containment support)
- Fixed placeholder inset calculations
Version 1.4
- Added Container View support. Thanks @ikesyo!
- Improved gesture recognizer collisions.
- Fixed custom keyboard notification dispatch.
- Fixed
shouldScrollToBottomAfterKeyboardShows
regression bug. Thanks @CraigSiemens for reporting. - Fixed bugs with undo/redo, both, using
UIMenuController
and external keyboard. - Fixed bugs with text caching.
- Fixed crash during auto-completion, while creating a substring out of bounds.
- Fixed crash due to
scrollViewProxy
being nil sometimes.
Version 1.3.2
- Improved SLK custom keyboard notifications
- Fixed blurry rendered text on non-retina devices (ie: iPad2)
- Fixed scrollView scrolling to top.
Version 1.3.1
- Fixed an issue caused by a circular subspec dependency, during CocoaPods installation (since CocoaPods 0.35 RC).
Version 1.3
- Introduced text caching, with a easy to use API to enable it, so while composing in the text view the content is being cached using
NSUserDefaults
. Take a look at- (id)keyForTextCaching
and its documentation for more info. - Fixed an issue on iOS7 where showing the keyboard wouldn't animate the transition.
- Improved keyboard calculations.
- Drastically improved SLK keyboard notifications, external keyboard detection and the QuickType bar detection. All these major refactoring fixes many little edge case bugs related to the keyboard display.
- Refactored
presentKeyboard:
&dismissKeyboard:
method with a cleaner approach.