element-hq / element-x-android

Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose
GNU Affero General Public License v3.0
1.08k stars 155 forks source link

Require acknowledgement to send to a verified user if their identity changed or if a device is unverified. #3461

Closed ganfra closed 2 months ago

ganfra commented 2 months ago

Content

This PR makes the following changes:

Build clients with the requirements to fail when sending to once verified users who aren't (fully) verified any more Show a description of the send failures for verified users in the ActionListView Add a bottom sheet to resolve failures for verified users by tapping on the description above, or by tapping on the failure in the timeline. If there is more than one user ID in the failure, the sheet iterates through them 1 by 1, resolving each one and then dismissing itself at the end.

Motivation and context

Closes https://github.com/element-hq/element-x-android/issues/3459 Closes https://github.com/element-hq/element-x-android/issues/3460

Screenshots / GIFs

Tests

Tested devices

Checklist

github-actions[bot] commented 2 months ago

:iphone: Scan the QR code below to install the build (arm64 only) for this PR. QR code If you can't scan the QR code you can install the build via this link: https://i.diawi.com/zKE1En

codecov[bot] commented 2 months ago

Codecov Report

Attention: Patch coverage is 88.72832% with 39 lines in your changes missing coverage. Please review.

Project coverage is 82.67%. Comparing base (da3f5e0) to head (be3ead0). Report is 16 commits behind head on develop.

Files with missing lines Patch % Lines
...ypto/sendfailure/VerifiedUserSendFailureFactory.kt 50.00% 2 Missing and 6 partials :warning:
...lure/resolve/ResolveVerifiedUserSendFailureView.kt 89.06% 1 Missing and 6 partials :warning:
...failure/resolve/VerifiedUserSendFailureResolver.kt 82.75% 1 Missing and 4 partials :warning:
...resolve/ResolveVerifiedUserSendFailurePresenter.kt 87.87% 1 Missing and 3 partials :warning:
...failure/resolve/VerifiedUserSendFailureIterator.kt 80.95% 2 Missing and 2 partials :warning:
...eatures/messages/impl/actionlist/ActionListView.kt 90.90% 0 Missing and 3 partials :warning:
...essages/impl/pinned/list/PinnedMessagesListView.kt 50.00% 2 Missing :warning:
...atures/messages/impl/timeline/TimelinePresenter.kt 60.00% 2 Missing :warning:
...es/messages/impl/actionlist/ActionListPresenter.kt 80.00% 0 Missing and 1 partial :warning:
.../impl/timeline/components/ATimelineItemEventRow.kt 0.00% 1 Missing :warning:
... and 2 more
Additional details and impacted files ```diff @@ Coverage Diff @@ ## develop #3461 +/- ## =========================================== + Coverage 82.62% 82.67% +0.05% =========================================== Files 1701 1710 +9 Lines 40015 40303 +288 Branches 4868 4913 +45 =========================================== + Hits 33061 33322 +261 - Misses 5233 5237 +4 - Partials 1721 1744 +23 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

sonarcloud[bot] commented 2 months ago

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
0.0% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarCloud

ElementBot commented 2 months ago
Messages
:book: This pull request seems relatively large. Please consider splitting it into multiple smaller ones.
:book: Sign-off not required, allow-list

Generated by :no_entry_sign: dangerJS against be3ead0db96934570d1ee0811607df0e5f0a133e