feat: add thumbnails to wire cells upload previews - WPB-19266#3440
Merged
samwyndham merged 10 commits intodevelopfrom Aug 14, 2025
Merged
feat: add thumbnails to wire cells upload previews - WPB-19266#3440samwyndham merged 10 commits intodevelopfrom
samwyndham merged 10 commits intodevelopfrom
Conversation
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR implements thumbnail generation for image and video assets in the Wire cells attachments carousel, replacing the placeholder nil thumbnail values with actual generated thumbnails using QuickLook.
- Adds thumbnail generation capability to
AttachmentsCarouselViewModelusing aThumbnailGeneratorprotocol - Updates the constructor to use dependency injection instead of hardcoded empty arrays
- Adds comprehensive unit tests for the thumbnail generation functionality
Reviewed Changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| ConversationInputBarViewController.swift | Updates constructor call to use parameterless initializer |
| AttachmentsCarouselViewModelTests.swift | Adds comprehensive unit tests for thumbnail generation scenarios |
| WireCellsDraft+Fixture.swift | Extends test fixture to support file type and size parameters |
| UIImage+Fixture.swift | Adds test fixture helper for creating UIImage instances |
| AttachmentsCarouselViewModel.swift | Implements core thumbnail generation logic with caching and async generation |
| AttachmentsCarouselItem.swift | Updates model to support Equatable/Sendable for testing and concurrency |
| ThumbnailGenerator.swift | Defines protocol and QLThumbnailGenerator extension for thumbnail generation |
.../WireMessagingUI/WireCells/Components/AttachmentsCarousel/AttachmentsCarouselViewModel.swift
Outdated
Show resolved
Hide resolved
.../WireMessagingUI/WireCells/Components/AttachmentsCarousel/AttachmentsCarouselViewModel.swift
Outdated
Show resolved
Hide resolved
.../WireMessagingUI/WireCells/Components/AttachmentsCarousel/AttachmentsCarouselViewModel.swift
Outdated
Show resolved
Hide resolved
Contributor
Test Results1 999 tests 1 972 ✅ 2m 14s ⏱️ Results for commit ec45c23. ♻️ This comment has been updated with latest results. |
jullianm
approved these changes
Aug 8, 2025
Contributor
jullianm
left a comment
There was a problem hiding this comment.
Looks good, left one question about thumbnail generation error handling on the UI side
.../WireMessagingUI/WireCells/Components/AttachmentsCarousel/AttachmentsCarouselViewModel.swift
Show resolved
Hide resolved
johnxnguyen
approved these changes
Aug 11, 2025
Base automatically changed from
feat/upload-draft-image-preview-WPB-17604
to
develop
August 14, 2025 09:06
01bc21c to
ec45c23
Compare
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.
Issue
This PR adds thumbnails to the previews when uploading assets to wire cells
ScreenRecording_08-08-2025.08-44-19_1.mov
Testing
Run unit tests
Checklist
[WPB-XXX].