All notable changes to this project will be documented in this file.
- Fix memory leak of
MessageViews
.
- Fixed an issue where UIKit components were being instantiated off the main queue.
- Added the ability to set a custom value on
MessageView.id
. This can be useful for dismissing specific messages using a pre-definedid
.
- Changed the default behavior when a message is displayed in its own window (such as with
.window
presentation context) to no longer become the key window in order to prevent the keyboard from dismissing. If one needs the message's window to become key, this can be done by settingSwiftMessages.Config.becomeKeyWindow
totrue
. See
- Changed the internal logic of hiding a message view to always succeed to work around the problem of the hide animation failing, such as when started while the app is not active.
- Improved reliability of the automatic adjustments made to avoid message views overlapping the status bar, particularly when using the
.view
presentation context.
- Added a
view
case topresentationContext
for displaying the message in a specific container view.
- Add
eventListeners
option toSwiftMessages.Config
to specify a list of event listeners to be notified of message show and hide events.
- Add
ignoreDuplicates
option toSwiftMessages.Config
to specify whether or not to ignore duplicateIdentifiable
message views.
- Add
shouldAutorotate
option toSwiftMessages.Config
for customizing device rotation behavior when messages are presented in an overlay window. By default, message will auto-rotate.
- Enable automatic provisioning on framework target
- Support for Swift 3.0.
-
Support for Swift 2.3 and Xcode 8.
The nib files needed to be updated to Xcode 8 format to work around an iOS bug. Unfortunately, this makes it necessary to break backward compatibility with Swift 2.2 and Xcode 7.
- Fix #16 Preserve status bar visibility when displaying message in a new window.
- Add default configuration
SwiftMessages.defaultConfig
that can be used when calling the variants ofshow()
that don't take aconfig
argument or as a global base for custom configs. - Add
Array.sm_random()
function that returns a random element from the array. Can be used to create a playful message that cycles randomly through a set of emoji icons, for example.
- Fix #5 Emoji not shown!
- Fix #6 There is no way to create SwiftMessages instance as there is no public initializer
- Fix Carthage-related issues.
- New layout
Layout.TabView
— likeLayout.CardView
with one end attached to the super view.
- Fix spacing between title and body text in
Layout.CardView
when body text wraps.
-
The
BaseView.contentView
property of was removed because it no longer had any functionality in the framework.This is a minor backwards incompatible change. If you've copied one of the included nib files from a previous release, you may get a key-value coding runtime error related to contentView, in which case you can subclass the view and add a
contentView
property or you can remove the outlet connection in Interface Builder.
- Remove the
iconContainer
property fromMessageView
.
- Fix constraints generated by
BaseView.installContentView()
.
- Add support for specifying an
IconStyle
in theMessageView.configureTheme()
convenience function.
- Add code comments.
- Initial release.