feat: prepare media date navigation by month - #4199
Merged
Merged
Conversation
Replace the media date label with a button and index the first media item for each year and month. Signed-off-by: Marino Faggiana <[email protected]>
marinofaggiana
marked this pull request as draft
July 22, 2026 05:27
Signed-off-by: Marino Faggiana <[email protected]>
Signed-off-by: Marino Faggiana <[email protected]>
Signed-off-by: Marino Faggiana <[email protected]>
Use a compact custom sheet and apply date selections as the picker changes. Signed-off-by: Marino Faggiana <[email protected]>
Signed-off-by: Marino Faggiana <[email protected]>
Remove the media header gradient and activity indicator, and format the visible date range as a navigation bar item. Signed-off-by: Marino Faggiana <[email protected]>
marinofaggiana
marked this pull request as ready for review
July 22, 2026 09:39
marinofaggiana
marked this pull request as draft
July 22, 2026 13:51
Use safe column counts and collection view bounds, calculate content height across all columns, and rebuild accurate union and footer geometry. Signed-off-by: Marino Faggiana <[email protected]>
Refresh the media layout when pinch gestures change column counts, use hydrated metadata for previews, and guard asynchronous viewer selection against reused cells. Signed-off-by: Marino Faggiana <[email protected]>
Add month and year section headers, update section-aware navigation and selection, and show media totals only in the final section footer. Signed-off-by: Marino Faggiana <[email protected]>
Display month and year in a reusable media section header while preserving the existing empty-state header. Signed-off-by: Marino Faggiana <[email protected]>
Increase section header spacing and add leading padding for clearer media grouping. Signed-off-by: Marino Faggiana <[email protected]>
Guard media data loading against cancellation and inactive views, and build media sections more efficiently. Signed-off-by: Marino Faggiana <[email protected]>
Revalidate the active media view before updating the collection view. Signed-off-by: Marino Faggiana <[email protected]>
Build compact metadata and sections in a single pass, and update affected sections directly when removing items. Signed-off-by: Marino Faggiana <[email protected]>
Signed-off-by: Marino Faggiana <[email protected]>
Signed-off-by: Marino Faggiana <[email protected]>
Prevent outdated search and data source tasks from updating the media view after cancellation or account changes. Signed-off-by: Marino Faggiana <[email protected]>
Avoid retaining the media controller in asynchronous tasks and load the data source directly after delegate registration. Signed-off-by: Marino Faggiana <[email protected]>
Fetch and normalize compact media metadata directly from Realm, filtering Live Photo videos before constructing media sections. Signed-off-by: Marino Faggiana <[email protected]>
Increase the minimum item width for collection and media grids and simplify media placeholder sizing. Signed-off-by: Marino Faggiana <[email protected]>
Use compact media metadata to rebuild the preview cache efficiently. Signed-off-by: Marino Faggiana <[email protected]>
Ensure the cache loading flag is reset on every exit path. Signed-off-by: Marino Faggiana <[email protected]>
Cache previews of all supported sizes and load media thumbnails asynchronously on demand. Signed-off-by: Marino Faggiana <[email protected]>
Centralize cache key creation, clarify the cache size setting, and safely capture the cache in lifecycle observers. Signed-off-by: Marino Faggiana <[email protected]>
Signed-off-by: Marino Faggiana <[email protected]>
Reset and rebuild the cache window when the layout, account, or media data changes. Signed-off-by: Marino Faggiana <[email protected]>
Track missing image keys within each cache session and clear them alongside the image cache. Add cache-window diagnostics for hits, disk reads, missing images, and cancellations. Signed-off-by: Marino Faggiana <[email protected]>
Improve header readability with white text and a shadow, and clear reused header titles. Signed-off-by: Marino Faggiana <[email protected]>
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.
Summary
This PR introduces a major refresh of the Media view, improving navigation, performance and overall user experience.
Navigation
Performance
UI
Overall these changes provide smoother scrolling, faster loading, more responsive updates and much easier navigation through large media libraries.
馃 AI (if applicable)