Skip to content

v0.3.0

Latest

Choose a tag to compare

@lynnswap lynnswap released this 17 Jul 08:43
f318ae6

FloatingAccessoryKit v0.3.0

Breaking Changes

  • TabBarAccessoryController is now owned by its UITabBarController. Direct TabBarAccessoryController(tabBarController:) construction and setContent(_:position:animated:) have been removed in favor of floatingAccessoryController and explicit content, position, visibility, and removal operations.

New Features

  • Add performContentUpdate(animated:_:) to mutate and remeasure installed content in one UIKit update transaction, with UIKit timing and Reduce Motion support.
  • Add setTabBarHidden(_:animated:) as the iOS 18 coordination boundary for tab bar and overlay visibility.

Improvements

  • Preserve requested position and visibility when content is removed or absent, and detach removed consumer views synchronously before any snapshot animation completes.
  • Automatically remeasure layout-driven content-size changes while keeping installed content and presentation identity stable.

Bug Fixes

  • Fix dynamic accessory sizing across iOS 18 and iOS 26, including intrinsic-only views, system-proposed native heights, maximum-width fitting, and animated same-view size changes.

Migration Notes

  • Replace direct construction with tabBarController.floatingAccessoryController.
  • Replace setContent with setContentView, setPosition, setHidden, or removeContent.
  • Wrap explicit layout-affecting content mutations in performContentUpdate.
  • On iOS 18, call the accessory controller's setTabBarHidden instead of calling UITabBarController.setTabBarHidden directly.

Documentation

  • Add a v0.3.0 migration guide and updated usage examples.

Full Changelog: v0.2.0...v0.3.0