* Only show a spinner when opening the media viewer is slow
* Keep a sent local echo's page in the media viewer
* Fix the caption visibility.
---------
Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
Co-authored-by: Matthew Hodgson <matthew@matrix.org>
* remove the usage of the timeline kind override in favour of getting it properly from the timeline view model
* allow the previews to include gallery items filtered by the allowed types when started outside the gallery
sss
asa
* fix for actions not being forwarded to the timeline right
* pr suggestions
Tapping a gallery tile/row opens the existing media preview scoped to that gallery's attachments, paging between them. Introduces a typed MediaPreviewItemID (replacing the stringly-typed preview identifier) and a gallery-scoped TimelineMediaPreviewDataSource; the tap routes through TimelineInteractionHandler/TimelineViewModel. Non-previewable (.other) items are skipped without shifting the tapped index.
Co-authored-by: svetoslav.mitov <svetoslav.mitov@sportinno.com>
just use id instead of previewID
removed horrible multiline ternary
pr suggestions
remove redundant code
remove empty caption display + gallery uses the appropriate media timeline actions
* implemented checkSourceSafetyIfNeeded in the timeline media preview
* added a subtitle to the spinner when scanning and an animated drag gesture for the error and loading states
* pr suggestions
* pr suggestions part 2
* Rename PaginationState.timelineEndReached to PaginationState.endReached.
* Rename PaginationState to TimelinePaginationState.
Also renames PaginationStatus to PaginationState so that a TimelinePaginationState consists of the forward and backward pagination states.
* Add the empty state to SpaceScreen.
Only has 1 of the 2 buttons for now.
* Fix a bug where some files sizes were sent as 0.
* Make FileManger.sizeForItem(at:) a UInt.
The docs specifically say that FileAttributeKey.size returns an unsigned long long so I have no idea why we were returning a Double here…
* Add the maxMediaUploadSize property on ClientProxy.
* Use the maxUploadSize to set a target video size and to show a file too big error.
* Refactor media upload parameter order.
* Use the newly RoomInfo published PowerLevels; update permissions at the same time as the room info and avoid unnecessary async calls.
* Introduce a RoomInfoProxyProtocol and associated mock and move away from mocked SDK RoomInfos
* Bump the SDK to v25.06.23
* Expose new non-throwing methods for checking one's own user permissions
* Fix the unit and preview tests (except the TimelineMediaPreviewDetails for which simplified snapshots were generated)
* Converge on one single implementation for computing a room's avatar.
* Fix more unit tests
* Fix the TimelineMediaPreviewDetailsView snapshot tests
This reverts commit 9b6c819e611ad2fa3de2c34a4a7aa556fc9faadd.
---------
Co-authored-by: Doug <douglase@element.io>
* Use the new TimelineMediaPreview modifier on the room and pinned timeline screens.
* Use the same presentation logic for all timeline media previews.
* Fix a bug with the detection of the timeline end.
* Send pagination requests from the media preview screen.
* Add SwiftLint to the Danger workflow (it is no longer installed on the runner).
* Put SwiftLint back on all of the GitHub runners too.
* Set the function_parameter_count lint rule to 10.
* Make sure to clean-up any previews when the coordinator is done.
* Handle the viewInRoomTimeline action more appropriately.
* Revert back to UIKit for the presentation of the timeline media preview.
* Fix a presentation issue where the media is clipped until the animation finishes.
* Workaround for the preview controller replacing the info button when swiping.
* Use a self-sizing detent on the media info sheet.