Commit graph

270 commits

Author SHA1 Message Date
Jorge Martin Espinosa
a1b81046f0
Add empty state view for HomeSpacesView (#6047)
* Add empty state view for `HomeSpacesView`

This links to the create space flow, and has an 'explore public spaces', hidden for now.

* Make sure we display the empty view if the 'create spaces' FF is enabled

Also, remove the tab and navigate to the chats tab if the FF is disabled and the last space is left

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-01-21 10:36:12 +01:00
ElementBot
2c6e2c6c89
Sync Strings from Localazy (#6042)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-01-20 10:04:53 +01:00
bmarty
45ed8619dd Sync Strings from Localazy 2026-01-19 00:35:31 +00:00
ganfra
57b89d241f Add proper localization for space room removal UI 2026-01-15 12:14:08 +01:00
ElementBot
aa4125bdc0
Sync Strings from Localazy (#5994)
Co-authored-by: jmartinesp <480955+jmartinesp@users.noreply.github.com>
2026-01-14 11:43:57 +00:00
Jorge Martin Espinosa
6d1ed5967b
Create spaces (#5982)
* Allow creating a space with `CreateRoomParameters`

* Add 'Create space' menu item in the spaces home screen. Also, imports new strings related to spaces.

* Link the 'Create space' button with the screen to create the space

* Unify room access and visibility for `ConfigureRoom`, use the updated design

* Fix `EditRoomDetails` avatar size (68dp)

* Replace `EditableAvatarView` and `UnsavedAvatar` copmonents with `AvatarPickerView`

* `AvatarDataFetcherFactory`: Make sure we use a fallback image fetcher when the URL is not an MXC one (a local one, i.e.). This removes the previous need for a separate `UnsavedAvatarView`

* Use `AvatarPickerView` in all the screens where `EditableAvatarView` was used

* Improve naming and previews

* Update strings, remove unused ones for `RoomAccessItem`

* Make `isSpace` part of the `CreateRoomConfig`

* Ensure the content fits in the screenshots for `AvatarPickerSizesPreview`

* Add `AvatarDataFetcherFactoryTest`

* Add new feature flag for creating spaces

* Fix ripple being too large for the `Pick` state

* Tweak margins and section titles a bit

* Add preview for `HomeTopBar` with the spaces case

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-01-13 14:35:49 +01:00
ganfra
4a0e654f35 localazy: sync strings 2025-12-23 15:41:16 +01:00
ganfra
7645588b0f localazy : sync strings
# Conflicts:
#	features/roomdetails/impl/src/main/res/values/localazy.xml
#	features/securityandprivacy/impl/src/main/res/values/localazy.xml
#	libraries/ui-strings/src/main/res/values/localazy.xml
2025-12-23 15:23:45 +01:00
bmarty
96dc67162c Sync Strings from Localazy 2025-12-23 11:23:46 +01:00
Benoit Marty
3ea10c2c62
Merge pull request #5909 from element-hq/feature/bma/qrCodeLogin
Link new device using QrCode - First version
2025-12-18 16:08:21 +01:00
Benoit Marty
a073117d62 Link new device using QrCode. 2025-12-16 16:14:04 +01:00
ganfra
c734d5c485 Merge branch 'develop' into feature/fga/space_settings_iteration 2025-12-16 11:02:29 +01:00
ElementBot
ad881c303a
Sync Strings from Localazy (#5904)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-12-15 23:51:19 +01:00
ganfra
ce079e84f5 Merge branch 'develop' into feature/fga/space_settings_iteration 2025-12-15 16:06:06 +01:00
ganfra
c4a542dbf1 localazy: download strings to match module 2025-12-10 15:14:35 +01:00
bmarty
3935a3b6ce Sync Strings from Localazy 2025-12-08 00:34:18 +00:00
Benoit Marty
63f7c9a4fd Iterate on Save change dialog. 2025-12-03 18:04:53 +01:00
ganfra
cf4d4505bd change(room details edit): adjust the ui 2025-12-03 15:10:59 +01:00
bmarty
32d56ea92d Sync Strings from Localazy 2025-12-01 00:23:54 +00:00
ElementBot
738f707ca7
Sync Strings from Localazy (#5747)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-11-17 10:29:26 +01:00
Benoit Marty
017a259f1c Update notification content 2025-11-14 15:40:31 +01:00
ElementBot
967f250e4b
Sync Strings from Localazy (#5704)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-11-10 09:21:00 +01:00
ElementBot
967dfe6a6b
Sync Strings from Localazy (#5662)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-11-03 10:58:12 +01:00
ElementBot
b1addb4521
Sync Strings from Localazy (#5610)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-10-27 13:53:07 +01:00
ElementBot
a22101150b
Sync Strings (#5562)
* Sync Strings from Localazy

* Sync strings again

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-10-20 10:04:46 +00:00
Benoit Marty
fb344d2761 Sync strings. 2025-10-09 12:21:15 +02:00
Benoit Marty
a584a5c1c6 Update Localazy config and sync all the strings. 2025-10-07 15:53:53 +02:00
ganfra
17f9673a0f feature(space): introduce SpaceRoomVisibility and remove room count 2025-10-06 20:50:05 +02:00
ElementBot
7095b460b3
Sync Strings from Localazy (#5460)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-10-06 12:38:51 +02:00
Benoit Marty
74c2ee46d8 Leave space - Add screen to leave a space. 2025-09-26 14:14:00 +02:00
ElementBot
d64b867f03
Sync Strings from Localazy (#5385)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-09-22 11:19:35 +02:00
ElementBot
23cb084126
Sync Strings from Localazy (#5349)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-09-15 08:39:59 +02:00
Richard van der Hoff
120c30e076
Show progress dialog while we are sending invites in a room (#5342)
* Add `InvitePeopleState.sendInvitesAction`

Keep track of the progress on sending invites with a new state property.

* Keep `RoomInviteMembersView` open until invites are sent

* Sync strings from localazy

* extend `ProgressDialog` to support custom content

For my current design, a simple text element is insufficient. I extend
`ProgressDialog` to give more flexibility over the content of the dialog.

* Show progress dialog while invites are being sent

* Add new ProgressDialog previews to the naming exceptions list

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-09-12 10:35:37 +00:00
ElementBot
f852fb4f82
Sync Strings from Localazy (#5290)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-09-08 09:37:13 +02:00
Benoit Marty
aaaca12aa7 Sync strings again 2025-09-05 10:39:44 +02:00
bmarty
8027ce9dca Sync Strings from Localazy 2025-09-05 07:44:19 +00:00
ElementBot
02c9549bc0
Sync Strings from Localazy (#5249)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-09-01 12:44:49 +02:00
Jorge Martin Espinosa
9bc2c4a776
Add shortcut suggestions for rooms, remove then when leaving (#5180)
* Report shortcut usage for outgoing messages

This patch adds support for creating and pushing dynamic
long-lived shortcuts for outgoing messages. This together
with an existing reference to the roomId used by the
shortcuts as an identifer allows conversations to be
prioritized.

See https://developer.android.com/training/sharing/direct-share-targets#report-usage-outgoing

* Simplify how to get the other user in a DM room

* Add initial avatar icons to shortcuts

* Remove room shortcuts when they're no longer joined

* Try using API 33 for the new tests. They worked locally with API 30, so it's weird the CI asks for a higher API version.

* Add observers for the pin code and session logout states. With this we can prevent new shortcuts from being created and remove existing ones when needed.

* Wrap all calls to `ShortcutManagerCompat` with `runCatchingExceptions` to avoid crashes

* Make `DefaultNotificationConversationService` a singleton.

---------

Co-authored-by: networkException <git@nwex.de>
Co-authored-by: ElementBot <android@element.io>
2025-08-19 16:02:51 +02:00
Benoit Marty
6989e10c19 Add string to Localazy 2025-08-13 16:59:12 +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
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
bmarty
ee77c646eb Sync Strings from Localazy 2025-08-04 00:34:11 +00:00
bmarty
0fb0861bc1 Sync Strings from Localazy 2025-07-28 00:33:43 +00:00
bmarty
8ffbfd82e8 Sync Strings from Localazy 2025-07-22 20:46:13 +02:00
Benoit Marty
cdbadb5477 FAB: iterate on design 2025-07-16 10:11:53 +02:00
Benoit Marty
dc556e0298 [a11y] Improve accessibility of picto next to the timestamp.
https://github.com/element-hq/customer-success/issues/572
2025-07-09 17:32:59 +02:00
Benoit Marty
fb497d0465 Sync strings. 2025-07-09 16:20:47 +02:00
Benoit Marty
5d81a0264b [a11y] Add long click label 2025-07-04 09:34:14 +02:00
Benoit Marty
e608ac0993 [a11y] Ensure that the focus is not lost when the send button state change. 2025-07-03 17:19:43 +02:00
Benoit Marty
c804fe0558
Add "View avatar" content description to all clickable Avatar that will open the avatar preview. (#4948)
* Add "View avatar" content description to all clickable Avatar that will open the avatar preview.

* Improve accessibility of avatar images.
2025-06-30 17:06:10 +02:00