-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
non-blocking group QR joins #2508
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
8ef8090
to
98c6a49
Compare
r10s
added a commit
that referenced
this pull request
Sep 23, 2021
this is needed for targeting "non-blocking group QR joins" as create_multiuser_record() would also be needed from other places. this will make rebasing/rewriting and finally reviewing #2508 easier.
|
r10s
added a commit
that referenced
this pull request
Sep 27, 2021
this is needed for targeting "non-blocking group QR joins" as create_multiuser_record() would also be needed from other places. this will make rebasing/rewriting and finally reviewing #2508 easier.
98c6a49
to
16804a5
Compare
e2b2517
to
e5cf462
Compare
r10s
commented
Sep 29, 2021
f4b0052
to
81a40da
Compare
This was referenced Oct 1, 2021
22df3d1
to
dbcd294
Compare
link2xt
previously approved these changes
Oct 3, 2021
dbcd294
to
db68ab2
Compare
e1d9d55
to
6fd2a07
Compare
- the function takes a contact_id directly now. before it consumes the first contact of a one-to-one chat - which may be easily confused with the group-chat in creation. moreover, the conversion contact_id -> chat_id -> contact_id is unneeded overhead.
f1ed3e4
to
41d373f
Compare
a13e9e9
to
43c6d3b
Compare
link2xt
reviewed
Oct 26, 2021
link2xt
approved these changes
Oct 26, 2021
…at after a group-join
This was referenced Oct 26, 2021
make new 'join group' strings translatable, remove superfluous code
deltachat/deltachat-android#2095
Merged
This was referenced Nov 5, 2021
r10s
added a commit
that referenced
this pull request
Nov 5, 2021
not totally sure if that change in #2508 was on-purpose, however, all yet released versions did create the one-to-one chat also on the Inviter's (Alice) side, so, let's stay with that, i do not see many reasons to change that.
r10s
added a commit
that referenced
this pull request
Nov 6, 2021
* test one-to-one chats on setup-contact/secure-join only one chat is created after scanning a QR code: - on setup-contact, one-to-ones are created on both sided - on secure-join, the joined group chat is created; one-to-ones are not created intitally, but should become visible on receiving messages * make sure, Alice creates the chat with Bob on setup-contact not totally sure if that change in #2508 was on-purpose, however, all yet released versions did create the one-to-one chat also on the Inviter's (Alice) side, so, let's stay with that, i do not see many reasons to change that. * unblock hidden (Blocked::Yes) one-to-one chats one-to-one chats may be hidden by secure-join, in case someone later writes a message to it (not unlikely), the chat needs to be shown. before, messages are just not shown, the corresponding chat did not appear. the 'Blocked' wording of a 'Chat' must not be mixed with the 'Blocking' of a contact. 'Chat-Blocking' is mostly a visibility thing, that may change as messages come in. this change should not affect _really_ blocked contacts - they are filtered out already before and their messages are usually not even downloaded. also, before allow_creation is checked, that may disallow chat creation for show_emails reasons. all in all, it just does the same as if the user has manualy deleted the chat before and it would be created. * simplify test
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
targets "dc_join_securejoin() should always return immediately" of #2507
EDIT: with the fix of fix "QR process failed" error and add a test #2725, things should be fine
this is how a scan looks like, the fist screen is shown instantly, even if both devices are offline:
usually, there are only a few seconds between the screenshots, however, if things are in slow networks, nothing blocks using the app as before. the second message does not appear when the contacts already know their keys (shortcut in https://countermitm.readthedocs.io/en/latest/new.html#setup-contact-protocol)
in practise, for UIs, DC_EVENT_SECUREJOIN_JOINER_PROGRESS is no longer needed with this change, however, for now, still existent.
for review: half of the changes result from streamlining the use of
chat_id
: to not mix chats for info-messages/handshake-message/group-chats that may be blocked/unblocked several "semi-global" chat_ids are removed and the decision is done deeper in the code, closer to the final purpose. also some refactoring was done on that way, see the corresponding commits for details.it may make some sense to factor out Alice's part (as already done for Bob), however, that to not make the diff even larger, i avoided that for now; this can be done at some later point, at best without functionality changes then.