Commit Graph

102 Commits (master)

Author SHA1 Message Date
Alan Evans 284f221a9d
Handle no actual change to group. 2020-10-12 15:11:57 -03:00
Greyson Parrelli 63746bbb47 Add support for syncing forced unread status. 2020-10-07 17:22:05 -04:00
Alan Evans adf1674877 Support sgnl://signal.group links. 2020-10-07 17:22:05 -04:00
Greyson Parrelli ab2235fc88 Prefer remote value for profile sharing for groups during storage sync. 2020-10-07 17:22:05 -04:00
Alan Evans 38fa58c0a3
Write previous group state to the database for advanced change messages. 2020-10-06 11:21:56 -03:00
Greyson Parrelli 864a1d5e93 Prefer remote value for profile sharing during storage sync. 2020-09-24 12:41:31 -04:00
Alan Evans a05f74d302 Do not set color before profile name is known. 2020-09-23 16:54:38 -04:00
Greyson Parrelli 97b7b4a501 Fix crash when receiving SMS before finishing registration.
If someone has set Signal as the default SMS but has cleared data or
otherwise reset the app's storage state, it can get into a weird
situation. Notably, it'll crash because SmsReceiveJob.onRun() expects
Recipient.self() to be available.

However, it also makes it impossible to get the registration SMS,
because the app won't post a notification for the code.

This change will post notifications and SmsRetriever broadcasts for
relevant SMS messages.
2020-09-23 16:54:38 -04:00
Cody Henthorne ca442970a3 Add Research Megaphone. 2020-09-23 16:54:38 -04:00
Greyson Parrelli d0dfcaaad5
Fix issue with storage key intersections.
- When doing the intersection, ignore keys that have type mismatches (same storageId, different types)
- If we detect that scenario, schedule a force push to happen afterwards
- Also schedule a force push afterwards if we detect that there's keys in the manifest that don't have any storage item on the service
2020-09-10 14:01:41 -04:00
Alan Evans 3cffaddc0a
Validate incoming Group lengths and remote delete entries if wrong.
Ignore incoming messages with bad V1 group lengths.
2020-09-10 14:39:29 -03:00
Greyson Parrelli 2784285d47
Add support for fetching remote deprecation. 2020-09-08 18:03:56 -04:00
Alan Evans c797b09228 Set profile sharing based on who added you to the group. 2020-09-08 09:47:57 -04:00
Alan Evans abd3d4b546 Group link copy changes. 2020-09-03 20:23:26 -04:00
Greyson Parrelli 4fefd14538 Add unit test to prevent shipping forced feature flags. 2020-08-27 11:14:20 -04:00
Greyson Parrelli b1befbeefc Add additional LinkPreviewUtil unit tests.
Also updated the date format -- funnily enough Android will work with
either Z or X in the format, but the test JVM will fail if it doesn't
use X. X is definitely the correct thing to use based on the Javadoc, I
think Android's implementation is just a little more lenient.
2020-08-27 09:32:33 -04:00
Panagiotis Vasilopoulos 3a9a84a0b1 Do not attempt to create link previews for .i2p links 2020-08-27 10:01:50 -03:00
Alan Evans 860f06ec9e
Join group via invite link. 2020-08-26 12:51:25 -03:00
Alan Evans 92ecf2d5de
Add group link join version feature flag. 2020-08-25 16:35:06 -03:00
Greyson Parrelli 190ca9eddd Have DatabaseFactory.getSmsDatabase() return MessageDatabase.
Slowly moving towards a single interface.
2020-08-24 11:16:41 -03:00
Alan Evans ffcb90da52 Accept any length group link password. 2020-08-24 11:16:41 -03:00
Alan Evans 878b0c9275 Change group invite link host. 2020-08-24 11:16:41 -03:00
Alan Evans 477bb45df7 Group invite link epoch support. 2020-08-19 16:32:01 -04:00
Alan Evans 1f1fc94d22
Fix flakey robolectric test. 2020-08-18 11:57:35 -03:00
Greyson Parrelli 3f7dd21186 Do not attempt to create link previews for .onion links. 2020-08-17 10:27:30 -04:00
Cody Henthorne e428453835 Fix conversation list bug with pinned chats.
Co-authored-by: Alex Hart <alex@signal.org>
2020-08-14 15:54:06 -04:00
Alan Evans e4456bb236 Handle GV2 addresses. 2020-08-14 15:54:05 -04:00
Alan Evans 3c90dfa660 Ensure a GV2 update message mentioning you as a new member is first in the list. 2020-08-14 15:54:05 -04:00
Greyson Parrelli 6e6105af05 Open up link previews to work with all sites. 2020-08-14 15:54:05 -04:00
Alan Evans 810ccf8e94 Improve GV2 Invitation revoke experience. 2020-08-06 20:57:50 -04:00
Cody Henthorne b2d4c5d14b Add mentions for v2 group chats. 2020-08-06 20:57:50 -04:00
Alan Evans 26868ae668 Get authoritative profile keys from group changes only. 2020-08-06 20:57:50 -04:00
Greyson Parrelli 8ed7fc894e Improve handling of partially bi-directional text. 2020-07-29 23:19:21 -04:00
Alan Evans 745a7f76ea Change position of GroupsV2 leave update message. 2020-07-28 15:20:20 -04:00
Alan Evans bd1c164d57 Live group update messages on conversation list and conversation. 2020-07-28 15:20:20 -04:00
Alan Evans ab76112f5f Prevent leading and trailing whitespace in group names. 2020-07-28 15:19:52 -04:00
Alex Hart ed878ec4b4 Add more generic SMS verification code pattern. 2020-07-27 17:57:56 -04:00
Greyson Parrelli fc4e690996 Revert "Ensure GV1 length is exactly the length expected."
This reverts commit 8e962bf992.
2020-07-22 22:58:21 -04:00
Greyson Parrelli 870cee5707 Remove uuidOnlyContacts feature flag. 2020-07-21 15:31:53 -04:00
Alan Evans 8e962bf992 Ensure GV1 length is exactly the length expected. 2020-07-21 15:31:53 -04:00
Cody Henthorne 70977e5228 Show expiration time exactly as set instead of rounding. 2020-07-19 09:32:16 -04:00
Alan Evans 9ac9ace6b8 Groups V2 state comparison and gap handling. 2020-07-08 17:12:19 -04:00
Greyson Parrelli 33c527f15e Remove the final KBS feature flags. 2020-07-08 16:51:30 -04:00
Greyson Parrelli 5605fde777 Rename the UUID flag to be more explicit. 2020-07-08 16:51:30 -04:00
Greyson Parrelli 2791790bf5 Implement new CDS changes. 2020-07-08 16:51:30 -04:00
Alan Evans eafccc5721
Add GV2 copy for the unknown editor. 2020-06-30 14:46:10 -03:00
Greyson Parrelli 87a59b6a9b Add support for memory-only jobs. 2020-06-25 18:14:54 -04:00
Greyson Parrelli f8a0988e5f Various JobManager performance improvements. 2020-06-25 08:29:48 -04:00
Greyson Parrelli 3d7cffef2b Remove Message Requests feature flag. 2020-06-16 19:30:35 -04:00
Alex Hart 49f75d7036 Migrate ConversationList to paging library and apply abstractions to conversation. 2020-06-16 19:30:35 -04:00