Skip to content

3.1.3

Latest

Choose a tag to compare

@LeoNatan LeoNatan released this 29 Jul 17:38
8959d01
  • Significant optimizations to reduce view redrawing
  • Modern PopupItem was extended to include leading and trailing buttons variants (in addition to the previous APIs)
  • Introduces a new onPopupBarGeometryChange() modifier for monitoring changes to popup bar geometry and, for example, updating the buttons or text depending on interface idiom or effect bar size.

This is a very big release, with many improvements.

Mac iPad

  • Many layout improvements to the popup bar and how it handles the countless variations of bar buttons
  • Fixes to complex RTL layouts
  • Catalyst and iPad are now much better supported, with layouts that were previously not possible
    • The leading and trailing APIs have been undeprecated and it is now possible to place leading and trailing buttons on any bar style
    • The LNPopupItem.barButtonItems will continue to place items at the trailing edge; however, if you were relying on the previous behaviur, where LNPopupItem.leadingBarButtonItems would be placed in the trailing items on floating bars, this is no longer the case
  • If too many buttons are placed in a bar item and there is no space for the image and/or titles, the popup bar will hide elements to make space available for buttons
    • This is especially important in freely resizeable environments, such as iPads, Mac windows and … future iPhone devices
    • Set your popup bar content and buttons depending on available space in your scene
  • Escape key now closes the popup in most scene environments
    • Some more complex scenes cannot be supported since the popup might be opened in a controller that is not in the responder chain
    • In these cases, route the key presses yourself
  • Catalyst now has first-class support
  • New functionality has been introduced to better support split view controllers on large devices
    • In supported NavigationSplitView configurations, the system will attempt to avoid the primary split and move the popup bar out of the way. This is to better supprot environments where a popup is presented over the NavigationSplitView
      • The popup will continue to open over the entire split view controller’s bounds
      • Only .navigationSplitViewStyle(.balanced) is currently supported
      • In unsupported configurations, behavior remains as before
    • The system will now open the popup over the entire split view, rather than only within the specific section that has presented the popup.
      • The popup bar will remain within the containing view controller’s bounds
    • The new functionality can result in a similar looking behavior from the user’s standpoint, but offer different benefits and tradeoffs; consider first presenting your popup over the NavigationSplitView