Commit Graph

4265 Commits

Author SHA1 Message Date
Benoit Marty 9807ebf649 Secure backup 2023-10-27 12:18:40 +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
ganfra ae6881c4f5 Merge pull request #1655 from vector-im/renovate/com.google.firebase-firebase-appdistribution-gradle-4.x
Update dependency com.google.firebase:firebase-appdistribution-gradle to v4.0.1
2023-10-27 10:30:06 +02:00
Marco Romano b5586cb7d8 Move MediaPlayer from messages module to new dedicated library module (#1654) 2023-10-27 09:58:17 +02:00
Benoit Marty aaaad23612 Merge pull request #1653 from vector-im/feature/bma/secureBackupSdk
SecureBackup: update matrix sdk module.
2023-10-27 09:35:19 +02:00
renovate[bot] 515dca86b6 Update plugin com.google.firebase.appdistribution to v4.0.1 (#1656)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-27 08:12:44 +02:00
renovate[bot] a7cfb610b1 Update dependency com.google.firebase:firebase-bom to v32.4.1 (#1657)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-10-27 07:37:33 +02:00
renovate[bot] 1fc0b8f45d Update dependency com.google.firebase:firebase-appdistribution-gradle to v4.0.1 2023-10-26 21:47:50 +00:00
Marco Romano 0457e5915c Convert mx waveform to floats as early as possible in the chain (#1652)
This way we're sure that internally we always deal with [0;1] float samples. the [0;1024] int range is used only at the rust sdk boundary.
2023-10-26 16:58:00 +00:00
Benoit Marty 3a15b92eb6 SecureBackup: update matrix sdk module. 2023-10-26 18:02:34 +02:00
Benoit Marty bf5047647a Fix warning: Composable functions should only be emitting content into the composition from one source at their top level. 2023-10-26 17:49:13 +02:00
Benoit Marty ea9c7f5b10 Rename file. 2023-10-26 17:40:51 +02:00
ElementBot 4a7dc3feda Update screenshots 2023-10-26 17:40:51 +02:00
Benoit Marty 96dd7bbd8d Use DialogLikeBannerMolecule in NotificationSettingsView. 2023-10-26 17:40:51 +02:00
Benoit Marty fa2a2e2f7f Design: extract DialogLikeBannerMolecule from RequestVerificationHeader 2023-10-26 17:40:51 +02:00
Benoit Marty 93e05e9d9f Preference: Add badge to the icon preference. 2023-10-26 17:40:51 +02:00
Benoit Marty bec12c4cca Design kit: add destructive dialog action 2023-10-26 17:40:51 +02:00
Benoit Marty e9e050a6d8 Design kit: add destructive buttons. 2023-10-26 17:40:51 +02:00
Benoit Marty cb8c6f3eb1 Add RedIndicatorAtom 2023-10-26 17:40:51 +02:00
Marco Romano 00d24ce4b1 Include waveform when sending voice messages (#1650)
- New `AudioLevelCalculator` that outputs dB0v rescaled to the [0;1] range.
- `VoiceRecorder` now stores the audio levels sampled while recording, then resamples them to 100 samples to use as waveform preview.
- Waveform data is carried all the way as a `List<Float>` and converted to `List<Int>` in the [0;1024] range as per matrix spec only before sending it.
2023-10-26 17:37:24 +02:00
jonnyandrew a67410f573 Add voice message preview player (#1646)
---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-26 15:33:58 +00:00
jonnyandrew acd7aef6be Move waveform UI to design system library (#1649) 2023-10-26 15:15:42 +00:00
ganfra ec9b6ba62f Merge pull request #1642 from vector-im/feature/fga/pin_settings
PIN : settings and branch flow
2023-10-26 16:40:38 +02:00
Jorge Martin Espinosa 030e86f56b Update the chat screen UI using RoomInfo. (#1640)
* Update the chat screen UI using `RoomInfo`.

This is specially useful for getting live values for `hasRoomCall`.

* Ensure the first `MatrixRoomInfo` is emitted ASAP

* Try excluding `*Present$present$*` inner functions from kover as separate entities

* Update strings

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-10-26 14:27:42 +00:00
ElementBot 6d5ce88153 Update screenshots 2023-10-26 13:45:59 +00:00
ganfra b355d9fb64 PIN: address PR review 2023-10-26 15:28:18 +02:00
ganfra ca6a30d6cc PIN : fix quality 2023-10-26 15:25:40 +02:00
Marco Romano 3ec62ad58a Use Float instead of Double for all the level metering logic. (#1645)
This is in preparation of further changes to the way the audio level is computed and to allow recording and sending of the waveform. The main reasoning behind the change is twofold:
1) We don't need the precision of Double in our context (we just need a rough indication of the changes in audio level to successfully draw a level meter or a waveform in our UI).
2) Performance: It is true that on 64 bit CPUs single operations involving Floats or Doubles take the same amount of time (i.e one clock cycle). But there are other aspects here that vouch in favor of Floats:
	- A float takes half the space in memory compared to a double, so when storing long lists of them this can add up.
	- On Android O and greater the ART runtime can "vectorize" certain operations on lists and make use of the CPU's SIMD registers which are generally 128 bits. So by using floats 4 of them can fit and be computed at the same time whilst with doubles only 2 will fit halving the throughput.

References:
- https://source.android.com/docs/core/runtime/improvements
- https://www.slideshare.net/linaroorg/automatic-vectorization-in-art-android-runtime-sfo17216
2023-10-26 12:55:23 +00:00
David Langley b9b3bce2a2 Merge pull request #1641 from vector-im/langleyd/custom_waveform
Add custom waveform with cursor and nice gesture support.
2023-10-26 13:52:47 +01:00
ganfra a7c83a94d3 PIN : Fix SetupPinPresenterTest 2023-10-26 14:39:13 +02:00
ganfra e864871c0e PIN : Fix test compilation 2023-10-26 13:10:25 +02:00
Marco Romano eca7d705a7 Merge branch 'develop' into langleyd/custom_waveform 2023-10-26 13:07:45 +02:00
Marco Romano 7d1b671426 Refactor of voice message playing code (#1643)
After PR review suggestions from @jonnyandrew 
User facing functionality doesn't change, but overall architecture and testing is better.
2023-10-26 12:51:12 +02:00
ElementBot c96dc310c8 Update screenshots 2023-10-26 09:32:15 +00:00
ganfra 5d98f645d2 Merge branch 'develop' into feature/fga/pin_settings 2023-10-26 11:13:52 +02:00
ElementBot 762e091b06 Update screenshots 2023-10-26 08:26:46 +00:00
David Langley bcb928cf30 -Fix waveform preview 2023-10-26 09:10:38 +01:00
David Langley 20cef08367 Don't need added state from bad merge. 2023-10-26 09:06:08 +01:00
David Langley 5529cb4457 Remove WaveformProgressIndicator call. 2023-10-26 09:02:31 +01:00
David Langley 4de6a5cdd9 Merge branch 'develop' of https://github.com/vector-im/element-x-android into langleyd/custom_waveform 2023-10-26 09:02:14 +01:00
David Langley 827edecda4 Remove WaveformProgressIndicator and waveform library and lint.
-Remove WaveformProgressIndicator - Remove waveform library
- lint.
2023-10-26 08:58:03 +01:00
renovate[bot] 71ef76ad86 Update dependency org.matrix.rustcomponents:sdk-android to v0.1.65 (#1639)
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.65

* Fix broken verification flow

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-10-26 08:59:06 +02:00
David Langley 296cd7ca14 Add custom waveform with cursor and nice gesture support. 2023-10-25 22:12:01 +01:00
ganfra fdd9396089 Pin: add tests and make LockScreenConfig an injectable data class 2023-10-25 18:39:39 +02:00
Marco Romano 9cf17dfa12 Voice message bubble design improvements (#1637)
- Fixes color and size of both text and icons.
2023-10-25 17:33:50 +02:00
ganfra 3c5bff0927 Pin : clean remaining pin code attempts 2023-10-25 16:54:34 +02:00
ganfra 626a884e1f PIN: clean pin code storage 2023-10-25 16:45:42 +02:00
ganfra adf21e0e02 PIN: fix and add tests 2023-10-25 16:13:30 +02:00
ganfra 49e2060961 PIN unlock : makes sure to load the pin size from storage 2023-10-25 15:07:05 +02:00
ganfra 2cb0addd3e PIN: add callback on LockScreenEntryPoint 2023-10-25 11:27:19 +02:00