Commit Graph

110 Commits

Author SHA1 Message Date
Przemysław Romanik
ee9b61a180 add '.' to MATRIX_ROOM_IDENTIFIER_REGEX
Signed-off-by: Przemysław Romanik <github@rom4nik.pl>
2023-06-17 22:18:53 +02:00
ganfra
170c741130 Matrix rust sdk: update to 0.1.20 (and fix compilation issues) 2023-06-15 15:26:53 +02:00
Jorge Martin Espinosa
7ddf93ed09 [Message Actions] Retry sending failed messages (#596)
* Add `RetrySendMessageMenu` to retry sending failed messages or removing its local echo.

* Fix initial event being retrieved, not the updated one

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-15 11:27:37 +02:00
ganfra
92adef5384 Extract fetchDetailsForEvent and use coroutineDispatchers.io 2023-06-12 20:23:58 +02:00
ganfra
53f234d135 Merge pull request #566 from vector-im/feature/fga/update-rust-sdk-0.1.16
Feature/fga/update rust sdk 0.1.16
2023-06-09 17:26:11 +02:00
Jorge Martin Espinosa
e591a588b3 [Message Actions] Add emoji reactions option (#568)
* Add logic to send message reactions

* Add emoji library, create EmojiPicker component

* Fix bottom sheet behaviors

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-09 16:56:40 +02:00
Jorge Martin Espinosa
b0386e6235 [Message Actions] Display debug info for events in the timeline (#555)
* Display debug info for events in the timeline on debug builds.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-09 06:13:22 +00:00
ganfra
bca3f58062 Matrix rust sdk : update SessionVerificationService to suspend (Async-Uniffi) 2023-06-08 17:02:14 +02:00
Jorge Martin Espinosa
25c32cb1e8 [Message actions] New UI for replies (#545)
* Add 'reply to' UI to the message composer.

* Move the `BlurHashAsyncImage` to `:libraries:designsystem` as it is now used in several modules.

*  Create reusable `AttachmentThumbnail` and associated data classes and enums, it's now added to `:libraries:matrixui`.

* Re-use `AttachmentThumbnail` in a `ActionListView` and `TextComposer`.

* Add 'inReplyTo' models and UI.

* Add min size for images

* Create a separate layout for media items with no reply to info. Also, separate `Timeline__Row` components from `TimelineView`, as it was getting too large.

* Added `EqualWidthColumn` to use inside message bubbles. Also fixed some modifiers for media items replying to other messages.

* Disable `inReplyToClicked`.

* Remove unused resources and libraries.

* Remove any traces of `BlurHashAsyncImage` in `:features:messages`, since it was moved to the design system.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-08 12:15:13 +02:00
ganfra
e3457fb594 Media: clean up code 2023-06-06 22:18:13 +02:00
ganfra
20eb2ade54 Merge branch 'develop' into feature/fga/media_viewer_actions 2023-06-06 14:35:25 +02:00
Chris Smith
b6e45c976f Use member count instead of counting members (#530)
Use member count instead of counting members

For the room details screen, use the member count as supplied by
matrix instead of waiting for the entire member list to be
retrieved and then manually adding up all the relevant users.

This removes the loading state of the member count, relying on
a spinner on the member list itself if the user actually wants
to see the members. (The performance of that will be improved
separately on the rust side in the future)

Closes #505
2023-06-06 10:40:17 +00:00
ganfra
8e1ade897d MediaViewer: improve actions (save on disk and share) 2023-06-02 20:13:17 +02:00
ganfra
70e9dfa25d Media: finally revert to using only uri but with the proper scheme.. 2023-06-02 08:55:43 +02:00
Benoit Marty
be45feac43 Merge pull request #458 from vector-im/feature/bma/notificationContent
Notification content
2023-06-01 18:01:57 +02:00
Florian Renaud
04d4b6369a Update room properties from room details (#439)
-  Add the edit action in the room details
-  Add "Add topic" button in room details
-  Add the screen behind that action to edit some room properties: avatar, name, topic
   -  Handle the save button action
      - enable the button only if changes are detected
      - display a loader "updating room"
      - display an error dialog if any request has failed
- Check user has the right power level to change various attributes
   - "Add topic" is only shown if there's no topic and they are able to set on
   - Edit menu is only shown if they can change topic, name or avatar
   - On the edit page, any fields they can't change are uneditable

Co-authored-by: Chris Smith <csmith@lunarian.uk>
2023-06-01 15:10:29 +00:00
Benoit Marty
4d9c08bead Merge pull request #416 from Freezlex/develop
Fix App crash when joing specific room URL
2023-06-01 15:36:32 +02:00
Benoit Marty
3d77083aa7 Cleanup 2023-06-01 12:24:30 +02:00
Benoit Marty
d0d6be3912 Map some info for the notifications. 2023-06-01 12:23:53 +02:00
Benoit Marty
feebff3d3d Merge pull request #478 from vector-im/feature/bma/slidingSyncCleanup
Sliding sync cleanup
2023-06-01 12:17:01 +02:00
Benoit Marty
a4e2a688c3 Cleanup 2023-05-30 15:59:58 +02:00
Benoit Marty
a7eae1cda5 Add OIDC support 2023-05-30 15:14:57 +02:00
Benoit Marty
190b3cc990 Add EventType to avoid using hard-coding strings. 2023-05-30 14:11:26 +02:00
ganfra
c89d9dd8e6 Media: handle PR review remarks 2023-05-26 19:09:51 +02:00
ganfra
c31901bd67 Media: some code clean-up 2023-05-24 22:23:38 +02:00
ganfra
922b63e746 Merge branch 'develop' into feature/fga/image_loading 2023-05-24 17:39:27 +02:00
renovate[bot]
3211eef1b8 Update dependency org.matrix.rustcomponents:sdk-android to v0.1.15 (#444)
Co-authored-by: Chris Smith <csmith@lunarian.uk>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-23 09:51:02 +00:00
Chris Smith
463b9e0642 Invite users to existing rooms (#441)
Invite users to existing rooms

Scope:

- Allow inviting from the room detail screen and the member list
- Invite option is only shown if the user has the correct power level
- Search flow the same as creating a new room, allowing multi-select
- Existing room members/invitees are disabled with a custom caption
- Sending is asynchronous, an error dialog will appear wherever the
  user is if necessary

Closes #245
2023-05-23 09:23:24 +00:00
ganfra
2c3fb8a549 Merge branch 'develop' into feature/fga/image_loading 2023-05-22 20:59:37 +02:00
Freezlex
10725b9585 Merge branch 'vector-im:develop' into develop 2023-05-22 10:26:58 +02:00
ganfra
6f7d7a004a Media: update doc on MediaLoader 2023-05-16 14:50:54 +02:00
Florian Renaud
029eb876df Merge remote-tracking branch 'origin/develop' into
feature/fre/create_room_select_avatar
2023-05-16 14:18:29 +02:00
ganfra
ac1531390e Media: fix encrypted media 2023-05-16 11:51:11 +02:00
ganfra
9318d27ba1 Merge branch 'develop' into feature/fga/image_loading 2023-05-15 20:07:00 +02:00
Marco Romano
1b84f02073 Show pending invitations in room members list (#385)
Splits a Room's member list in 2 showing pending invitees first and then the actual room member.

This simple user facing change entails a host of under the hood changes:
- It copies the logic from the `userlist` module and merges it into the `roomdetails` module removing all details not related to the member list (e.g. gets rid of multiple selection, debouncing etc.).
- Uncouples the `roomdetails` module from the `userlist` one. Now leaving only the `createroom` module to depend on the `userlist` module. Therefore the `userlist` module could be in the future completely removed and merged into the `createroom` module.
 - Changes the room members count in the room details screen to only show the members who have joined (i.e. don't count those still in the invited state).

Missed ACs:
- This change does not make the member list live update. Discussion is ongoing on how to make this technically feasible.

Parent issue:
- https://github.com/vector-im/element-x-android/issues/246
2023-05-15 14:39:27 +02:00
ganfra
c191d5991d Media: improve media viewer 2023-05-12 18:48:24 +02:00
Freezlex
dda51e1667 fix: Add dash to MATRIX_ROOM_IDENTIFIER_REGEX in order to allow URLS such as foo-bar:foo.bar 2023-05-11 20:43:35 +02:00
Jorge Martin Espinosa
ed16ea5e48 [Media upload] Upload image, video and files (#411)
* Add media upload

* Display media upload error messages using a Snackbar.
2023-05-11 15:56:13 +00:00
Florian Renaud
5a0665a27a upload avatar within the room creation 2023-05-11 16:30:38 +02:00
renovate[bot]
081c86e8db Update dependency org.matrix.rustcomponents:sdk-android to v0.1.12 (#407)
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.12

* Fix Rust SDK update issues.

* Try to handle Rust memory more gracefully.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-05-10 15:27:15 +00:00
ganfra
72dea2f817 Introduce MatrixMediaSource 2023-05-05 19:47:10 +02:00
ganfra
affb928801 Merge develop into feature/fga/image_loading 2023-05-05 12:51:00 +02:00
Benoit Marty
3fc4604f9c Merge pull request #332 from vector-im/renovate/kotlin
Update kotlin
2023-05-05 12:12:29 +02:00
Florian Renaud
e1dbc8fadf Perform get profile request on matrix ID 2023-05-04 16:27:50 +02:00
renovate[bot]
87e57f5b51 Update kotlin 2023-05-03 17:40:41 +00:00
Chris Smith
5c935818c6 Move and refactor MatrixUser (#381)
Move and refactor MatrixUser

Instead of living in matrixui and having an AvatarData, this can
reside in the matrix module and just have the URL. An extension
method in matrixui can then provide the AvatarData when required.

This removes some small duplication, and pushes the UI-specific
information (i.e., what size of avatar is going to be rendered)
further down the stack. It also aligns the field names with those
used by the rust SDK (e.g. "displayName" instead of "userName").
2023-05-03 16:30:19 +00:00
Chris Smith
63168d4656 Search for users to start a new DM. (#376)
Search for users to start a new DM.

Hooks up the create room UI to the matrix client to get
search results. Searches are debounced for 500ms and
only executed when 3 or more characters are entered.

Wrap the result state so we can distinguish between
"no results because we haven't searched yet" and
"no results because the API returned nothing", and
add a "No results found" message in the UI for the
latter case.

Closes #95
2023-05-03 13:26:31 +00:00
ganfra
d55d5a801b Merge branch 'develop' into feature/fga/image_loading 2023-05-02 16:23:47 +02:00
ganfra
56f6ad69a9 Merge pull request #353 from vector-im/feature/fga/some_room_related_fixes
Feature/fga/some room related fixes
2023-05-02 13:20:10 +02:00
ganfra
11db3195e0 Update rust-sdk : make the app compiles again 2023-04-28 18:26:32 +02:00