Commit graph

3690 commits

Author SHA1 Message Date
Damir Jelić
3fa9fc5b7b crypto: Use a background task to fetch user devices 2021-07-21 16:28:12 +02:00
Damir Jelić
cbed5be810 crypto: Move most of the getters of verification objecs into the olm machine 2021-07-21 16:25:28 +02:00
Damir Jelić
38ce3ebed7 crypto: Move the Device class into a separate file 2021-07-21 15:09:21 +02:00
Damir Jelić
8089e972a5 cyrpto: Document the SasVerification class 2021-07-21 14:58:12 +02:00
ganfra
5dda5a107a Missed call notif: make some cleanup and minor changes 2021-07-21 12:28:14 +02:00
Damir Jelić
93615ddba9 crypto: Add docs to the VerificationRequest class 2021-07-21 12:11:11 +02:00
Damir Jelić
b500364322 crypto: Expand the docs for the QrCodeVerification class a bit 2021-07-21 12:10:18 +02:00
Benoit Marty
98720ce4a5
Merge pull request #3707 from poljar/poljar/fix/verification-transaction-id-mixup
crypto: Don't use the transaction ID of the verification for the request
2021-07-21 09:39:22 +02:00
Benoit Marty
e4ae80e348
Merge pull request #3708 from vector-im/dependabot/gradle/com.googlecode.libphonenumber-libphonenumber-8.12.28
Bump libphonenumber from 8.12.27 to 8.12.28
2021-07-21 09:28:19 +02:00
dependabot[bot]
89dc4bb13e
Bump daggerVersion from 2.37 to 2.38
Bumps `daggerVersion` from 2.37 to 2.38.

