Commit graph

86 commits

Author SHA1 Message Date
bmarty
68fdaef8b8 Sync Strings from Localazy 2024-05-06 00:19:35 +00:00
Benoit Marty
0476bd95c8 Open user profile and room with event from permalink 2024-05-02 12:25:21 +02:00
bmarty
4f82baa2b0 Sync Strings from Localazy 2024-04-29 00:18:59 +00:00
Benoit Marty
810e4919bc Sync strings. 2024-04-10 12:36:41 +02:00
Benoit Marty
e18e5f1cc5 Run ./tools/localazy/downloadStrings.sh --all 2024-04-02 18:12:36 +02:00
bmarty
5809864182 Sync Strings from Localazy 2024-04-01 00:17:18 +00:00
bmarty
3af876b953 Sync Strings from Localazy 2024-03-25 00:18:59 +00:00
Benoit Marty
72587d589f Run ./tools/localazy/downloadStrings.sh --all after some key renaming on Localazy. 2024-03-13 09:56:31 +01:00
Benoit Marty
72d215e246 Run ./tools/localazy/downloadStrings.sh --all after config change. 2024-03-12 16:25:48 +01:00
bmarty
c021809479 Sync Strings from Localazy 2024-03-12 13:54:03 +00:00
ElementBot
dac54e7154
Sync Strings (#2523)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-03-11 08:46:07 +00:00
Jorge Martin Espinosa
b9d902e3fe
Room admins can change user roles (#2423)
Allow Admins to modify room member roles:

- Add a 'roles and permissions' option for each room.
- Allow promoting users to admins, adding or removing moderators, and demote yourself if you're and admin.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-05 16:46:47 +00:00
ElementBot
f2169aaaa8
Sync Strings (#2484)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-03-05 09:10:47 +01:00
bmarty
4f81fe2090 Sync Strings from Localazy 2024-02-29 13:48:26 +00:00
bmarty
7710876089 Sync Strings from Localazy 2024-02-28 11:33:05 +00:00
Benoit Marty
6d31c7d1d3 Import string again with new post processing. 2024-02-26 21:36:28 +01:00
bmarty
5c8be8f61f Sync Strings from Localazy 2024-02-26 18:17:16 +00:00
Benoit Marty
b9933acf98 Sync Localazy strings - including post treatment.
./tools/localazy/downloadStrings.sh --all
2024-02-23 17:45:22 +01:00
Benoit Marty
5e0b705d44 Sync Localazy strings.
./tools/localazy/downloadStrings.sh --all
2024-02-23 15:42:50 +01:00
Benoit Marty
a7e38f0925 Sync Localazy strings.
./tools/localazy/downloadStrings.sh --all
2024-02-23 12:23:11 +01:00
bmarty
a614b0d91e Sync Strings from Localazy 2024-02-12 00:10:26 +00:00
bmarty
03c95555e3 Sync Strings from Localazy 2024-02-05 00:09:59 +00:00
jmartinesp
f7abfb2f5a Sync Strings from Localazy 2024-01-31 11:38:48 +00:00
bmarty
4914c512fe Sync Strings from Localazy 2024-01-22 00:10:44 +00:00
ElementBot
6bc080c279
Sync Strings (#2230)
Co-authored-by: bmarty <bmarty@users.noreply.github.com>
2024-01-15 09:21:04 +01:00
bmarty
9c6e511319 Sync Strings from Localazy 2024-01-08 00:10:36 +00:00
bmarty
e6f4a7364f Sync Strings from Localazy 2023-12-26 09:39:48 +01:00
Benoit Marty
a7c5e620a4 Use icon from library and move and rename retry.xml to the library.
Also fix contentDescription for pause button.
2023-12-20 17:33:49 +01:00
bmarty
e60508a631 Sync Strings from Localazy 2023-12-18 00:10:14 +00:00
Benoit Marty
39cca2ce09 Sync localazy using fixed script 2023-12-08 19:24:35 +01:00
Benoit Marty
24d3981261 Run the script again. 2023-12-05 12:25:59 +01:00
Benoit Marty
5af1a786e5 Sync string again after removing problematic translations from Localazy. 2023-12-04 18:03:21 +01:00
bmarty
fced91addb Sync Strings from Localazy 2023-12-04 00:09:56 +00:00
Jorge Martin Espinosa
ab8402a4dc
Open room member avatar in a media viewer (#1911)
* Open room member avatar in viewer.

The `MediaViewer` was extracted to its own library module.

* Update screenshots

* Restore KSP processor in `:libraries:mediaviewer:api`, this should generate Showkase components again.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-28 17:39:41 +00:00
ElementBot
12b3196471
Sync Strings (#1892)
* Sync Strings from Localazy

---------

Co-authored-by: bmarty <bmarty@users.noreply.github.com>
Co-authored-by: jonnyandrew <jonnya@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-11-28 09:52:23 +01:00
ElementBot
eeb9b30d80
Sync Strings (#1839)
* Sync Strings from Localazy

* Fix 'Report a problem' screen title

---------

Co-authored-by: bmarty <bmarty@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-11-20 09:07:53 +00:00
Benoit Marty
eb6252bed3 Timeline: render TimelineItemReadMarkerModel 2023-11-14 18:10:26 +01:00
Benoit Marty
2cb0060f96 Add a View to show the beginning of the timeline (parity with iOS) 2023-11-14 17:31:42 +01:00
Benoit Marty
4f146d7a1c Localazy: move report_content strings to the :features:messages:impl module. 2023-11-14 11:37:21 +01:00
Benoit Marty
2ebe7d3365 Localazy: move emoji_picker_category_ strings to the :features:messages:impl module. 2023-11-14 10:53:30 +01:00
ElementBot
3bf34eae01
Sync Strings (#1789)
Co-authored-by: bmarty <bmarty@users.noreply.github.com>
2023-11-13 12:31:34 +01:00
bmarty
2fca8412b2 Sync Strings from Localazy 2023-11-06 08:23:40 +00:00
bmarty
ffd02b831e Sync Strings from Localazy 2023-10-30 14:50:36 +00:00
bmarty
8350382440 Sync Strings from Localazy 2023-10-30 00:10:04 +00:00
Jorge Martin Espinosa
44de6adb86
Initial support for member suggestions (#1631)
* Initial support for member suggestion (search and UI)

* Add custom `BottomSheetScaffold` implementation to workaround several scrolling bugs

* Start searching as soon as `@` is typed, add UI following initial designs

* Extract suggestion processing code

* Extract component, add previews, fix tests

* Add tests

* Add exception from kover to the forked bottom sheet code

* Add a feature flag for mentions

- Extract composer & mention suggestions to their composable.
- Extract mentions suggestions processing to its own class.
- Add `MatrixRoom.canTriggerRoomNotification` function.
- Update strings and conditions for displaying the `@room` mention.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-27 10:26:40 +00:00
ganfra
ca6a30d6cc PIN : fix quality 2023-10-26 15:25:40 +02:00
ganfra
5d98f645d2 Merge branch 'develop' into feature/fga/pin_settings 2023-10-26 11:13:52 +02:00
ganfra
54cd62ab76 PIN: branch SignOut 2023-10-25 11:15:15 +02:00
Marco Romano
6e66c989f4
Receive and play a voice message (#1503)
## Type of change

- [x] Feature
- [ ] Bugfix
- [ ] Technical
- [ ] Other :

## Content

This PR consists of several macro-blocks separated by path/package:
- `messages.impl.mediaplayer` : Global (room-wide) media player, now used only for voice messages but could be used for all media within EX in the future. It is backed by media3's exoplayer. Currently not unit-tested because mocking exoplayer is not trivial.
- `messages.impl.voicemessages.play` : Business logic of a timeline voice message. This is all the logic that manages the voice message bubble.
- `messages.impl.timeline.model` & `messages.impl.timeline.factories`: Timeline code that takes care of creating the `content` object for voice messages.
-  `messages.impl.timeline.components` : The actual View composable that shows the UI inside a voice message bubble.

All the rest is just small related changes that must be done here and there in existing code.

From a high level perspective this is how it works:
- Voice messages are unlike other message bubbles because they carry state (i.e. playing, downloading...) so they have a Presenter managing this state.
- Media content (i.e. the ogg file) of a voice message is downloaded from the rust SDK on first play then stored in a voice messages cache (see the `VoiceMessageCache` class, it is just a subdirectory in the app's cacheDir which is indexed by the matrix content uri). All further play attempts are done from the cache without hitting the rust SDK anymore.
- Playback of the ogg file is handled with the `VoiceMessagePlayer` class which is basically a "view" of the global `MediaPlayer` that allow the voice message to only see the media player state belonging to its media content. 
- Drawing of the waveform is done with an OSS library wrapped in the `WaveformProgressIndicator` composable.

Known issues:
 - The waveform has no position slider.
 - The waveform (and together with it the whole message bubble) is taller than the actual Figma design.
 - Swipe to reply for voice messages is disabled to avoid conflict with the audio scrubbing gesture (to reply to a voice message you have to use the long press menu).
 - The loading indicator is always shown (there is no delay).
 - Voice messages don't stop playing when redacted.

## Motivation and context

https://github.com/vector-im/element-meta/issues/2083

## Screenshots / GIFs

Provided by Screenshot tests in the PR itself.
2023-10-24 21:47:51 +00:00
ElementBot
c8dc364147
Sync Strings (#1623)
* Sync Strings from Localazy

* Fix strings

* Update screenshots

---------

Co-authored-by: bmarty <bmarty@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-10-23 08:20:49 +00:00