Commit Graph

632 Commits

Author SHA1 Message Date
Mauro dce94e7d7d Tapping on room link (with roomID) (#1853)
* room linking

* chagelog
2023-10-04 15:47:57 +02:00
Mauro 355535cd75 Handle tap on user mentions (#1850)
* user mention routing implemented

* more tests

* better naming

* fixed a test
2023-10-03 10:11:05 +02:00
Mauro 7124f24d7c supported versions (#1848) 2023-10-03 10:10:38 +02:00
Doug 56a9820ded Add remaining iOS 17 introspections. (#1806)
* Update compound.

* Update Ruby gems.

* Skip smudging in Fastlane.

* Link Git LFS for Xcode in setup-project.
2023-09-29 17:29:27 +01:00
Mauro 6bc5a440b2 Fixed a bug that prevented the mentions to be shown as plain text in the room list cell (#1835)
* fix a bug that made the room list not render mentions as plain text

* better naming
2023-09-29 14:49:20 +00:00
Doug ec3f5d425e Use a universal link for the OIDC callback. (#1681) 2023-09-28 14:12:57 +01:00
Andrew Breckenridge 718e01f3bc Application: pass AppDelegate in initializer, instead of using singleton 2023-09-28 12:35:37 +03:00
Mauro 7bde419e85 Pill View (#1797)
* provider can now check the current session

* More testable code

* created the test condition

* it works but not always not sure why, need to dig deeper

* sadly we need to use textkit 1 to solve this issue

* removed developer option screen test

* this experimental solution kinda works but I need a way to pill recomputation is weird

* format

* display improvement

* better and faster solution

* pilished the code

* better coloring

* swift format

* just need to solve the caching issue

* fix caching issue

* tests done!

* changelog

* pr comments addressed

* all pr comments addressed

* docs

* line lenght

* updated tests and fixed a parsing permalink issue

* MentionBuilder

* pr comments

* swiftformat

* code blocks should not have links

* Update ElementX/Sources/FlowCoordinators/RoomFlowCoordinator.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* Update ElementX/Sources/Services/Client/ClientProxy.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* Update UnitTests/Sources/AttributedStringBuilderTests.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* Update ElementX/Sources/UITests/UITestsAppCoordinator.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* Update ElementX/Sources/Other/Pills/PillAttachmentViewProvider.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* Update ElementX/Sources/Other/Pills/MentionBuilder.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* pr comments

* swiftformat

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-09-27 17:27:07 +00:00
Stefan Ceriu 68ea9acb36 Prevent ElementX from intercepting links that it can't handle. Redirect them to the system browser 2023-09-26 14:03:26 +03:00
Stefan Ceriu 44c6da7ce6 Only allow https call links to be passed through the custom app scheme 2023-09-25 11:04:54 +03:00
Nicolas Mauri b8e5611c00 Add voice message rendering to the timeline (#1776) 2023-09-21 14:36:21 +00:00
Stefan Ceriu f95331d3a6 Use a different scheme for Element Call in the form of io.element.call:/?url=some_url 2023-09-19 18:11:09 +03:00
Stefan Ceriu fe711a9a40 Change user display name and avatar (#1718)
* Fixes #1715, #1716 - Add new user profile editing screen

* Bump SDK, adopt new `client.removeAvatar()` method

* Address PR review comments
2023-09-15 16:20:33 +03:00
Doug 64d5ba7a69 Enable OIDC token refresh in the NSE. (#1711)
Update the SDK and handle API changes.
2023-09-15 09:01:09 +00:00
Alfonso Grillo 058fe79f25 Move RTE feature flag to settings (#1703)
* Update matrix-wysiwyg-composer-swift to 2.10.1

* Delete MessageComposerTextField

* Always use rte composer

* Fix corner radius

* Cleanup
2023-09-14 13:10:42 +02:00
Stefan Ceriu a4e5e4f0ed Switch callbacks to combine (#1710)
* #750 - Convert the SoftLogoutScreen to combine

* #750 - Convert the UserSessionFlowCoordinator to Combine

* #750 - Convert the AnalyticsPromptScreen to Combine

* #750 - Convert the LoginScreen to Combine

* #750 - Convert the ServerSelectionScreen to Combine

* #750 - Convert the EmojiPickerScreen to Combine

* #750 - Convert the HomeScreen to Combine

* #750 - Convert the MediaUploadPreviewScreen to Combine

* #750 - Convert the OnboardingScreen to Combine

* Rename `Onboarding` to `OnboardingScreen`

* #750 - Convert the ReportContentScreen to Combine

* #750 - Convert the RoomDetailsSscreen to Combine

* #750 - Convert the RoomMemberDetailsScreen to Combine

* #750 - Convert the RoomMembersListScreen to Combine

* #750 - Convert the SessionVerificationScreen to Combine

* #750 - Convert the SettingsScreen to Combine

* #750 - Convert the AdvancedSettingsScreen to Combine

* #750 - Convert the DeveloperOptionsScreen to Combine

* Fix the unit tests

* Use .sink action and the same cancellables constructor everywhere

* Cleanup cancellables when setting up tests
2023-09-14 12:53:33 +03:00
Stefan Ceriu 761d508ae5 Fixes #1699 - Introduce a new advanced settings screen (#1700) 2023-09-14 08:37:42 +03:00
Nicolas Mauri 8268ecc036 Remove notification settings feature flag (#1693) 2023-09-13 12:05:32 +00:00
Stefan Ceriu ee4040141d Top level deeplink handling (#1660)
* Handle link opening on the top most levels and prepare for percolating them throughout the app
* Add support for a custom app scheme
* Add specific AppRoute parsers.
* Integrate custom scheme in the AppRouteURLParser
* Switch to `element://call` and cleanup route parsing
2023-09-11 12:31:31 +03:00
Doug ae24ba19da Add missing contacts field in OIDC configuration. (#1662) 2023-09-08 16:28:10 +00:00
Stefan Ceriu dedfb9394f Enable RUST_BACKTRACE by default 2023-09-08 15:27:54 +03:00
Stefan Ceriu fad608cd34 Adopt the new room list service syncIndicatorListener 2023-09-07 13:10:19 +03:00
Stefan Ceriu 62b6cd598f Generic element call link support (#1643)
* Remove swift-url-routing and replace it with a custom implementation. It fails parsing the fragments in app.element.io links and it doesn't bring any value
* Add handling for opening generic element call links
* Add applinks support for call.element.io
* Enable VoIP and Audio playback background modes
2023-09-07 12:06:18 +03:00
Stefan Ceriu e9a945cfe4 Fixes #1573 - Retract all notifications and app badges when signing out 2023-09-06 16:41:59 +03:00
Doug b9279ce709 Initial skeleton for Universal Link handling. 2023-09-06 10:07:22 +03:00
Stefan Ceriu 1a12c729de Fixes #617 - Prevent navigation bar breaking when backgrounding the app froma a split view 2023-09-06 09:49:38 +03:00
Alfonso Grillo 9b313b814e Polls refinements (#1608)
* Refine focus behavior

* Begin draft mode

* Add alert on poll form

* Add poll ended asset

* Add fallback text for ended poll event

* Cleanup

* Fix assets

* Remove poll feature flags

* Fix UI tests

* Fix ui tests

* Refine discard poll alert

* Remove unused import

* Rename hasDraftContent -> hasContent

* Restore createPoll-2 ref screenshots
2023-09-01 15:55:11 +02:00
Stefan Ceriu 61326ed63a Be more lenient with fatalErrors coming out of equal transitions, caused by asynchronicity on the UI layer 2023-09-01 14:59:16 +03:00
Doug a472d443e0 Add app logo to OIDC and fix policy URL (#1590) 2023-08-30 09:39:33 +00:00
Alfonso Grillo a2623dd254 Create poll UX (#1571)
* Add poll attachment button

* Add poll creation feature flag

* Setup navigation to CreatePollScreen

* Add create/cancel actions

* Add create poll screen ui skeleton

* Add bindings in CreatePollScreen

* Add logics in CreatePollScreen

* Cleanup code

* Fix option deletion crash

* Fix conflicts

* Add create poll logic

* Add localisations

* Fix test build errors

* Fix crash

* Add UTs

* Add accessibility IDs

* Add ui tests

* Add 240 char limit

* Fix addOption hide behavior

* Add maxNumberOfOptions

* Cleanup code

* Move delete workaround in the view model

* Use compound delete icon
2023-08-30 09:23:30 +00:00
Doug a5045e1598 Use Safari for OIDC account URL. (#1591)
* Handle RP-Initiated Logout URL.

Safari is only used on devices, the simulator doesn't work properly.
2023-08-30 08:22:22 +00:00
aringenbach d1573ae40d Initial integration of RTE (#1464)
* Initial integration of RTE

* Fix `clipped`, `focused` and composer view type

* Remove horizontal padding

* Add `ComposerToolbar` mock

* Restore `composerFocusedSubject`

* Allow using HTML from RTE on message sent

* Fix new message content API

* Add feature flag for Rich Text Editor
2023-08-29 12:37:13 +00:00
Stefan Ceriu a0a19fa75b Fixes #1555, #1562 - Prevent the syncing indicator from showing up every time the app becomes active 2023-08-25 13:37:15 +03:00
Stefan Ceriu 82c3b0972d Move the firstRooms signposts to more relevant locations 2023-08-25 13:33:06 +03:00
Stefan Ceriu 6171d878b0 Signposting: split sync into initialSync and firstRooms which will track how long the very first sync takes separately from how long the first rooms appear in the list 2023-08-24 18:19:42 +03:00
Stefan Ceriu ecc549b280 Feature flag to OTLP tracing 2023-08-24 15:12:19 +03:00
Stefan Ceriu a19f5a4186 Expose the log level in developer settings 2023-08-23 16:17:49 +03:00
Doug 5e3a32157a Enable OIDC support (#1541)
Notification content is bypassed for now.
2023-08-22 15:53:27 +01:00
Mauro db1903ec05 MessageText component (#1521)
* MessageText component

* swiftformat

* fix swift format being a bit crazy

* link tapping support

* new test + fix for font + dynamic support

* fix for blockquote issue.

* code improvement

* small code improvement and fixed tests not working due to weird swiftformat behaviour

* fix boost emoji

* updated swiftformat

* better testing

* UI tests updated

* fixing the issue with the cache overriding the size category changes

* whitespaces

* appropriate color + better info plist parsing

* cleaned the code and fixed links

* tapping link fixes

* list bug fix

* ui tests regenerated
2023-08-22 10:14:23 +00:00
Stefan Ceriu 269fd3d1f6 Switch entirely to dynamic room list entries (normalizedMatchRoomName brings the same behavior as the old implementation) and cleanup 2023-08-22 11:12:41 +03:00
Stefan Ceriu e1d41ad8a3 Rename fuzzy search feature flag to dynamic entries, use the new normalizedMatchRoomName filter and make sure we use the old roomList.entries api when the feature flag is disabled 2023-08-21 17:22:18 +03:00
Stefan Ceriu ff074e3fae Revert "Remove fuzzy searching entirely because of performance issues"
This reverts commit e86f65ad2d.
2023-08-21 17:22:18 +03:00
Stefan Ceriu e86f65ad2d Remove fuzzy searching entirely because of performance issues 2023-08-18 16:17:47 +03:00
Mauro Romito d6b3a000f0 removed filter by push rules ff 2023-08-17 11:37:25 +02:00
Stefan Ceriu 5400910855 Bump SDK to v1.0.107-alpha. Simplify syncService state handling 2023-08-16 18:21:57 +03:00
Doug b2928a0dc6 Enable fuzzy search behind a feature flag. (#1490) 2023-08-14 16:41:41 +00:00
Stefan Ceriu 8f22a5f435 Re-enable and (hopefuly) simplify background app refresh handling 2023-08-09 11:25:44 +03:00
Stefan Ceriu 56544d6604 #1257 - Prevent the syncing indicator from showing over the offline one 2023-08-08 15:27:48 +03:00
Stefan Ceriu dd6d1f6e63 Tweak swiftlint settings 2023-08-08 11:48:40 +03:00
Stefan Ceriu ebb7436927 Send the SDK's short git SHA to rageshakes 2023-08-02 10:27:22 +03:00