Commit Graph

1950 Commits

Author SHA1 Message Date
Benoit Marty ba004187f0 Merge pull request #1709 from vector-im/feature/bma/secureBackupIteration
Secure backup iteration
2023-10-31 21:51:29 +01:00
Benoit Marty 7e1b991654 Consider keys are backing up only for SteadyStateException.Connection 2023-10-31 21:03:43 +01:00
Benoit Marty 2f62779ad4 Sign out: handle no network error. 2023-10-31 21:03:43 +01:00
Benoit Marty 4fb825b5cb TimelineEncryptedHistoryBannerView: render depend on verification and key backup state (#1576) 2023-10-31 21:03:43 +01:00
Benoit Marty 20d6383b8a Map new state BackupUploadState.Error 2023-10-31 21:03:43 +01:00
ganfra 01f4175b79 Pin unlock : implement design for in-app unlock 2023-10-31 20:12:45 +01:00
ganfra 6832b1f2db Feature/fga/biometric unlock (#1702)
* Biometric unlock : refactor a bit existing classes

* Biometric unlock : first implementation

* Biometric: add ui for biometric setup

* Biometric unlock : use localazy strings

* Biometric unlock setup : branch skip/allow events

* Biometric : fix tests

* Biometrics: add small test

* Biometric : clean up

* Update screenshots

* Biometric unlock : address some PR review

* Biometric : improve a bit edge cases

* Fix lint issues

---------

Co-authored-by: ganfra <francoisg@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-10-31 19:22:43 +01:00
Benoit Marty 89e7ff44a2 Merge pull request #1703 from vector-im/feature/bma/featureFlagFlow
Change FeatureFlagService.isFeatureEnabled return value from Boolean to Flow<Boolean>
2023-10-31 17:14:59 +01:00
Jorge Martin Espinosa 355ee95964 [Element Call] Keep MatrixClient alive while the call is working (#1695)
* Element Call: keep MatrixClient alive to get event updates
2023-10-31 16:58:33 +01:00
Benoit Marty b5c68f1b95 Fix tests 2023-10-31 16:49:19 +01:00
jonnyandrew 95a2152714 Fix long press on voice message with screen reader (#1704)
As a workaround, disable seeking within the waveform so that it does
not interfere with the long press menu.

Seeking behaviour is already suboptimal given that there is no spoken
feedback about the current seek position. No core functionality is
lost as voice messages can be played using a screen reader.
2023-10-31 13:00:08 +00:00
Benoit Marty 5728d621bb Merge pull request #1648 from vector-im/feature/bma/secureBackup
Secure backup
2023-10-30 21:29:54 +01:00
Benoit Marty a63cd90b39 Merge pull request #1687 from vector-im/sync-localazy
Sync Strings
2023-10-30 20:20:29 +01:00
Benoit Marty 2d2088ce9a Fix test. 2023-10-30 20:16:18 +01:00
Benoit Marty 90b377b3a5 Secure Storage: improve API for waitForBackupUploadSteadyState() 2023-10-30 20:16:18 +01:00
Benoit Marty 0db487fa42 Secure backup and sign out: add TopBar with Back button. 2023-10-30 20:16:18 +01:00
Benoit Marty dc1bbb0145 Enter recovery key: add Done ime action. 2023-10-30 20:16:18 +01:00
Benoit Marty 19236c0602 Replace it by when. 2023-10-30 20:16:18 +01:00
Benoit Marty 12efed3a94 Move SecureBackupConfig to the appconfig module. 2023-10-30 20:16:18 +01:00
Jorge Martin Espinosa 356a321788 Fix issues with stuck 'loading...' state and hangup (#1690)
* Fix issues with stuck 'loading...' state and hangu
2023-10-30 17:01:54 +01:00
bmarty ffd02b831e Sync Strings from Localazy 2023-10-30 14:50:36 +00:00
jonnyandrew e98ed3f0aa Keep screen on during voice message recording (#1684) 2023-10-30 12:37:10 +00:00
Benoit Marty 6c146f0033 Merge pull request #1680 from vector-im/sync-localazy
Sync Strings
2023-10-30 12:38:41 +01:00
Jorge Martin Espinosa e64f822f5a Enable Element Call integration in rooms by default (#1685)
Also change base url to `call.element.dev`.
2023-10-30 11:33:22 +00:00
Marco Romano 7651cf1b33 Voice message button: Show proper disabled color. (#1682)
Also changes a bit our own IconButton api to allow to mirror material's and allow color customization.
2023-10-30 10:51:22 +00:00
Marco Romano 2aa9bf967b Add a11y label to voice messages (#1683) 2023-10-30 10:41:15 +00:00
bmarty 8350382440 Sync Strings from Localazy 2023-10-30 00:10:04 +00:00
Marco Romano 563aaa6102 Don't show body in replies to voice messages but rather show "Voice message" string (#1673)
Story: https://github.com/vector-im/element-meta/issues/2106
2023-10-27 21:57:05 +00:00
jonnyandrew 8121d1a6de Show voice message preview player progress (#1675)
* Show voice message preview player progress

* Update screenshots

* Fix test

* Some nits over mediaplayer stuff

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Marco Romano <marcor@element.io>
2023-10-27 20:43:52 +00:00
Benoit Marty b77089f1b6 Merge pull request #1662 from vector-im/feature/bma/secureBackupUi
Secure backup UI
2023-10-27 18:36:38 +02:00
jonnyandrew b046493a7b Merge pull request #1671 from vector-im/jonny/voice-message-fixes
Fix voice message preview player playing after delete/send
2023-10-27 16:49:38 +01:00
Marco Romano 81122ec33b Track errors in VoiceMessagePresenter (#1667)
Story: https://github.com/vector-im/element-meta/issues/2085
2023-10-27 15:23:53 +00:00
Marco Romano ed91930a97 Enable swipe to reply on voice messages (#1668)
With the new waveform view it does not conflict anymore.
2023-10-27 15:10:56 +00:00
jonnyandrew 08ba8e182a Ensure sending pauses audio 2023-10-27 16:05:35 +01:00
jonnyandrew 71644910e8 Ensure deleting pauses audio 2023-10-27 16:05:34 +01:00
Marco Romano a07286ace9 Split VoiceMessageType from AudioMessageType (#1664)
Currently, for compatibility reasons, we implement MSC3245v1 which puts the voice data inside an audio message type. Though at times it seems impractical to deal with a single message type which effectively represents 2 different kinds of messages.

This PR creates a new message type called `VoiceMessageType` which is used whenever we receive an event with `"msgtype": "m.audio"` which also has the `"org.matrix.msc3245.voice": {}` field. This makes it easier to process voice messages as different entities throughout the rest of the codebase.
2023-10-27 16:02:16 +02:00
David Langley a4df8f80cc Merge branch 'develop' of https://github.com/vector-im/element-x-android into langleyd/live_waveform 2023-10-27 13:54:18 +01:00
Marco Romano 0e4141863b Always treat waveform as List<Float> (#1663)
[MSC3246](https://github.com/matrix-org/matrix-spec-proposals/pull/3246) specifies the waveform as a list of ints because:

> Because floating point numbers are not allowed in Matrix events

Though DSP on audio data is almost always done using their floating point representation.
This PR brings the float<->int rescaling in the `matrix` module so that the application code can always work with float waveform samples.
2023-10-27 12:49:58 +00:00
Marco Romano a6e4644cfa Add missing screenshots in TimelineView (#1660)
Add audio, voice  and poll screenshots to TimelineView which were missing.
2023-10-27 12:18:28 +00:00
David Langley a64003355a Merge branch 'develop' of https://github.com/vector-im/element-x-android into langleyd/live_waveform 2023-10-27 13:10:32 +01:00
David Langley 977c7e265a Fix naming and waveform previews 2023-10-27 13:06:33 +01:00
jonnyandrew 9510d43289 Add waveform to voice message preview UI (#1661)
* Add waveform to preview UI

* Update screenshots

* Make random waveform function deterministic

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-27 11:33:35 +00:00
David Langley 37f8195956 Merge branch 'develop' of https://github.com/vector-im/element-x-android into langleyd/live_waveform 2023-10-27 12:28:46 +01: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
Benoit Marty 9807ebf649 Secure backup 2023-10-27 12:18:40 +02:00
Marco Romano b2a61f2ed3 Show correct UI when replying to a voice message (#1658)
Shows voice messages in the room summary.
Shows voice messages in the reply context menu and composer.
Show replies to voice messages in the timeline. 

(before this PR voice messages were shown the same as audio messages)

Story: https://github.com/vector-im/element-meta/issues/2106
2023-10-27 11:30:57 +02:00
Benoit Marty bf905dd79b Merge pull request #1651 from vector-im/feature/bma/uiUpdate
Preparatory work for SecureBackup: UI update
2023-10-27 11:03:29 +02:00
David Langley 0745587f3b Merge branch 'develop' into langleyd/live_waveform 2023-10-27 09:37:21 +01:00
David Langley 1cb27661c8 Fix tests 2023-10-27 09:32:05 +01:00
Marco Romano b5586cb7d8 Move MediaPlayer from messages module to new dedicated library module (#1654) 2023-10-27 09:58:17 +02:00