8000 Release Improved Overlay Management, New Extension, and Documentation Cleanup · Aeastr/Portal · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Improved Overlay Management, New Extension, and Documentation Cleanup

Compare
Choose a tag to compare
@Aeastr Aeastr released this 23 Apr 18:05
· 50 commits to main since this release

This release brings improvements to the Portal library’s architecture, API clarity, and documentation, while also cleaning up assets and focusing platform support.


Overlay Management Refactor

  • Overlay window logic has been refactored for better reliability and lifecycle awareness.
  • The overlay is now properly added and removed as the app’s scene becomes active or inactive, preventing resource leaks and ensuring consistent behavior.
  • Overlay management has been moved to a dedicated manager for safer integration.

New .portalContainer() Extension + hideStatusBar

  • Introduced a new .portalContainer(hideStatusBar:) view extension, allowing you to easily wrap any view in a portal container with a single modifier.
  • Both the extension and the PortalContainer struct now support an optional hideStatusBar parameter, giving you control over status bar visibility when the overlay is active.

API and Documentation Improvements

  • All public APIs, including PortalContainer, .portalContainer, .portalSource, .portalDestination, and .portalTransition, now have DocC comments.
  • Documentation for wrapper structs and modifiers has been clarified and made consistent, with clear separation between internal types and public-facing modifiers.
  • Usage examples in the README have been updated for accuracy and clarity, including step-by-step guidance.
  • Parameter documentation is now consistent across the codebase and README.

Asset Cleanup

  • Unused and outdated assets have been removed, and present ones optimized, reducing package size and improving maintainability.

Platform Support Update

  • macOS support has been temporarily removed to focus on iOS stability and polish. All documentation and README references to macOS have been removed for now.

Other Notable Changes

  • Improved code structure and organization for maintainability and future extensibility.
  • Cleaned up and clarified feature lists in the README, removing overly markety language and ensuring technical accuracy.
  • Ensured all UIKit operations are performed on the main thread for thread safety.

Thank you for using Portal! Please report any issues or feedback to help us continue improving the library.

0