renovate[bot]
86a3ec6732
Update dependency io.sentry:sentry-android to v6.34.0
12 months ago
renovate[bot]
7c3804888f
Update dependency com.squareup:kotlinpoet to v1.15.1
12 months ago
renovate[bot]
99dbbc722d
Update dependency me.saket.telephoto:zoomable-image-coil to v0.7.1
12 months ago
renovate[bot]
5267597b69
Update wysiwyg to v2.18.0
12 months ago
renovate[bot]
fe1ffe3aae
Update dependency org.matrix.rustcomponents:sdk-android to v0.1.68
12 months ago
renovate[bot]
63d03be28c
Update dependency com.google.firebase:firebase-bom to v32.6.0 ( #1831 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
8bc2a4d3a5
Update android.gradle.plugin to v8.1.4 ( #1830 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
f80ec8a803
Update wysiwyg to v2.17.0 ( #1827 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
f80ea98e6c
Update media3 to v1.2.0
12 months ago
renovate[bot]
f78ecee19f
Update lifecycle to v2.7.0-rc01
12 months ago
renovate[bot]
24235dccfb
Update plugin dependencyanalysis to v1.26.0 ( #1819 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
fd5f8897f1
Update dependency androidx.browser:browser to v1.7.0
12 months ago
renovate[bot]
8d8ec3adc7
Update activity to v1.8.1
12 months ago
renovate[bot]
d511b837a0
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.6.1
12 months ago
renovate[bot]
5418ef00e1
Update plugin dependencycheck to v8.4.3 ( #1810 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
93fc94cb8f
Update dependency org.jetbrains.kotlinx:kotlinx-collections-immutable to v0.3.6
12 months ago
Benoit Marty
5850f5342d
Move Knit to Gradle catalog and use alias(libs.plugins.kotlin.serialization). Fix issue with JNA
12 months ago
Benoit Marty
485e6bde80
Remove unused entries from the catalog.
12 months ago
Benoit Marty
ecbd7c7b41
Short notation
12 months ago
Benoit Marty
67d58bac35
Move remaining hard-coded dependency to Gradle catalog. We had 2 different version of material3 library.
12 months ago
Benoit Marty
067734ecb9
Move appdistribution declarations to Gradle catalog
12 months ago
Benoit Marty
810203119f
Gradle catalog: do not use version.ref if there is only one module which use it.
12 months ago
Benoit Marty
3a400b5814
Use gradle catalog.
12 months ago
renovate[bot]
1f44d3d421
Update wysiwyg to v2.16.0 ( #1779 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
9e66180d20
Update kotlin ( #1697 )
...
* Update kotlin
* Lower Sonar RAM usage, remove redundant `Dkotlin.daemon.jvm.options`
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
12 months ago
renovate[bot]
ede72b069c
Update android.gradle.plugin to v8.1.3 ( #1762 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
b4c12b608c
Update dependency org.maplibre.gl:android-plugin-annotation-v9 to v2.0.2
12 months ago
renovate[bot]
e2237e0779
Update dependency org.maplibre.gl:android-sdk-ktx-v7 to v2.0.2
12 months ago
renovate[bot]
d0092d8dbe
Update dependency io.sentry:sentry-android to v6.33.1 ( #1752 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12 months ago
renovate[bot]
74ccdf83f6
Update dependency org.matrix.rustcomponents:sdk-android to v0.1.67 ( #1747 )
...
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.67
* Fix breaking change in `RustMediaLoader`.
* Fix breaking change in `DefaultCallWidgetSettingsProvider`
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Marco Romano <marcor@element.io>
1 year ago
Benoit Marty
12ca31282e
Remove dependency on material library.
1 year ago
renovate[bot]
befed299fc
Update showkase to v1.0.2 ( #1383 )
...
* Update showkase to v1.0.2
* Update screenshots
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
1 year ago
renovate[bot]
2a0209e14d
Update dependency androidx.compose.material3:material3 to v1.2.0-alpha10
1 year ago
renovate[bot]
f5ebbe6068
Update dependency com.android.tools:desugar_jdk_libs to v2.0.4 ( #1723 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1 year ago
renovate[bot]
869eb2f4fc
Update dependency io.sentry:sentry-android to v6.33.0
1 year ago
renovate[bot]
7a988257ed
Update dependency io.gitlab.arturbosch.detekt to v1.23.3 ( #1712 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1 year ago
renovate[bot]
8f5c6173d0
Update lifecycle to v2.7.0-beta01 ( #1721 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1 year ago
jonnyandrew
dab5e0d0ca
Add analytics for voice messages ( #1706 )
1 year ago
renovate[bot]
4e7750b70a
Update dependency app.cash.molecule:molecule-runtime to v1.3.0 ( #1717 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1 year ago
renovate[bot]
b0941ca904
Update dependency org.matrix.rustcomponents:sdk-android to v0.1.66
1 year ago
renovate[bot]
7620127b1d
Update dependency org.robolectric:robolectric to v4.11.1
1 year ago
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>
1 year ago
renovate[bot]
5f85707235
Update dependency io.gitlab.arturbosch.detekt to v1.23.2 ( #1699 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
1 year ago
renovate[bot]
170524a605
Update coil to v2.5.0
1 year ago
renovate[bot]
38ae171548
Update dependency com.google.firebase:firebase-bom to v32.5.0
1 year ago
renovate[bot]
8c1893634f
Update dependency org.robolectric:robolectric to v4.11
1 year ago
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>
1 year ago
David Langley
827edecda4
Remove WaveformProgressIndicator and waveform library and lint.
...
-Remove WaveformProgressIndicator - Remove waveform library
- lint.
1 year ago
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>
1 year ago
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.
1 year ago