Commit Graph

610 Commits

Author SHA1 Message Date
ganfra 0cda5b9e90 Merge pull request #2714 from element-hq/feature/fga/room_list_invites
[Feature] Room list invites
2024-04-17 23:04:31 +02:00
ganfra 90e273cd65 Room list invites: address some remarks and add small tests 2024-04-17 22:02:44 +02:00
ganfra 3e13191153 RoomList : make invite filter truly exclusive 2024-04-16 11:53:40 +02:00
ganfra 43e336cb72 RoomList : add invite filter 2024-04-15 22:50:43 +02:00
Benoit Marty 9ee36e9ca4 Remove unnecessary tests. 2024-04-15 17:57:15 +02:00
Benoit Marty 3df328b1ab Parse permalink using parseMatrixEntityFrom.
Create new PermalinkData type for link to Events.
Keep matrixToConverter for now to first convert to matrix.to link. At some point it may be done by the SDK.
Remove parse(Uri)
2024-04-15 17:47:40 +02:00
ganfra 9d87240f4c Room list : activate merged invites in Client 2024-04-15 16:58:07 +02:00
Benoit Marty 6b301ac37f Use org.matrix.rustcomponents.sdk.matrixToUserPermalink to build permalinks for user. 2024-04-15 16:24:56 +02:00
Benoit Marty 294f1f2d96 Use SDK API to build room and event permalinks. 2024-04-15 16:05:12 +02:00
Benoit Marty 7b14a0e4c8 Merge pull request #2704 from element-hq/feature/bma/encryptDbRelease
Encrypt new session data with a passphrase
2024-04-15 15:59:15 +02:00
Benoit Marty 3e52a4f3bd Encrypt new session data with a passphrase #2703 2024-04-15 11:02:16 +02:00
ganfra a2329fc7df Join room : change state and view 2024-04-12 14:10:32 +02:00
ganfra 73f276ba8e Merge branch 'develop' into feature/fga/room_navigation 2024-04-10 16:55:55 +02:00
ganfra 9604acb75a Room navigation : more reliable roomInfoFlow method 2024-04-10 11:41:06 +02:00
Jorge Martin Espinosa 1045f99d18 Add SessionData.needsVerification field (#2672)
* Add `SessionData.needsVerification`:
  - Allows us to add a skip button for debug builds.
  - We can have the verification state almost instantly.
  - It doesn't depend on network availability to know the verification state and display the UI.
* Add DB migration.
- Make the skip button in the verification flow skip the whole flow including the completed screen.
- Save the session as verified in `RustEncryptionService.recover(recoveryKey)`.
* Enforce session verification for existing users too.
* Fix verification confirmed screen subtitle (typo in id, was using the wrong string)
* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-04-09 17:28:12 +02:00
Benoit Marty 1c66254e74 Add suggestion of users when starting a Chat #2634 2024-04-08 13:53:55 +02:00
Benoit Marty 649204238c Add functions trackRecentlyVisitedRoom and getRecentlyVisitedRooms 2024-04-08 11:40:41 +02:00
Jorge Martin Espinosa 8e2f7a35cb Categorise members by role in the ChangeRoles screen (#2595)
* Categorise members by role in the ChangeRoles screen

* Fix automatic reload of member list when either the membership or power levels change

* Replace empty space with disabled checkbox

* Add 'pending' label to members who are in invited state

* Implement new designs

* Fix string issue in confirm recovery key screen

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-04-08 08:54:38 +00:00
ganfra 5a192b49d7 Room navigation : add a JoinedRoomFlowNode so we use RoomFlowNode for managing different routes 2024-04-04 20:36:16 +02:00
Benoit Marty 4a2703810b Merge pull request #2653 from element-hq/feature/bma/copyPermalink
Copy permalink
2024-04-03 17:38:38 +02:00
Jorge Martin Espinosa 41287c5f59 Move session verification to FTUE flow, make it mandatory (#2594)
* Move session verification to the FTUE
* Allow session verification flow to be restarted
* Use `EncryptionService` to display session verification faster
* Remove session verification item from settings
* Remove session verification banner from room list
* Remove 'verification needed' variant from the `TimelineEncryptedHistoryBanner`
* Improve verification flow UI and UX
* Remove 'verification successful' snackbar message
* Only register push provider after the session has been verified
* Hide room list while the session hasn't been verified
* Prevent deep links from changing the navigation if the session isn't verified
* Update screenshots
* Renamed `FtueState` to `FtueService`, created an actual `FtueState`.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-04-03 14:53:17 +00:00
Benoit Marty bf068f4f25 Add action to copy permalink #2650 2024-04-03 15:37:21 +02:00
Benoit Marty 8e7fdc859c Code quality and remove reference to DefaultMatrixToConverter.SUPPORTED_PATHS in MatrixToConverter 2024-04-02 15:51:59 +02:00
Benoit Marty 2a248417fa Move Event exclusion to the module appconfig.
It has to become an android module to be able to add a dependency on : libraries:matrix:api.
2024-04-02 14:35:58 +02:00
Benoit Marty 1e5a61a49c Move PermalinkBuilder, MatrixToConverter and PermalinkParser content to the impl project in order to remove projects.appconfig dependency from matrix.api module. 2024-04-02 14:15:54 +02:00
ganfra a9f326c81c Merge pull request #2620 from element-hq/feature/fga/room_directory
Feature/fga/room directory
2024-03-29 16:54:27 +01:00
ganfra 5f8b74055d RoomDirectory : address pr reviews 2024-03-29 11:37:00 +01:00
Benoit Marty e5db80b0eb Compact code. 2024-03-28 18:14:31 +01:00
Benoit Marty 31e95b1634 Fix crash observed when going back to the room list.
Protect MatrixRoom access when the room is disposed.
2024-03-28 18:14:31 +01:00
ganfra 3f1f764745 Room directory : add tests and cleanup 2024-03-28 17:03:34 +01:00
ganfra 37d645d153 Merge branch 'develop' into feature/fga/room_directory 2024-03-28 16:15:04 +01:00
Benoit Marty 46008c2887 Fix analytics: spaceId have the same syntax as roomId. Use MatrixRoom.isSpace instead of MatrixPatterns.isSpaceId (#2612)
Also remoce useless orFalse() calls.
2024-03-28 12:13:49 +01:00
ganfra b900818001 RoomDirectory : continue improving interactions 2024-03-27 12:51:36 +01:00
ganfra 90b2a65c1a Room directory : implement simple join room 2024-03-26 12:32:15 +01:00
ganfra e4c7118428 Room directory : fix pagination and add empty state. 2024-03-25 18:21:03 +01:00
ganfra 4c5ae6ae4b RoomDirectory : continue implementing the search 2024-03-25 11:17:19 +01:00
ganfra 01e6b46323 Room Directory : start exposing the matrix apis 2024-03-21 19:14:05 +01:00
Jorge Martin Espinosa 6aa84d600e Implement MSC2530 (#2570)
* Implement MSC2530
* Some layout improvements for images and videos with captions
* Update screenshots
* Replace `it` in several previews with `isMine`

---------

Signed-off-by: Marco Antonio Alvarez <surakin@gmail.com>
Co-authored-by: Marco Antonio Alvarez <surakin@gmail.com>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-20 13:58:29 +01:00
Jorge Martín cc9c04b1a3 Fix SDK integration 2024-03-20 09:36:35 +01:00
Benoit Marty fb64018110 Merge pull request #2565 from element-hq/feature/bma/userDataCache
Read user avatar from cache
2024-03-18 17:33:26 +01:00
Jorge Martin Espinosa 883d834284 Remove unnecessary Room.updateMembers() calls. (#2564)
* Remove unnecessary `updateMembers` calls.

Some of them can be directly removed since we have a way to automatically get member info updates based on membership changes.

Others can be replaced by a simpler `getUpdatedMember` method. This might still need a full member sync, but it's quite unlikely.
2024-03-18 14:57:25 +00:00
Benoit Marty 68fd649424 Use client.cachedAvatarUrl(), to be able to render the user avatar faster, and even if there is no network (#2488). 2024-03-18 15:02:54 +01:00
Benoit Marty 72b814f5a7 Merge pull request #2544 from element-hq/feature/bma/trackUtd
Track UTD errors.
2024-03-15 14:11:29 +01:00
Benoit Marty a9e67c070d Improve UtdTracker test. 2024-03-15 12:33:54 +01:00
Benoit Marty 87dd1cd4c1 Add unit test on UtdTracker 2024-03-15 12:29:38 +01:00
Benoit Marty 27bb46511b Improve crypto error content. 2024-03-15 09:41:43 +01:00
Benoit Marty 5c948ed0ba Track UTD errors. 2024-03-14 17:03:50 +01:00
Jorge Martin Espinosa 67d79059f8 Add legacy call invite state events and notifications (#2552)
* Add state timeline events and notifications for legacy call invites

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-14 16:29:06 +01:00
Jorge Martin Espinosa e3a395f15a Improve room member list loading UX (#2543)
Improve room member list UX:

- Don't display the list in chunks anymore.
- Use an indeterminate linear progress indicator to display some loading is being done (either loading the cached list or the updated one).
- Try to make sure we don't display the members loaded from timeline items as the cached room list by mistake.
* Update screenshots
* Simplify member loading logic.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-14 08:05:44 +00:00
Jorge Martin Espinosa 59a682b407 Change a room's permissions power levels (#2525)
* Change a room's permissions power levels

* Make `currentPermissions` use a `MatrixRoomPowerLevels?` instance instead.

* Update strings

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-12 15:45:06 +01:00