Releases: nalu-development/nalu
Releases · nalu-development/nalu
10.7.5
10.7.4
- Fix
TabBarViewnot inheriting global styles orAppThemeBinding - Additional
VirtualScrolliOS memory leak protection
Note: I'm still experiencing leaks but only while usingStaticResourcewhich leads me to thing that there may be some issue within MAUI itself, I'll continue investigating.
👨🏼💻 Contributors
10.7.3
🧰 Maintenance
- Fix
NSUrlBackgroundSessionHttpMessageHandlerCancellationTokennot being effective
👨🏼💻 Contributors
10.7.2
🧰 Maintenance
- Fix
NaluTabBarpreventing proper cross-section navigation with stack replacement
👨🏼💻 Contributors
10.7.1
🧰 Maintenance
- Adding workarounds trying to prevent a non-reproducible random crash on iPads
NSInternalInconsistencyException Reason: Preferred size is ZERO for auxiliary item <NSCollectionLayoutBoundarySupplementaryItem 0x145c75740; name=(null); size={.containerWidthFactor(1), .estimated(64)}; edgeSpacing=<leading=<NSCollectionLayoutSpacing - 0x130114040: fixed:0>; top=<NSCollectionLayoutSpacing - 0x130114040: fixed:0>; trailing=<NSCollectionLayoutSpacing - 0x130114040: fixed:0>; bottom=<NSCollectionLayoutSpacing - 0x130114040: fixed:0>; outsets=@{0,0,0,0}>; identfier=4DD3F5DD-45FA-42C4-A9AC-F1518C63778C; contentInsets={0,0,0,0}> in container <_UICollectionLayoutContainer: 0x145c38880 contentSize={0, 915}; contentInsets={0, 0, 0, 0}}> - Prevent potential mid-animation crash from happening:
System.ArgumentOutOfRangeException in object VirtualScrollNotifyCollectionChangedAdapter<ReadOnlyObservableCollection<IBundleItemBaseViewModel>>.GetItem(int, int)
👨🏼💻 Contributors
@albyrock87, @dependabot[bot] and dependabot[bot]
10.7.0
🧰 Bug fixes
- Prevent a potential crash on iOS VirtualScroll when the user tries to drag a non-draggable
VirtualScroll - Fixes
VirtualScrollScrolledEventArgsnever reaching1.0scroll percentage (#126)
✨ Improvements
- VirtualScroll: Enhanced
VirtualScrollScrolledEventArgswith new properties for better scroll handling:- Added
ViewportWidthandViewportHeightto get the viewport dimensions - Added
RemainingScrollXandRemainingScrollYto easily detect proximity to scroll boundaries - useful for infinite scroll scenarios (#126) - [BREAKING CHANGE]
ScrollPercentageXandScrollPercentageYnow return1.0(instead of0.0) when content is not scrollable, which better represents "fully scrolled" state (#126)
- Added
👨🏼💻 Contributors
10.6.2
🧰 Maintenance
- Fix
VirtualScrollon iOS causing crashes under some specific layout / data source changes conditions - Fix
NaluTabBar-enabled Shell pages not resizing correctly upon orientation change or iPad free-window resizing - Fix
VirtualScrollcarousel layout on iOS not snapping automatically during window resize
👨🏼💻 Contributors
10.6.1
🚀 New Features
- BETA Windows Platform support for
VirtualScrollby @albyrock87 (#122)
🧰 Maintenance
- Fix
NaluTabBardescendants window insets detection on Android by @albyrock87 (https://github.com/nalu-development/nalu/discussions/124#discussioncomment-15632865)
👨🏼💻 Contributors
10.6.0
Release Notes
🎠 Carousel Layout Support
VirtualScroll now supports carousel layout!
Use HorizontalCarouselVirtualScrollLayout or VerticalCarouselVirtualScrollLayout to create full-screen, page-snapping carousels.
Features:
- Items automatically fill the available viewport space
- Smooth page snapping behavior
- Two-way
CurrentRangebinding to track the current visible item CurrentRangecan be bound tointfor simple use cases
Example:
<vs:VirtualScroll ItemsLayout="{vs:HorizontalCarouselVirtualScrollLayout}"
vs:CarouselVirtualScrollLayout.CurrentRange="{Binding CurrentIndex}">
<!-- ItemTemplate -->
</vs:VirtualScroll>📜 Enhanced Scroll Events
New scroll lifecycle events for better control over scroll behavior:
OnScrollStarted/ScrollStartedCommand- Fired when user begins scrollingOnScrollEnded/ScrollEndedCommand- Fired when scrolling completes (after deceleration)
These events are particularly useful for carousel layouts to update the current page indicator.
🔧 Improvements
VirtualScrollRangenow supports implicit conversion to/fromintfor simpler carousel index binding- Improved layout update handling for better carousel synchronization
- Fixed an issue on Android where removing all the items from a flat list and adding a new one was causing an empty item to appear right after leading to further unwanted behaviors
📚 Documentation
Updated documentation with comprehensive carousel layout examples and scroll event usage. See the VirtualScroll documentation for details.
10.5.2
🧰 Bug fixes
- Fixes a regression caused by AOT compatibility where
IEnteringAware<TIntent>andIAppearingAware<TIntent>where not being invoked when passing aTwhich inherits fromTIntent34b03e3