2.2.0
2.2.0 - 2023-12-10
Added
- New Swift-native APIs. These achieve more with less, as I can make proper use of e.g. optionals and default parameters.
Changed
- Converted source code to Swift (with backwards compatible objc translation)
- This lets me remove the hacks around multi-language targets
(Click the 2.2.0 version number for a full diff compared to 2.1.2.)
2.1.0
This release note includes all changes from 2.0.6 to 2.1.0.
2.1.0 - 2023-10-31
Added
- A swift-only
presentSwiftView()
presentation helper to easily present SwiftUI views - A new
presentWithCustomView:sizingController:
API for additional control on the sizing, utilized by the above swift API
Changed
- Breaking change: A rewritten Swift API for better Swift ergonomics, Obj-C unaffected.
- Reworked layouting & sizing of the notification
- Fix the presentation, when no statusbar is visible (#130)
- Fix pill position with flexible pill heights across devices (#122)
- Fix the .fullWidth presentation on dynamic island devices
- Fix the .fullWidth style presentation in landscape for all devices
- Fixed Swift package for Xcode 15 compatibility
- Fixed 14 Pro / Dynamic Island banner positioning
(Click the 2.1.0 version number for a full diff compared to 2.0.6.)
2.0.6
This release note includes all changes from 2.0.0 to 2.0.6.
2.0.6 - 2022-06-27
Added
- Subtitle support (customizable)
- Generic left view support (think icons, profile pictures, etc.), customizable layout
- Explicitly customizable ActivityIndicator color
- Prevent dismissal during user interaction (hold or pan), configurable.
- Ability to disable Tap-To-Hold behavior
- Added rubber-banding effect when panning down on notification (.pill style only)
- Use pill height as minimum pill width.
- Overhauled all public API documentation & converted it to the docc syntax
Changed
- Renamed:
JDStatusBarStyle
->JDStatusBarNotificationStyle
& sub-style classes. (Note: If you initalize styles in your codebase this is a breaking change. The current API design doesn't expect users to initialize styles, but it is possible to do so.) - Renamed private classes and enums and their swift naming for more consistency.
- Remove
.centerWithTextUnlessSubtitleExists
, default to.centerWithText
. - Changed Swift Package
swift-tools-version
to 5.3 - Added
.spi.yml
for better Swift Package Index integration
Fixed
- WindowScene inferred automatically (no need to set it explicitly anymore)
- Disable drag-to-dismiss during dismiss animation
- Tweaked default style pill size & positioning
- Don't clip text to bounds
- Fix failing animation on presentation calls during ongoing presentation
- Fix progress bar sometimes not showing up
(Click the 2.0.6 version number for a full diff compared to the major release of 2.0.0.)
2.0.0
2.0.0 - 2022-06-19
Big release. Many bugfixes, expanded public API, new features. Modernized outdated codebase - more or less a full rewrite. This is a breaking API release. Existing code using previous versions of this library will require some adjustments. Those adjustments should be simple though - mostly new API naming.
Added
- A pill shaped layout (original layout available as "full-width" layout)
- Drag-to-dismiss + general support for user interaction on the notification
- Easy progress bar animation through public API
- Custom view presentation
- Presentation when no status bar is visible
- More robust layouting of text & activity indicator
- Support for apps that use window scenes
- Explicit Swift naming for all public APIs + Swift example project
- Full fledged style editor in example project + config export
Fixed
- Many bug fixes
Changed
- Non-notch device layout matches notch device layout now
- Included styles moved to explicit API, instead of
styleName
API JDStatusBarView
internals no longer exposed, custom view APIs added instead.
(Click the 2.0.0 version number for a full diff compared to the previous version.)