feat(core): Modernized data loading, performance optimizations, and new .particles effect#19
Open
iTarek wants to merge 7 commits into1998code:mainfrom
Open
feat(core): Modernized data loading, performance optimizations, and new .particles effect#19iTarek wants to merge 7 commits into1998code:mainfrom
.particles effect#19iTarek wants to merge 7 commits into1998code:mainfrom
Conversation
…h Swift Concurrency, and adopt Sendable for models
…improve version string formatting
…ve body text line limits in sheets
…et version labels
…Canvas and TimelineView implementation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This PR introduces several significant performance improvements, Swift Concurrency modernization, UI refinements, and fully resolves Arabic RTL localization issues. It also adds a new customizable visual effect and makes the header customizable.
Key Changes
⚡️ Performance & Concurrency
loadData()to parse JSON asynchronously viaTask.detachedand Swift Concurrency. This prevents the UI from freezing on presentation, allowing theProgressViewto appear instantly.VmodelandModelnow conform toSendable, making them safe for concurrent operations.drawingGroup): Fixed severe lag when opening/closing the history sheet. The lag was caused byNoiseViewrendering 100,000 Canvas dots on the main thread. Reduced the noise density to 5,000 dots (visually identical) and isolated.drawingGroup()strictly to the noise layer to allowignoresSafeAreato function correctly globally.✨ New Features
showBuildparameter to theSwiftNEWinitializer (defaults totruefor backward compatibility). App developers can now choose to hide internal build numbers in the UI..particlesEffect: Added an alternative floating rainbow particles effect (FloatingParticlesView) powered byTimelineViewandCanvas.SnowfallViewfrom a heavy@Statearray +Timerto a highly performantTimelineView(.animation)+Canvasimplementation. Removed hit-testing and hid it from VoiceOver.🌐 Localization & UI Fixes
"Version %@")..lineLimit(2)truncation on release notes body text.