Updates `dagger` from 2.37 to 2.38
- [Release notes](https://github.com/google/dagger/releases)
- [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/dagger/compare/dagger-2.37...dagger-2.38)

Updates `dagger-compiler` from 2.37 to 2.38
- [Release notes](https://github.com/google/dagger/releases)
- [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/dagger/compare/dagger-2.37...dagger-2.38)

---
updated-dependencies:
- dependency-name: com.google.dagger:dagger
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: com.google.dagger:dagger-compiler
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-20 23:06:50 +00:00
dependabot[bot]
b809d4acf4
Bump libphonenumber from 8.12.27 to 8.12.28
Bumps [libphonenumber](https://github.com/google/libphonenumber) from 8.12.27 to 8.12.28.
- [Release notes](https://github.com/google/libphonenumber/releases)
- [Changelog](https://github.com/google/libphonenumber/blob/master/making-metadata-changes.md)
- [Commits](https://github.com/google/libphonenumber/compare/v8.12.27...v8.12.28)

---
updated-dependencies:
- dependency-name: com.googlecode.libphonenumber:libphonenumber
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-20 23:06:30 +00:00
Damir Jelić
278bba3ada crypto: Don't use the transaction ID of the verification for the request
Verification flows have something called a transaction id. This is a
client-set custom ID that identifies the flow and is established by the
first message that gets sent out. This transaction ID needs to be kept the
same and be part of all events that are sent during the verification flow.

To-device requests have something called a transaction id. This is a
client-set custom ID that identifies a given request. It is used to
ensure idempotency of requests, i.e. retrying to send a request won't
result in two events being sent as long as the transaction id is kept
the same.

This patch removes usage of the first type of transaction ID for the
second use-case.

This closes: #3589.
2021-07-20 17:17:42 +02:00
Damir Jelić
93f36db43c crypto: Add proper scopes to our verification methods 2021-07-20 16:35:50 +02:00
Damir Jelić
2097f4e6c2 crypto: Document the verification methods in the OlmMachine 2021-07-20 16:34:47 +02:00
Damir Jelić
eae2a51a2d crypto: Refactor and document the QR code verification class 2021-07-20 14:30:34 +02:00
David Langley
608a1d3f8f clarify sdk update and cleanup typos 2021-07-20 11:24:17 +01:00
David Langley
da993b5b58 lint 2021-07-19 22:13:23 +01:00
David Langley
89ece22f73 Merge branch 'develop' of github.com:vector-im/element-android into feature/dla/fix_account_notifications_discrepancies 2021-07-19 22:08:34 +01:00
David Langley
a29ccda68e move mutable push rule logic to static declarations as on web 2021-07-19 21:29:46 +01:00
Benoit Marty
40907a71b6 Cleanup 2021-07-19 18:44:57 +02:00
Benoit Marty
a34d445215
Merge pull request #3699 from vector-im/feature/bma/part_dl
Complement for #3656
2021-07-19 18:09:33 +02:00
Benoit Marty
a2996ee042 Rename var 2021-07-19 16:32:02 +02:00
Damir Jelić
b33537fd6e crypto: Use the new CancelInfo struct 2021-07-19 14:21:11 +02:00
Benoit Marty
9f631768eb Avoid crash in debug app 2021-07-19 13:34:51 +02:00
Benoit Marty
2f6d2cfe09 Avoid crash in debug app 2021-07-19 13:31:09 +02:00
Benoit Marty
7643cc506d Remove part file(s) in case of failure
Will not always delete part files in case of crashes
2021-07-19 11:08:03 +02:00
Benoit Marty
9c1bec94c9 Create AtomicFileCreator class to avoid code copy/paste 2021-07-19 10:59:40 +02:00
Benoit Marty
2e64f89ec6
Merge pull request #3656 from SpiritCroc/broken_downloads
Avoid incomplete downloads in cache
2021-07-19 10:50:52 +02:00
Benoit Marty
45efb4386b
Merge pull request #3668 from vector-im/dependabot/gradle/org.amshove.kluent-kluent-android-1.68
Bump kluent-android from 1.67 to 1.68
2021-07-16 18:05:45 +02:00
Benoit Marty
343ea42ef5 Fix issue on Android 21 2021-07-15 17:30:48 +02:00
Paulo Pinto
5d4e71a011 Standardise casing of integration manager
Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
2021-07-15 15:58:50 +01:00
Paulo Pinto
d39e14cc5c Standardise casing of homeserver
Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
2021-07-15 15:58:50 +01:00
Paulo Pinto
74104d7d84 Standardise casing of identity server
Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
2021-07-15 15:58:50 +01:00
Paulo Pinto
e61c8c28bb Standardise spelling and casing of homeserver
Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
2021-07-15 15:58:50 +01:00
Benoit Marty
bb742eb483 Handle record/play error 2021-07-15 15:06:38 +02:00
Benoit Marty
0cf10b2f84 Fix issue with waveform rendering 2021-07-13 18:48:59 +02:00
Benoit Marty
df795d1881 Cleanup 2021-07-13 18:17:11 +02:00
Benoit Marty
6a0ea11e7a Follow the spec regarding waveform content 2021-07-13 17:58:14 +02:00
Benoit Marty
9df874c975 Merge branch 'develop' into feature/ons/voice_message 2021-07-13 10:36:05 +02:00
dependabot[bot]
b0ea022eea
Bump kluent-android from 1.67 to 1.68
Bumps [kluent-android](https://github.com/MarkusAmshove/Kluent) from 1.67 to 1.68.
- [Release notes](https://github.com/MarkusAmshove/Kluent/releases)
- [Changelog](https://github.com/MarkusAmshove/Kluent/blob/master/CHANGELOG.md)
- [Commits](https://github.com/MarkusAmshove/Kluent/commits)

---
updated-dependencies:
- dependency-name: org.amshove.kluent:kluent-android
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 23:07:08 +00:00
TheWayOfTheWarrior
995f9d87bb
Typo in InitializeCrossSigningTask.kt
Typo in comment. Was "userSigningKey" instead of "selfSigningKey".
2021-07-10 22:17:17 +02:00
Damir Jelić
7650e43362 crypto: Add support to scan QR codes during verification 2021-07-10 20:51:47 +02:00
SpiritCroc
4ef1f5c90f Avoid incomplete downloads in cache
Previously, when a download was aborted (e.g. due to a bad internet
connection), a partly downloaded file was remaining in cache, which
would then be delivered upon later requests.
This can lead e.g. to chats where images aren't loading.

To avoid this, first download files to a temporary file that is not the
final cache file, and only rename/move it on finish.

Note that if you already have broken downloads, you still need to clear
cache once to get rid of them after this commit, but it should not
occur anymore afterwards.
2021-07-10 11:12:15 +02:00
Benoit Marty
e391a1371c Merge branch 'develop' into feature/ons/voice_message 2021-07-09 22:19:50 +02:00
Benoit Marty
db80ea6432 Prefer testing attachment.waveform to see if it's a voice message 2021-07-09 22:17:04 +02:00
Benoit Marty
984112e83f Also copy waveform when sending again 2021-07-09 22:15:50 +02:00
Benoit Marty
963eb9daf4 Fix missing duration in audio event, and move AudioWaveformInfo to the proper package 2021-07-09 22:06:09 +02:00
Benoit Marty
2ca0a99dce Follow the spec
https://github.com/matrix-org/matrix-doc/blob/travis/msc/voice-messages/proposals/3245-voice-messages.md#unstable-prefix
2021-07-09 21:49:37 +02:00
Benoit Marty
b26aba9fc0 Remove EventDecryptor and inject the cryptoService when needed
Not used anymore in RoomSummaryUpdater, to avoid a DI dependency loop. let's see if this is a problem
2021-07-09 12:50:34 +02:00
Benoit Marty
910c0ff326
Merge pull request #3648 from vector-im/dependabot/gradle/com.googlecode.libphonenumber-libphonenumber-8.12.27
Bump libphonenumber from 8.12.26 to 8.12.27
2021-07-09 09:47:45 +02:00
Benoit Marty
f609bfaf10 This class is not injected. 2021-07-08 18:39:54 +02:00
Benoit Marty
f8ad024f1b Remove some dead code. 2021-07-08 18:38:49 +02:00
Benoit Marty
54c3b4192e Small cleanup and format 2021-07-08 17:14:45 +02:00
Damir Jelić
d4090c4b0a crypto: Only add our own devices if we're requesting devices for our own user 2021-07-08 16:52:31 +02:00
Damir Jelić
33c2184c52 crypto: Allow verifications to be requested 2021-07-08 12:49:44 +02:00
Benoit Marty
2948f03978
Merge pull request #3551 from vector-im/feature/bca/room_upgrade
Feature/bca/room upgrade
2021-07-08 10:00:01 +02:00
dependabot[bot]
76890a3b26
Bump libphonenumber from 8.12.26 to 8.12.27
Bumps [libphonenumber](https://github.com/google/libphonenumber) from 8.12.26 to 8.12.27.
- [Release notes](https://github.com/google/libphonenumber/releases)
- [Changelog](https://github.com/google/libphonenumber/blob/master/making-metadata-changes.md)
- [Commits](https://github.com/google/libphonenumber/compare/v8.12.26...v8.12.27)

---
updated-dependencies:
- dependency-name: com.googlecode.libphonenumber:libphonenumber
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 23:06:17 +00:00
Onuray Sahin
b1c7cb3219 Lint fixes. 2021-07-07 11:37:01 +03:00
Onuray Sahin
7a1b138894 Merge branch 'develop' into feature/ons/voice_message
* develop: (286 commits)
  Fix crash after video call
  Fix issue on button styles
  Clean after benoits review
  Fix warning about implicit type, introduced in Kotlin 1.5.20. "Returning type parameter has been inferred to Nothing implicitly. Please specify type arguments explicitly to hide this warning. Nothing can produce an exception at runtime."
  Bump kotlin_version from 1.5.10 to 1.5.20
  Bump libphonenumber from 8.12.25 to 8.12.26
  Fix call invite processed after call is ended because of fastlane mode.
  Jump to unread: removes unnecessary check which can cause scroll issue
  Jump to unread: avoid blink when jumping
  Clean after Benoits review
  Delete unused drawable to avoid conflict on develop
  Jump to unread: add towncrier file.
  Read marker: fix some issues with jump to unread visibility.
  Stop using ProgressDialog, there is a theme issue with it. It's not maintain by Google since it's deprecated. Force usage of MaterialAlertDialogBuilder to have the same UI effect. We sometimes need to block the UI :/
  Reordering
  Add text style for dialogs
  Colored dialog button is now handled by the theme
  Update theme for material dialog and create a destructive variant
  Reorder buttons
  Update doc
  ...

# Conflicts:
#	library/ui-styles/src/main/res/values/theme_dark.xml
#	library/ui-styles/src/main/res/values/theme_light.xml
#	vector/build.gradle
#	vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewModel.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/composer/TextComposerView.kt
#	vector/src/main/res/values/strings.xml
2021-07-06 13:17:49 +03:00
Benoit Marty
e22bd8f637
Merge pull request #3593 from vector-im/dependabot/gradle/androidx.test.ext-junit-1.1.3
Bump junit from 1.1.2 to 1.1.3
2021-07-05 21:36:38 +02:00
Benoit Marty
ca45cdd5c7
Merge pull request #3585 from vector-im/feature/bma/wellknown
Improve wellknown usage
2021-07-05 21:36:16 +02:00
Benoit Marty
d29e04f16c Create fun String.getDomain(): String to avoid duplicated code 2021-07-05 16:49:09 +02:00
Benoit Marty
67f41028ff Remove Riot ref: Riot -> Web client 2021-07-05 16:41:26 +02:00
dependabot[bot]
974d5c23d3
Bump junit from 1.1.2 to 1.1.3
Bumps junit from 1.1.2 to 1.1.3.

---
updated-dependencies:
- dependency-name: androidx.test.ext:junit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-05 14:19:54 +00:00
Benoit Marty
d85099f23c
Merge pull request #3595 from vector-im/dependabot/gradle/espresso_version-3.4.0
Bump espresso_version from 3.3.0 to 3.4.0
2021-07-05 16:19:17 +02:00
Benoit Marty
edbf70c820
Merge pull request #3273 from vector-im/feature/bma/cleanup_redundant_fields
Cleanup redundant fields - TO BE MERGED ON JULY 1st
2021-07-05 16:16:33 +02:00
Benoit Marty
b285bd0359 Merge branch 'develop' into feature/bca/room_upgrade 2021-07-05 16:01:27 +02:00
Benoit Marty
c40add88f9
Merge pull request #3617 from vector-im/dependabot/gradle/io.realm-realm-gradle-plugin-10.6.1
Bump realm-gradle-plugin from 10.6.0 to 10.6.1
2021-07-05 14:38:07 +02:00
dependabot[bot]
8639582671
Bump espresso_version from 3.3.0 to 3.4.0
Bumps `espresso_version` from 3.3.0 to 3.4.0.

Updates `espresso-core` from 3.3.0 to 3.4.0

Updates `espresso-contrib` from 3.3.0 to 3.4.0

Updates `espresso-intents` from 3.3.0 to 3.4.0

---
updated-dependencies:
- dependency-name: androidx.test.espresso:espresso-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: androidx.test.espresso:espresso-contrib
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: androidx.test.espresso:espresso-intents
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-05 12:38:04 +00:00
Benoit Marty
5ccfbf4ed8
Merge pull request #3596 from vector-im/dependabot/gradle/androidx.core-core-ktx-1.6.0
Bump core-ktx from 1.5.0 to 1.6.0
2021-07-05 14:37:48 +02:00
Benoit Marty
242962f770
Merge pull request #3594 from vector-im/dependabot/gradle/io.mockk-mockk-android-1.12.0
Bump mockk-android from 1.11.0 to 1.12.0
2021-07-05 14:37:33 +02:00
Benoit Marty
ca39182665
Merge pull request #3592 from vector-im/dependabot/gradle/io.mockk-mockk-1.12.0
Bump mockk from 1.11.0 to 1.12.0
2021-07-05 14:37:20 +02:00
Benoit Marty
f03155bbae
Merge pull request #3591 from vector-im/dependabot/gradle/androidxTest_version-1.4.0
Bump androidxTest_version from 1.3.0 to 1.4.0
2021-07-05 14:37:14 +02:00
Benoit Marty
80b1aa3c01
Merge pull request #3590 from vector-im/dependabot/gradle/androidx.test-orchestrator-1.4.0
Bump orchestrator from 1.3.0 to 1.4.0
2021-07-05 14:37:07 +02:00
Benoit Marty
2513be744c CryptoStore migration has to be object to avoid crash
Thread: main, Exception: java.lang.IllegalArgumentException: Configurations cannot be different if used to open the same file. The most likely cause is that equals() and hashCode() are not overridden in the migration class: org.matrix.android.sdk.internal.database.RealmSessionStoreMigration
2021-07-02 17:29:44 +02:00
Benoit Marty
7dc5d8490f
Merge pull request #3584 from vector-im/feature/bca/fix_oom_spacechild
Fix / dm flattenParents always growing
2021-07-02 09:35:51 +02:00
dependabot[bot]
9430d7a5dd
Bump realm-gradle-plugin from 10.6.0 to 10.6.1
Bumps [realm-gradle-plugin](https://github.com/realm/realm-java) from 10.6.0 to 10.6.1.
- [Release notes](https://github.com/realm/realm-java/releases)
- [Changelog](https://github.com/realm/realm-java/blob/v10.6.1/CHANGELOG.md)
- [Commits](https://github.com/realm/realm-java/compare/v10.6.0...v10.6.1)

---
updated-dependencies:
- dependency-name: io.realm:realm-gradle-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 23:07:36 +00:00
Valere
adcd1a64df empty migration to fix big flattenParentIds for DM 2021-07-01 15:28:26 +02:00
Benoit Marty
ef31aad42c Fix copyright 2021-07-01 14:47:04 +02:00
Damir Jelić
d24c94d0f9 crypto: Allow the direct start of the short SAS flow 2021-07-01 13:15:26 +02:00
Benoit Marty
ed7be13ea3 PR review part 2 2021-07-01 12:51:33 +02:00
Onuray Sahin
9d48b399df Voice message playback implementation. 2021-07-01 10:49:04 +03:00
Damir Jelić
85e4b5eb49 Merge remote-tracking branch 'upstream/develop' into rust-verification 2021-07-01 08:09:33 +02:00
dependabot[bot]
752290424c
Bump core-ktx from 1.5.0 to 1.6.0
Bumps core-ktx from 1.5.0 to 1.6.0.

---
updated-dependencies:
- dependency-name: androidx.core:core-ktx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 23:07:55 +00:00
dependabot[bot]
7316bf4ee0
Bump mockk-android from 1.11.0 to 1.12.0
Bumps [mockk-android](https://github.com/mockk/mockk) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/mockk/mockk/releases)
- [Commits](https://github.com/mockk/mockk/compare/1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: io.mockk:mockk-android
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 23:07:27 +00:00
dependabot[bot]
f1001231d6
Bump mockk from 1.11.0 to 1.12.0
Bumps [mockk](https://github.com/mockk/mockk) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/mockk/mockk/releases)
- [Commits](https://github.com/mockk/mockk/compare/1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: io.mockk:mockk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 23:06:35 +00:00
dependabot[bot]
2ebfeb1709
Bump androidxTest_version from 1.3.0 to 1.4.0
Bumps `androidxTest_version` from 1.3.0 to 1.4.0.

Updates `core` from 1.3.0 to 1.4.0

Updates `runner` from 1.3.0 to 1.4.0

Updates `rules` from 1.3.0 to 1.4.0

---
updated-dependencies:
- dependency-name: androidx.test:core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: androidx.test:runner
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: androidx.test:rules
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 23:06:24 +00:00
dependabot[bot]
3378be935b
Bump orchestrator from 1.3.0 to 1.4.0
Bumps orchestrator from 1.3.0 to 1.4.0.

---
updated-dependencies:
- dependency-name: androidx.test:orchestrator
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 23:06:02 +00:00
Benoit Marty
ec515ced66 PR review part 1 2021-06-30 18:54:13 +02:00
Benoit Marty
3e53fa710a
Merge branch 'develop' into feature/bca/room_upgrade 2021-06-30 17:56:32 +02:00
Damir Jelić
cd5aad9a31 crypto: Move the request sending logic into the sender 2021-06-30 16:28:21 +02:00
Damir Jelić
2c1dc053ed crypto: Support answering in-room verifications 2021-06-30 15:48:24 +02:00
Benoit Marty
7292c4e13d Code quality 2021-06-30 13:57:42 +02:00
Benoit Marty
14ac5a292c Auto review 2021-06-30 12:32:43 +02:00
Benoit Marty
8f3db11693 Perform .well-known request first, even if the entered URL is a valid homeserver base url 2021-06-30 11:52:04 +02:00
Benoit Marty
a61917f2b4 Also change base URL for federationAPI 2021-06-30 11:19:22 +02:00
Benoit Marty
38cb8bd33e Store homeServerUriBase independently that the base URL for client-server API
Also handle the migration for the specific matrix-client.matrix.org URL
2021-06-30 11:07:24 +02:00
Benoit Marty
984b1dd6a8 RawService.getWellknown() now takes a domain instead of a matrixId as parameter 2021-06-30 09:20:08 +02:00
Valere
1d8b95560b Fix / dm flattenParents always growing 2021-06-29 14:57:43 +02:00
Damir Jelić
bcfb121215 crypto: Prepare the verification service to allow starting short SAS flows 2021-06-29 11:12:41 +02:00