* Integrate emojibase
* pin emojibase to version rather than revision
* Log error in case of failed loading of emojis from emojibase.
* Update Package.resolved
* Fix tests and bindings version
* 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 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.
- Add an animation to long press on messages.
- Make emojis bigger on the reactions picker screen.
- Remove quote menu action.
- Fix emoji picker handle overlapping focused search field.
- Update launch, splash and onboarding screens.
- Use elevation tokens in Forms.
- Move the cancel button on the Start Chat flow.
* added map sdk with basic permission and static view
* add location annotation
* create dedicate service for MapTiler URLs
* manage error for MapLibre component
* add error to new Alert item
* Add background app refresh support
* Cleanup: move methods around so delegates are implemented above privates and privates are ordered better
* Add discardableResult on the userSessionStore's refreshRestorationToken
* Structured logging support
* Bump the SDK, fix breaking changes
* Enabled more logging of timeline diffs
* Keep only source file last path components in logs
* Bump the SDK, tweaks following code review
* WIP, added support for receiver id and managed a way to store the app router state
* WIP, added support for receiver id and managed a way to store the app router state
* Notification Manager is now becoming the UNUserNotificationDelegate ASAP
* code improvements + changelog
* fixed Unit Tests
* pr suggestions
- room composer contextual menu for selecting source
- coordinator for presenting the different sources
- system picker handling and URL passback
- file preview after selection
- feature flag
* updating dependencies
* minor version pinning
* update completed and also added a tool that checks for outdated swiftpm packages
* changelog
* DTCoreText uses exact version
* minor version for analytics
* pushing OutdatedPackages
* package.swift for the repo also using upToNextMinor
* fixing a typo
* Update Tools/Sources/OutdatedPackages.swift
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
* Update Tools/Sources/SetupProject.swift
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
* removing unused comment
* removed trailing comma
---------
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
* work in progress, was able to generate a mock for the RoomProxyProtocol, I'll try if I can swap the mock we have with this one
* removing swiftformat from generated
* added the disable of swiftlint directly into the .stencil
* testing if danger still complains
* improved the stencil
* session verification controller proxy using auto mockable
* BugReport mocks and tests added
* changelog
* fixing a typo
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
* fix typo in the test
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
* removing the Protocol word from the type if present
* using extension in place of a subclass
* removed unused imports
* improved the yielding code
* moved Sourcery files
* stencil master
---------
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
Squashed commits:
[42e45fc] Even more tweaks following code review
[5dcd5be] Add swift-algoritms and switch bubbling detection to its `chunked` method
[4ac70ed] Move the groupBy implementation to Collection instead of Array
[6aeffc3] Tweaks following code review
[0ca5ac2] Bubbles working again, grouping computed closer to the UI level
[3a66030] Refactor how timeline items are built in the RoomTimelineController
[57d51e9] Remove grouping from timeline items
[8608950] Remove the RoomTimelineViewFactory, update the GroupRoomTimelineView
[9e52e61] Add array grouping extension, unit tests and switched the timeline controller to it
[7d213a1] First attempt
[90bb1d7] Remove now unused `RoomTimelineController` `updatedTimelineItem` calback
* Store and reuse room list placeholder avatars and last messages
* Cache and reuse HomeScreenRooms
* Reduce RoomSummaryProvider diff collection time
* Promote more logs to info
* Slighty tweak RustTracing to make it easier to configure
* Move TimelineProvider and RoomTimelineController item processing to background queues
* Prevent the timeline from stopping an ogoing decelerating scroll when starting backpaginating
* Increase integration tests time limits again as they're still ocasionally failing
* Fixed NavigationRootCoordinator name in logs
* Refactor UI tests hierarchy and introduce new userFlowScreen
* Introduce a RoomTimelineControllerFactory so that it can be mocked in the UserFlow UI tests
* Start using a mock timeline controller for the UserSession flows
* Remove the WeakDictionary dependency and replce it with a plain NSMapTable in the BackgroundTaskService
* Allow multiple UITests screenshots per screen
* Prevent the view hierarchy changing when taking screenshots
* Add UserSessionScreen UI tests
* Fix label triaging workflow project identifier as per vector-im/element-ios/pull/7150
* Fix settings screen tests
* Fix roomPlainNoAvatar and roomEncryptedWithAvatar UI tests
* Fix modal server selection screen UI tests
* Fix bug report and login screen UI tests
* Fix text typing missing characters on UI tests
* Fix sliding sync configuration on integration tests
* Stop crashing if not finding a particular room through the MockClientProxy
* Fixes#276 - Rebuilt room timeline:
- Removed the need for the ListCollectionViewAdapter
- Rewrote the TimelineItemList without using introspection
- Added ReversedScrollView for laying out items at the bottom/trailing
- Rewrote TimelineProvider diffing through CollectionDifference (similar to the RoomSummaryProvider)
- Added back `scrollDismissesKeyboard` behavior
- Various other tweaks and fixes
- Fixed various warnings:
- removed async AttributedStringBuilder as AttributedString is non-sendable, made the RoomTimelineItemFactory synchronous
- removed unused virtual timeline items
- removed unused isOutgoing property from the FormattedBodyText
* Make TimelineItemContextMenuActions indentifiable and specify contextMenu identifiers
* Bump the matrix-rust-components-swift to v1.0.16-alpha
* Add changes file and changelog contribution guide
* Fix attributed string builder unit tests
* Set a proper user agent
* Add fallback when UA comes out nil
* Remove unused Bundle extension
* Return nil when asciification fails
* Add whitespace handling and further emoji test case
* Explicitly check if string is already in ASCII
* Rename factory to builder
* Use allSatisfy instead of reduce
* Use key path syntax