Commit graph

1330 commits

Author SHA1 Message Date
ElementBot
42e8596ad7 Update screenshots 2025-08-12 08:11:44 +00:00
Benoit Marty
216ba060b4
Merge branch 'develop' into feature/bma/rageshakeConfigStep2 2025-08-11 17:35:06 +02:00
Jorge Martin Espinosa
adc61b3826
Add media file limit size warning and media quality selection (#5131)
* Add `VideoCompressorPreset` enum

This represents the different compression presets used for processing videos before uploading them

* Add `VideoCompressorHelper` util class to calculate the scaled output size of the video given an input size and its optimal bitrate

Also add `MediaOptimizationConfig` which will be used to decide how to apply compression in `MediaPreProcessor`

* Add `RustMatrixClient.getMaxFileUploadSize()` function and `MaxUploadSizeProvider` so we can import only this functionality into other components

* Try preloading the max file upload size the first time we get network connectivity - it's a best effort

This should help ensure we'll have this value available later, even if we still need to load it asynchronously.

* Split the `compressMedia` preference into `compressImages` and `compressMediaPreset`

* Modify the media processing parts to use the new classes and utils

* Add `MediaOptimizationSelectorPresenter`, which will retrieve the compression values and the max file upload size, also estimating the compressed video file sizes if needed.

* Add a feature flag to allow selecting the media upload quality per upload

* Integrate the previous changes with the attachments preview screen

Add strings from localazy too.

* Adapt the rest of the app calls to upload media to using the media optimization configs

* Allow modifying the default compression values in advanced settings, based on the feature flag value

* Pass the `fileSize` in `MediaUploadInfo` too, to be able to check it against the `maxUploadSize`

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-08-11 17:22:46 +02:00
Benoit Marty
84130da367 Code cleanup 2025-08-11 14:53:40 +02:00
ElementBot
4b12c3f805
Sync Strings (#5146)
* Sync Strings from Localazy

* Remove unused WelcomeView.

* Remove unused WelcomeView.

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-08-11 12:49:29 +00:00
Benoit Marty
3be08fdb0c Add Konsist test to check that files do not have double license header.
It seems that sometimes Android Studio is doing this mistake.
2025-08-11 10:36:40 +02:00
Benoit Marty
1afcce2b97
Merge pull request #5126 from element-hq/feature/bma/redirectToElementPro
Redirect FOSS user to Element Pro according to element .well-known file
2025-08-08 09:38:59 +02:00
ElementBot
c18a1e7c3b Update screenshots 2025-08-06 12:57:33 +00:00
Benoit Marty
122aeb1d03
Merge pull request #5120 from element-hq/feature/bma/a11y/contextMenuKeyboard
[a11y] Open context menu with the keyboard
2025-08-06 14:50:12 +02:00
ElementBot
80337276d8 Update screenshots 2025-08-06 08:37:58 +00:00
Jorge Martin Espinosa
1a335698c0
Force last owner of a room to pass ownership when leaving (#5094)
* Move `ChangeRoles*` classes to their own module so they can be shared

* Hook the change roles screen to the leave room action, add confirmation dialogs

* Use enum instead of sealed interface for `ChangeRoomMemberRolesListType`

* Try to improve communications between nodes

* refactor (leave room) : makes sure to expose only necessary code from api module

* Add `:libraries:previewutils` module to share some test fixtures used for UI previews

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
Co-authored-by: ganfra <francoisg@matrix.org>
2025-08-05 17:24:14 +02:00
ElementBot
864c27ace5 Update screenshots 2025-08-05 10:11:31 +00:00
Jorge Martin Espinosa
51f67741ae
Adapt 'change roles' screens to the new creator/owner role (#5076)
* Replace `RoomMember.Role.CREATOR` with `RoomMember.Role.Owner` - Make `RoomMember.Role` a sealed interface instead

* Adapt room member role mapping to include the power level to distinguish between admins and owners

* Use new `RoomMember.Role` sealed interface through the app

* Change how `MembersByRole` groups members to add owners to the admins section

* Adapt the `ChangeRoles` screen to the new roles:
    - Owners can't modify other owner's roles.
    - They can modify the roles of any other user, without confirmation.

* Adapt 'roles and permissions' screen:
    - Owners can't demote themselves.
    - The admin count also counts owners.

* Add more tests and screenshots

* Add owners to its own section in the 'change roles' screen

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-07-29 14:07:16 +00:00
Jorge Martin Espinosa
afa01e926b
Make sure we display errors when we create a recovery key and it fails (#5079)
* Make sure we display errors when we create a recovery key and it fails

* Add another preview for the error state

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-07-25 13:36:43 +02:00
Jorge Martin Espinosa
09e127cffc
Use lower level APIs to draw the message bubbles (#5056)
Co-authored-by: ElementBot <android@element.io>
2025-07-21 12:00:31 +02:00
Benoit Marty
2e0da99f2c
Merge pull request #5017 from element-hq/feature/bma/a11y/sessionVerification
[a11y] Improve session verification screens
2025-07-17 15:45:32 +02:00
ElementBot
43bcb49bef Update screenshots 2025-07-16 08:26:06 +00:00
ElementBot
d550a1dbb8 Update screenshots 2025-07-16 09:47:09 +02:00
Benoit Marty
b547b6a735 Cleanup 2025-07-11 16:19:11 +02:00
ElementBot
cb1db019f1 Update screenshots 2025-07-09 12:59:13 +00:00
ElementBot
96b2c7338f Update screenshots 2025-07-08 19:25:52 +00:00
Benoit Marty
4c42b3c013 Add preview for mentions in the context of the timeline. 2025-07-08 18:49:22 +02:00
ElementBot
782f244257 Update screenshots 2025-07-08 08:41:16 +00:00
Benoit Marty
4688b15c06 Fix issue after rebase. 2025-07-07 17:24:58 +02:00
ElementBot
ef47d289ab Update screenshots 2025-07-07 15:07:10 +00:00
Benoit Marty
1782e6d30b Apply gradient to focused Event. 2025-07-07 15:03:30 +02:00
Benoit Marty
b3af5509c7 Improve Konsist test. 2025-07-07 14:49:09 +02:00
Benoit Marty
2b8c4ba079 Remove bloom effect and replace by linear gradient
Use semantic colors.
2025-07-07 14:49:07 +02:00
renovate[bot]
649fedd134
Update dependency io.element.android:compound-android to v25.7.4 (#4984)
* Update dependency io.element.android:compound-android to v25.7.4

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: ElementBot <android@element.io>
2025-07-04 17:38:24 +02:00
ElementBot
0b3def2012 Update screenshots 2025-07-04 10:28:37 +00:00
Benoit Marty
f3eb0e69cc Fix wrong TopAppBar usage 2025-07-04 09:43:30 +02:00
Benoit Marty
8bc7bed5cb
Merge pull request #4964 from element-hq/feature/bma/roomListNavigationBar
Home navigation bar
2025-07-01 17:22:21 +02:00
ElementBot
b9b3418d31 Update screenshots 2025-07-01 07:14:32 +00:00
ElementBot
f7dde9dd6e Update screenshots 2025-06-30 17:23:15 +00:00
ElementBot
1aa18aeaf0 Update screenshots 2025-06-30 08:09:42 +00:00
ElementBot
2ba5d10f6a Update screenshots 2025-06-27 14:25:41 +00:00
Benoit Marty
fe9fbe894c
Merge pull request #4944 from element-hq/feature/bma/version
Replace the Report a problem button with the app's version on the on boading screen.
2025-06-27 14:45:18 +02:00
Jorge Martin Espinosa
2f6ce3da33
Element Call: remove top app bar and add it inside the webview instead (#4927)
Co-authored-by: ElementBot <android@element.io>
2025-06-27 08:41:10 +02:00
ElementBot
2cefa92a2a Update screenshots 2025-06-26 16:40:38 +00:00
Benoit Marty
71e309f6c3 Split function into separate files. 2025-06-26 13:03:22 +02:00
ElementBot
67e280280f Update screenshots 2025-06-26 13:03:21 +02:00
Benoit Marty
aedd98d34a Add NavigationBar component 2025-06-26 13:03:21 +02:00
Jorge Martin Espinosa
a10734de02
Simplify message composer layout (#4884)
Co-authored-by: ElementBot <android@element.io>
2025-06-24 14:05:28 +02:00
ElementBot
f92b646605 Update screenshots 2025-06-24 09:13:33 +00:00
ElementBot
0f4939b689 Update screenshots 2025-06-24 08:10:17 +00:00
Benoit Marty
e5b7e65372 Update screenshot 2025-06-24 09:06:08 +02:00
ElementBot
cf01390b72 Update screenshots 2025-06-23 15:19:46 +00:00
ganfra
0a4d32f3d3
Merge pull request #4909 from element-hq/feature/fga/invalid-invite
Change : handle invalid invite error
2025-06-20 18:42:09 +02:00
ElementBot
fc19a94078 Update screenshots 2025-06-20 14:54:33 +00:00
ElementBot
c838a793bb Update screenshots 2025-06-20 13:11:58 +00:00