* revert but also allows us to keep the existing SwiftUI implementation if we need it
* code improvement
* pr review
* FF is volatile
* message that communicates that is volatile
* swiftUI conversion + scroll to bottom
* remove unused
* back pagination implemented, however when a lot of elements are in the scroll the perfomance diminishes not sure what may be causing it
* scroll adapter solution
* way better
* works but height animation in cells are broken
* code improvement
* everything implemented
* rebase fix
* fix
* doc
* fix test compilation
* code improvement and animation improvement
* code improvement
* code improvements
* tests updated.
* pr comments
* better identifiers
* fix
* some PR comments
* pr comments
* Fix constant Create Room button animation on macOS.
* Allow right-clicking on timeline items to work again on macOS.
* Use inline media upload previews on macOS
This comes with the caveat that the previews are no longer interactive.
* I can't believe this works so well.
* code improvements
* we probably just need to change the TODO
* better naming
* done, there is only one small bug to fix
* fix
* this needs to be decided
* fixed the backpagination issue and improved the scroll to top gesture triggered by tapping on the clock (but won't work when I am at the bottom)
* fix
* animate only 2 seconds after the appearence
* scrolling is stable
* code improvement
* comment and removing code that is not necessary anymore
* feature flag
* comment
* better code
* the day divider ID is the timestamp itself as ISO
* Apply suggestions from code review
Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>
* format fix
---------
Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>
* Sort timetamps on timeline and show the date on the summary view
- Sort reaction aggregations on the timeline by count and then by most recent timestamp ascending(tagging new reactions on the end)
- Show the timestamp on the summary view and sort descending(newest at the top)
* Address comments.
- Fix ID case.
- Improve readability of components in body.
- Improve the comments that describe the sorting.
* add new asset for location, add logic for sharing user current location
* work on default zoom and auth for location
* add attribution button
* fix attribution button position, fix isSharingUserLocation
* Add NSLocationWhenInUseUsageDescription back
* Fix initial animation
* change map logo and attribution position
* Add annotation just in the setup
* add errors and alert for map vies
* location unit test
* add unit test for location sharing
* add changelog
* Update ElementX/Sources/Other/MapLibre/MapLibreMapView.swift
Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>
* add comments and minor parameters refactor
* Update ElementX/Sources/Screens/LocationSharing/StaticLocationScreenCoordinator.swift
Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>
* Update ElementX/Sources/Screens/LocationSharing/StaticLocationScreenViewModel.swift
Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>
* Sort assets
* Cleanup
* Cleanup
* Fix error localizations
* Fix tests
---------
Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>
Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>
* Add expand/collapse UI for reactions
- Adds a CollapsibleFlowLayout for controlling the layout
- Adds tests for this layout and some mocks for testing layouts generally
- Improves the rendering of the reaction buttons which were not pixel perfect
- Adds the UI for the expand collapse buttons including the count of hidden items in the collapsed state.
* Add comment for reactionsCollapsed binding.
* Remove Flow and simplify implementation
- Remove SwiftUI-Flow
- Add strings by importing from Localyse
- Remove count on expand button as requires GeometryReader and can cause loops
- Don't use GeometryReader for hiding reactions with opacity(just put them way off screen for now)
- Fix unit and UI tests
* Address PR comments
- use synthesized inits
- use rows rather than lines for naming flow layout
- other naming improvements
- reactions were already rendered in another ui test, removing my test on favour of those and updating the screenshots for those.
* Add a hard wall on back-pagination in encrypted rooms.
Until the app supports key backup, the history will never be decryptable.
* Fix initial display of the timeline table view.
* Update session verification banner strings.
* Add reaction summary view
* Add avatars and display names and flowlayout for reactions
- Add avatars to summary view
- Add display names to summary view
- Add flow layout to reaction buttons as per designs(long press on scolling buttons is difficult to achieve so prioritised this).
* Add and use SwiftUI-Flow for reaction layout.
* Correct Swift-Flow inclusion via xcodegen
* Remove own FlowLayout implementation and Fix unit tests
* Improve naming and correct spacing on summary view as per design.
* Fix safe area insets on summary view bottom sheet
* Scroll to selected reaction in the case that it is offscreen when the sheet is displayed.
* Add more reactions to UITests to ensure the new flow layout is displayed(wraps on to second line).
* Fix snapshot image.
* Address review comments.
* Use onLongPressGesture for reactions also to fix double actions bug and for consistency.
* Respect RTL languages.
* Fix unit test.
Squashed commits:
[d64bb3bb] Stop using the ServiceLocator directly in the ScreenTrackerViewModifier
[37c46ab9] Rename Analytics to AnalyticsService
[8852a371] #920 - Cleanup ServiceLocator usages
* Highlight own reactions
- Highlight own reactions on timeline and improve style.
- Highlight reactions on message bottom sheet only when it our own.
* Improve overlay background colours
* pin to new sdk version
* Remove the red used for debug.
* Fix padding, overlap and only display count if > 1.
- Fix reaction padding and overlap of reaction and bubble.
- Only display count if greater than 1.
- Return EmptyView for TimelineDeliveryStatus.cancelled.
* Fix colors as per design recommendations.
* Add Snapshot tests for reactions and documentation.
- Add UITests for the timeline including reactions.
- Add the reference snapshots.
- Add documentation on how to run snapshot tests and update the reference snapshots.
* Fix Package.resolved
* Add support for message forwarding
* Move the TimelineProvider within the RoomProxy to avoid it going out of sync and have it automatically register for timeline updates on init
* Implement single selection form button style for message forwarding
* Add searching and filter out the source room from the list
* Fixed emoji screen initial search bar height
* Add view models tests
* Add changelog
* Update strings
* Tweaks following code review
* Add support for the new RoomList API
Squashed commits:
[8c2625a] Re-enable invites
[339e59b5] Add automatic syncing restarts after entering the terminated state for whatever reason
[b5498e96] Reimplemented room list state management and usage
[8154b0cf] Fix visible rooms range setting after scrolling stops
[5155c44d] Hook up initial loading idicator and session verification banner to room list service states
[700a5a2e] Enable back room subscriptions, timeline listeners and unread notifications / counts
[9df383bc] Enable last messages and timestamps, they don't crash on release builds
[7c4da9da] Add back certain fields now that the "full room" is available
[9f6534a7] Adopt interfaces to new RoomList API, untested as requests don't go to the right URL
* Tweaks following code review
* Bump the RustSDK to v1.0.76-alpha
* is now possible to open the confirmation dialog and pass the transaction id
* task completed added some tests
* changelog
* title visibility set to .visible
* added the read receipt into the code
* fixed some things lost during merge
* implemented the status view to be always at the trailing side
* preview code for better testing
* removed timelineStyle modifier
* removed also the group style
* added some UI tests for the read receipts
* Fixes#975 - Update editing message UI
* Fixes#976 - Update reply composer mode UI to include message being replied to
* Use different icon corner radii in the timeline reply view depending on its placement
* web-like solution
* not super polished but working implementation
* polishing the spacing and sizes
* removing unused code
* code improvements
* adding a test case in the preview for RTL
* addressing some PR comments
* added some tests and polished the code
* better naming
* code improvement
* RTL fix
* Revert "RTL fix"
This reverts commit 14e4468a5358769daa57891f4991e9e32da1c985.
* better RTL fix
* updated UI tests
* separated some files
* addressed some PR comments
* some more tests