All Versions
Latest Version
Avg Release Cycle
82 days
Latest Release

Changelog History
Page 2

  • v8.0.2 Changes

    August 18, 2020

    ๐Ÿ”„ Changes

    • ๐Ÿ“ฆ #395 Add preliminary support for Swift Package Manager.
  • v8.0.1 Changes

    ๐Ÿ›  Fixes

    • #401 UIAlertController pops up but SwiftMessage layer absorbs all touches.
  • v8.0.0 Changes

    July 09, 2020

    ๐Ÿš€ Sorry for taking so long to release this.

    ๐Ÿ”„ Changes

    • โž• Add SwiftMessages.PresentationContext.windowScene option for targeting a specific window scene.
    • ๐Ÿ’… Changed the behavior of the default presentationContext, .automatic. Previously, if the root view controller was presenting, the message would only be displayed over the presented view controller if the modalPresentationStyle was fullScreen or overFullScreen. Now, messages are always displayed over presented view controllers.
    • Made showDuraton and hideDuration on Animator non-optional.
    • Made showDuraton and hideDuration writable options on TopBottomAnimation and PhysicsAnimation.

    ๐Ÿ›  Fixes

    • #365 Fix an issue with customized TopBottomAnimation where messages weren't properly displayed under navigation and tab bars.
    • #352 Fix accessibility for view controllers presented with SwiftMessagesSegue.
    • โšก๏ธ #355 Update card view layout to support centering of pure textual content
    • ๐Ÿ’… #354 Support overrideUserInterfaceStyle when view presented in its own window
    • #360 Fix touch handing issue in iOS 13.1.3
    • โš  #382 Fix warnings in Xcode 11.4
  • v7.0.1 Changes

    September 19, 2019

    ๐Ÿ”„ Changes

    • ๐Ÿ‘Œ Support iOS 13.

    ๐Ÿ”‹ Features

    • ๐Ÿ #335 Add option to hide status bar when view is displayed in a window. As of iOS 13, windows can no longer cover the status bar. The only alternative is to set Config.prefersStatusBarHidden = true to hide it.
  • v7.0.0 Changes

    May 23, 2019

    ๐Ÿ”„ Changes

    • Swift 5
    • โœ‚ Remove deprecated APIs

    ๐Ÿ”‹ Features

    • #313 Improved sizing on iPad

    0๏ธโƒฃ > SwiftMessagesSegue provides default view controller sizing based on device, with width on iPad being limited to 500pt max. However, it is recommended that you explicitly specify size appropriate for your content using one of the following methods.

    1. Define sufficient width and height constraints in your view controller such that it sizes itself. ๐Ÿ— > 2. Set the preferredContentSize property (a.k.a "Use Preferred Explicit Size" in Interface Builder's attribute inspector). Zeros are ignored, e.g. CGSize(width: 0, height: 350) only affects the height.
    2. Add explicit width and/or height constraints to segue.messageView.backgroundView.

    Note that Layout.topMessage and Layout.bottomMessage are always full screen width. For other layouts, the there is a maximum 500pt width on for regular horizontal size class (iPad) at 950 priority. This limit can be overridden by adding higher-priority constraints.

    • #275 Add ability to avoid the keyboard.

    The KeyboardTrackingView class can be used to cause the message view to avoid the keyboard by sliding up when the keyboard gets too close.

    0๏ธโƒฃ > // Message viewvar config = SwiftMessages.defaultConfigconfig.keyboardTrackingView = KeyboardTrackingView()// Or view controllersegue.keyboardTrackingView = KeyboardTrackingView()

    ๐Ÿ‘€ > You can incorporate KeyboardTrackingView into your app even when you're not using SwiftMessages. Install into your view hierarchy by pinning KeyboardTrackingView to the bottom, leading, and trailing edges of the screen. Then pin the bottom of your content that should avoid the keyboard to the top KeyboardTrackingView. Use an equality constraint to strictly track the keyboard or an inequality constraint to only move when the keyboard gets too close. KeyboardTrackingView works by observing keyboard notifications and adjusting its height to maintain its top edge above the keyboard, thereby pushing your content up. See the comments in KeyboardTrackingView for configuration options.

    • #276 Add ability to hide message without animation
    • #272 Add duration for SwiftMessagesSegue
    • #278 Make pan gesture recognizers public
  • v6.0.2 Changes

    December 26, 2018

    ๐Ÿ”‹ Features

    • #262 Add event listeners to SwiftMessagesSegue.
  • v6.0.1 Changes

    November 11, 2018

    ๐Ÿ”‹ Features

    • ๐Ÿ’… #257 The .centered presentation style, which is a shortcut for a specific configuration of the PhysicsAnimation animator, provides a physics-based dismissal gesture where the view can be flung off screen. When the view goes out of the container view's bounds, the animator calls SwiftMessages.hide(), which animates the dim view away and concludes the message view's lifecycle. There is currently a small delay of 0.2s before calling hide().

    ๐Ÿ”ง This change adds the ability to configure the delay by customizing the animator. For example, to set the delay to zero, one would do:

    let animation = PhysicsAnimation()
    animation.panHandler.hideDelay = 0
    config.presentationStyle = .custom(animator: animation)
  • v6.0.0 Changes

    September 20, 2018

    ๐Ÿ”„ Changes

    • Migrate to Swift 4.2

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix #228 restore shared SwiftMessages scheme
  • v5.0.1 Changes

    September 03, 2018

    ๐Ÿ›  Fixes

    • โœ‚ Remove debug code that broke the view controller's section of the Demo app.
  • v5.0.0 Changes

    August 29, 2018

    ๐Ÿ’ฅ Breaking Changes

    • โœ‚ Removed support for iOS 8.

    ๐Ÿ”‹ Features

    • โž• Add support for modal view controller presentation using SwiftMessagesSegue custom segue subclass. Try it out in the "View Controllers" section of the Demo app. In addition to the class documentation, more can be found in the View Controllers readme.
    • โšก๏ธ Update nib files to be more visually consistent with iPhone X:
      • Introduce CornerRoundingView, which provides configurable corner rounding using squircles (the smoother method of rounding corners that you see on app icons). Nib files that feature rounded corners have their backgroundView assigned to a CornerRoundingView. CornerRoundingView provides a roundsLeadingCorners option to dynamically round only the leading corners of the view when presented from top or bottom (a feature used for the tab-style layouts).
      • Increased the default corner radius to 20. Corner radius can be changed by either modifying the nib file or
    • ๐Ÿ”ง Reworked the MarginAdjustable to improve configurability of layout margins.
    • โž• Add rubber-banding to the interactive dismissal gesture. Rubber banding is automatically applied for views where backgroundView is inset from the message view's edges.
    • โž• Added showDuration and hideDuration properties to the Animator protocol (with default implementation that returns nil). These values enable animations to work for view controller presentation.

    ๐Ÿ›  Fixes

    • #202 bodyLabel should set textAlignment to .natural
    • #200 Automatic Presentation Context Broken
    • ๐Ÿ›  Fix default value of TopBottomAnimation.closePercentThreshold