Commit Graph

1541 Commits

Author SHA1 Message Date
Doug f688d2eda4 Permalink Tweaks (#2768)
* Revert back to creating a new flow when re-selecting the same room.

Fix the composer bug by adding IDs to the all of the module AnyViews.

* Don't show the live timeline when starting with a focussed event.
2024-04-30 17:25:32 +01:00
Doug 7c94ed98a5 Permalink Tweaks 2 (#2766)
* Missing changelog.

* Parse bare room aliases as permalinks.

Update the SDK.

* Fix tapping the same permalink twice.

Add a test.

Don't clear the focussed item when reaching the bottom of the timeline.

* Make sure sending a message returns to live.
2024-04-29 17:32:16 +01:00
Doug aaa8af2996 Public room search tweaks (#2750)
- Remove the "Join" button.
- Hide the extra bottom separator.
- Show an empty search result.
- Fix a bug where we would paginate and search simultaneously.
2024-04-29 10:01:48 +01:00
Doug 7b2168a540 Event Permalink Tweaks (#2754)
* Handle errors focussing the timeline.

* Add a test for focussing on an existing timeline item.
2024-04-29 10:00:41 +01:00
ElementRobot 231fc6defb Translations update (#2761) 2024-04-29 08:42:15 +01:00
Valere bd9a171c7c Add specific UX for Expected UTDs due to membership (#2740)
* Add specific UX for Expected UTDs due to membership

* Update analytics package and snapshots.

* Add changelog
2024-04-26 17:22:01 +01:00
Doug 1b8d895e98 Fix some snapshots. (#2749) 2024-04-26 14:07:20 +01:00
Doug df6cf25524 Update the SDK and enable event permalinks. (#2748) 2024-04-26 09:59:01 +01:00
ElementRobot 008088ab06 Translations update (#2747) 2024-04-25 18:37:13 +01:00
Doug 76e7de40b5 Prepare for event focus and forward pagination (#2745)
Neither are available yet.
2024-04-25 18:32:33 +01:00
Stefan Ceriu 8d66572cc9 Fixes #2706 - Use disambiguated display names for timeline item senders and state event bodies. (#2739) 2024-04-25 14:53:18 +03:00
Doug 6661c16154 Add Event Routes to the flows (#2743) 2024-04-25 12:50:06 +01:00
Stefan Ceriu 8581355372 Remove join room screen graphic and align platforms 2024-04-24 17:26:10 +03:00
Stefan Ceriu 2378bb6466 Revert "Attempted fix for #2653 - Reset the TextView delegates on every update call"
This reverts commit 9b9deb7dcd7c28c4171912ebb68375c1ecec9a11.
2024-04-24 11:29:54 +03:00
Stefan Ceriu d949b17448 dd support for deeplinking/navigating into the same room multiple times
- fix bugs around the view <-> view models going out of sync
- unwind the stack if the room is already presented
2024-04-24 11:29:54 +03:00
Stefan Ceriu a9708f7616 Attempted fix for #2653 - Reset the TextView delegates on every update call 2024-04-23 13:23:11 +03:00
Stefan Ceriu 89927f1357 Fix #2652 - Room list looping and fighting scrolling after filtering
- also fixes filtering empty state vertical centering
2024-04-23 12:18:00 +03:00
Stefan Ceriu 23d5089287 Fix broken iPhone room push animation after disabling root fading for the iPad 2024-04-23 10:36:52 +03:00
Stefan Ceriu 69ffd3be46 Handle alias room permalinks 2024-04-23 08:01:30 +03:00
Stefan Ceriu 8ba544bc44 Cleanup following the AppMediator introduction (#2723)
- stop using multiple background task, the appCoordinator sync one is enough for the whole app
- move the AppMeditor to the MainActor
- expose the WindowManager through the AppMediator
- hide sensitive WindowManager API behind a different protocol
- remove the now unnecessary `BackgroundTaskService`
2024-04-22 18:10:24 +03:00
ElementRobot c1161f0592 Translations update (#2726) 2024-04-22 11:03:39 +01:00
Doug 5f98fdba44 Update strings with API breaks. (#2720) 2024-04-22 10:52:29 +01:00
Stefan Ceriu c738d57af1 Setup animations for navigation root and split detail and sidebar module changes. 2024-04-22 10:17:13 +03:00
Stefan Ceriu 1e810f91ff Fixes #2707 - Prevent the app from locking while recording a voice message 2024-04-20 15:38:58 +03:00
Stefan Ceriu effe3b6a9b Membership aware room routes (#2709)
* Remove the invites button when room list invites are enabled

* element-hq/element-x-ios/issues/2632 - Handle room permalinks based on their membership state and show the according room joining screens:
- modify the room flow coordinator to only take a roomID and be able to decide its own room flows (especially for unjoined rooms)
- add support for the new room preview API
- have RoomDirectorySearch go through the same paths
2024-04-19 17:04:18 +03:00
Stefan Ceriu 9a172df7fd Introduce an AppMediator which will:
- combine multiple services to handle app wide requests
- remove direct UIApplication access from everywhere
- fix #2703 by combining UIApplication.applicationState with the WindowManager's main window appearance
- leave the door open for more app control in the future (especiall for the mac)
2024-04-19 15:43:56 +03:00
Doug b5f1d5947b Add missing image provider to RoomChangeRolesScreenViewModel. (#2715)
* Add an assertion for a missing image provider.

* Pass an image provider to RoomChangeRolesScreenViewModel.

* Update snapshots.
2024-04-19 11:56:41 +01:00
Stefan Ceriu 8ef6fee95f Guard against rooms prematurely unsubscribing from sliding sync:
- with the advent of permalinks the same room can be now pushed multiple times onto the stack which means multiple calls to `subscribeForUpdates`
- the reverse doesn't hold and one call to `unsubscribeFromUpdates` will unsubscribe all the rooms at the same time
- we guard against that by tracking the number of subscriptions and calling the underlying `roomListItem.unsubscribe()` when the count goes back to zero
2024-04-19 11:14:48 +03:00
Stefan Ceriu 20d57e4998 Bump the RustSDK to v1.1.59, regenerated the SDK mocks 2024-04-18 15:01:31 +03:00
Stefan Ceriu 195a7c0e5f Fix broken cancel button on the enter recovery key screen
- regressed in https://github.com/element-hq/element-x-ios/pull/2648/files#diff-4420a80fe4e4d99cac174f0dcf86413535a34bd6dc303670d11bca25105d1ae6L55
2024-04-17 16:28:24 +03:00
Stefan Ceriu ee7b1de1c8 With date separators not longer duplicated switch back to using their timestamps (formatted even) as stable identifiers 2024-04-16 19:27:45 +03:00
Stefan Ceriu 83c620d685 element-hq/element-x-ios/issues/2636 - Expose paths for focusing replied-to timeline items by tapping on an in-reply-to message bubble 2024-04-16 15:01:48 +03:00
Stefan Ceriu 43c132720d Bring back the original native MessageComposerTextField, use it whe… (#2696)
* Bring back the original native `MessageComposerTextField`, use it when the Rich Text Editor one is disabled (advanced settings)
- this basically reverts parts of https://github.com/element-hq/element-x-ios/pull/1703
2024-04-15 15:41:34 +00:00
Doug e7af7fb59c Handle external links to a user. (#2690) 2024-04-15 11:08:00 +01:00
ElementRobot e0138eeb35 Translations update (#2693)
Co-authored-by: Velin92 <Velin92@users.noreply.github.com>
2024-04-15 09:36:33 +01:00
Doug d6b5c07ee6 Always encrypt the db for new users. (#2692) 2024-04-12 18:00:49 +01:00
Stefan Ceriu 4d513f9ed1 Stop relying on the NotificationCenter for removing delivered push notifications:
- this will improve the architecture but more importantly will remove some very flakey unit tests
2024-04-12 19:18:00 +03:00
Stefan Ceriu 891315ef04 Remove now unused room and event matrix entity regexes 2024-04-12 18:04:41 +03:00
Stefan Ceriu fcc25dd441 Adop the new SDK permalink detector and user builder 2024-04-12 18:04:41 +03:00
Doug f8920d4d11 Initial implementation of the JoinRoomScreen. (#2684)
* Update Compound and use super button for room directory.
2024-04-12 13:13:22 +01:00
Doug cc95c6a0f2 Fix a bug where the view state is being modified during an update. (#2686) 2024-04-12 10:45:29 +01:00
Mauro fc1310d7ad QR Code, verification code views (#2685) 2024-04-12 09:29:14 +00:00
Doug 5c9d0975ce Add a UserProfileScreen for profiles of non-members. (#2687) 2024-04-12 09:54:14 +01:00
Mauro 9bc24e2038 QR Code error views (#2678)
Co-authored-by: Doug <douglase@element.io>
2024-04-11 08:32:56 +00:00
Doug eda7d59518 Update strings and add productionAppName value for the new placeholder. (#2677)
* Update strings and add productionAppName value for the new placeholder.

* Fix snapshots.

* Fix more snapshots.
2024-04-10 16:58:00 +01:00
Stefan Ceriu 7645971812 Attempt to improve unit test reliability:
- synchronize mock properties on the main queue
- sleep for longer when processing routes
- finish encoding before deallocating the keyed archiver
- wait for NotificationCenter notifications to be delivered
- change were we process remote notification permissions
2024-04-10 17:40:47 +03:00
Doug da598302df Add more flexible background support to FullscreenDialog (#2675)
Hide the background when the main content extends underneath the bottom content.
2024-04-10 14:56:41 +01:00
Mauro bcd7e2254c QR Code scan view (#2674) 2024-04-10 10:47:23 +00:00
Stefan Ceriu 064626fbbe element-hq/element-x-ios/issues/2670 - Show invites as part of the room list 2024-04-09 18:18:11 +03:00
Doug 0856891733 Final design for pending members when changing roles. (#2668)
* Final design for pending users when changing role.

* Remove room moderation feature flag.

* Fix tests.

* Run periphery.

* Update snapshots.
2024-04-09 12:00:11 +01:00