Commit Graph

183 Commits

Author SHA1 Message Date
Stefan Ceriu
94ebbd025e Fixes #1824 - Redirect universal links directly to the browser if they're not supported 2023-10-05 16:36:42 +03:00
Mauro
0e6992a4f6 Tapping on room link (with roomID) (#1853)
* room linking

* chagelog
2023-10-04 15:47:57 +02:00
Mauro
bceebff6cb 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
1c23afba98 supported versions (#1848) 2023-10-03 10:10:38 +02:00
Doug
d4b09141fe 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
981a51e61b 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
89b84a6c02 Use a universal link for the OIDC callback. (#1681) 2023-09-28 14:12:57 +01:00
Andrew Breckenridge
6b18eac87d Application: pass AppDelegate in initializer, instead of using singleton 2023-09-28 12:35:37 +03:00
Mauro
4c5e6cfd19 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
c6cba056e4 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
f073db93db Only allow https call links to be passed through the custom app scheme 2023-09-25 11:04:54 +03:00
Nicolas Mauri
ec76c2973f Add voice message rendering to the timeline (#1776) 2023-09-21 14:36:21 +00:00
Stefan Ceriu
1fe7d270aa 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
af8a13bc91 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
7cbb064464 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
c28b94c61e 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
ce1f213f42 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
1a438c176f Fixes #1699 - Introduce a new advanced settings screen (#1700) 2023-09-14 08:37:42 +03:00
Nicolas Mauri
258d5f3184 Remove notification settings feature flag (#1693) 2023-09-13 12:05:32 +00:00
Stefan Ceriu
b6ea17c535 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
95e6b294a8 Add missing contacts field in OIDC configuration. (#1662) 2023-09-08 16:28:10 +00:00
Stefan Ceriu
c2594fede1 Enable RUST_BACKTRACE by default 2023-09-08 15:27:54 +03:00
Stefan Ceriu
1ceac30198 Adopt the new room list service syncIndicatorListener 2023-09-07 13:10:19 +03:00
Stefan Ceriu
4505712f7b 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
1142dabaa9 Fixes #1573 - Retract all notifications and app badges when signing out 2023-09-06 16:41:59 +03:00
Doug
f415a91962 Initial skeleton for Universal Link handling. 2023-09-06 10:07:22 +03:00
Stefan Ceriu
dba696fd10 Fixes #617 - Prevent navigation bar breaking when backgrounding the app froma a split view 2023-09-06 09:49:38 +03:00
Alfonso Grillo
0381fe3ce5 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
71db8affb1 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
c284f43e5b Add app logo to OIDC and fix policy URL (#1590) 2023-08-30 09:39:33 +00:00
Alfonso Grillo
fccabd6470 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
3af8be7dfd 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
cddacbc146 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
cd7fedda97 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
0512fcf329 Move the firstRooms signposts to more relevant locations 2023-08-25 13:33:06 +03:00
Stefan Ceriu
35cf6db6dd 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
9d7fe89bce Feature flag to OTLP tracing 2023-08-24 15:12:19 +03:00
Stefan Ceriu
81bb239f46 Expose the log level in developer settings 2023-08-23 16:17:49 +03:00
Doug
98bfb2ead4 Enable OIDC support (#1541)
Notification content is bypassed for now.
2023-08-22 15:53:27 +01:00
Mauro
eabdd2c3f2 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
a2ba41ed2a 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
ec1f25ea04 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
0bb1e5911d Revert "Remove fuzzy searching entirely because of performance issues"
This reverts commit 5016246c62.
2023-08-21 17:22:18 +03:00
Stefan Ceriu
5016246c62 Remove fuzzy searching entirely because of performance issues 2023-08-18 16:17:47 +03:00
Mauro Romito
947ff6e35d removed filter by push rules ff 2023-08-17 11:37:25 +02:00
Stefan Ceriu
bf386f4c64 Bump SDK to v1.0.107-alpha. Simplify syncService state handling 2023-08-16 18:21:57 +03:00
Doug
ee430e7e2c Enable fuzzy search behind a feature flag. (#1490) 2023-08-14 16:41:41 +00:00
Stefan Ceriu
8d6648302a Re-enable and (hopefuly) simplify background app refresh handling 2023-08-09 11:25:44 +03:00
Stefan Ceriu
72d02f8c27 #1257 - Prevent the syncing indicator from showing over the offline one 2023-08-08 15:27:48 +03:00
Stefan Ceriu
127e7f29a6 Tweak swiftlint settings 2023-08-08 11:48:40 +03:00