Commit Graph

814 Commits

Author SHA1 Message Date
andrew
30d748e147 Disable unblock button 2023-05-19 23:44:07 +09:30
0x330a
371fb20b6e fix: added more migration code for deleting unnecessary threads and groups, fixed a post-migration last seen issue on last item (current read is now), comment out actual network sync while testing migrations 2023-05-19 20:01:50 +10:00
0x330a
f7b8a90edb
fix: some compile issues in tests and some TODOs for things to do before merge 2023-05-17 11:58:47 +10:00
0x330a
cf171fc371 feat: update libsession-util, adjust docs, update mms and sms to use message sent timestamp instead of -1 for last read in the thread 2023-05-16 12:09:28 +10:00
0x330a
dcbe548891
fix: self sync sync message failures for default values 2023-05-15 15:03:44 +10:00
0x330a
8f51304ec1
refactor: use just first visible instead of completely visible, merge message sender changes 2023-05-12 17:23:48 +10:00
0x330a
42dbd11255
Merge remote-tracking branch 'upstream/dev' into libsession-integration
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt
#	app/src/main/java/org/thoughtcrime/securesms/util/ViewUtilities.kt
#	libsession/src/main/java/org/session/libsession/messaging/messages/visible/VisibleMessage.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSender.kt
2023-05-12 16:29:26 +10:00
Andrew
57476cd56e
Fix scroll to bottom button always visible if last item is taller than RecyclerView 2023-05-11 19:48:10 +09:30
0x330a
5a2dac38c6
refactor: disable edit text for non contacts 2023-05-11 17:43:55 +10:00
0x330a
db18b156a3
feat: add in TTL extension subrequest and builder, enable extending TTLs for all latest config messages in poll as subrequest 2023-05-11 12:21:14 +10:00
0x330a
bad5f923aa
fix: re-poll on fail in case that was breaking anything 2023-05-11 10:50:06 +10:00
0x330a
cd66901412 fix: don't set the read flag in update notifications, some roundabout logic for first loads and scrolling to last known positions 2023-05-10 12:46:30 +10:00
ryanzhao
fa71ea1850 make RetrieveProfileAvatarJob work 2023-05-09 14:14:49 +10:00
Ryan Zhao
b494088c3d WIP: further refactor on old jobs 2023-05-08 17:12:20 +10:00
andrew
f0715f16e0 Fix scroll to bottom button always visible if last item is taller than RecyclerView 2023-05-08 14:09:01 +09:30
andrew
ec2abffdcc Remove logs 2023-05-08 10:33:39 +09:30
0x330a
d4d4f81c36 fix: remove user notifications for leaving group to prevent synced device issues, don't create thread in messages for new closed groups, includei nactive groups in the deletion queries for merging group configs 2023-05-05 16:05:43 +10:00
andrew
d3ce899a80 Synchronize all Cipher#doFinal 2023-05-05 12:07:19 +09:30
andrew
45eb3549f6 Add sync status message 2023-05-04 17:01:45 +09:30
0x330a
18f16bc045
refactor: try to add a retry logic to config sync job in case of snode failure 2023-05-04 11:27:49 +10:00
0x330a
281b8dac33 fix: checking the last read open to message and make sure that scroll behaviour matches expected, fix the config sync job not deleting ALL old hashes only latest 2023-05-03 19:26:40 +10:00
0x330a
f7b4fe216f fix: removing debug logs, adding failure error handling logs for expiry message updater, properly using the message thread ID created for the expiring messages. Process the non-thread messages properly with await in BatchMessageReceiveJob 2023-05-02 16:30:35 +10:00
0x330a
216070fa5d
fix: finally fix the darn unread count issue by 2023-05-01 14:39:17 +10:00
0x330a
c777c05456
fix: add legacy config subscription to the home activity to enable showing banner at any time 2023-04-24 12:03:07 +10:00
0x330a
fdff11c535
feat: setup android unit tests for verifying storage behaviours and state of shared configs 2023-04-17 18:17:03 +10:00
0x330a
2e673901ba
feat: add shortened hex for session IDs throughout, replace nullable getName with null in underlying contacts for individual contacts, build shared lib with release mode, remove todo, fix broken unit test 2023-04-17 14:01:30 +10:00
0x330a
3528afa2fb
fix: fix the placeholder rendering on new messages, add in extra context logging for adding contacts and preventing new thread creation on new messages of various types 2023-04-13 17:32:37 +10:00
0x330a
2ebd6ebf64 fix: fix up the duplicate thread creation in the message receive handler 2023-04-13 01:31:25 +10:00
0x330a
6d37fb29ab
fix: don't recreate thread after leaving 2023-04-06 16:39:40 +10:00
0x330a
7e4e36c3f7
Merge remote-tracking branch 'upstream/dev' into libsession-integration 2023-04-05 15:59:19 +10:00
0x330a
b25eb9af8e
Use new seed node certificates (#1144)
* fix: use new seed node certificates

* refactor: don't need to include subdomains actually
2023-04-05 15:58:56 +10:00
0x330a
5acaffda56
feat: update dependencies and support outdated config messages, refactor config factory to return null configs if new configs not supported 2023-04-03 17:22:51 +10:00
0x330a
819f340f0b refactor: update kotlin 2023-04-02 22:14:05 +10:00
0x330a
d5e4e6b7cd Merge remote-tracking branch 'upstream/dev' into libsession-integration
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt
#	app/src/main/java/org/thoughtcrime/securesms/database/ThreadDatabase.java
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSender.kt
#	libsession/src/main/java/org/session/libsession/snode/SnodeAPI.kt
2023-03-31 13:41:41 +11:00
Morgan Pretty
eb739bdc9b
ANR Defensive Coding (#1132)
* Made a number of changes to try and improve background ANRs

Added some more logs to the BatchMessageReceiveJob (to make it easier to track a specific job)
Shifted the ConversationActivity adapter initialisation to run on a background thread to reduce the hang when opening a conversation
Updated the ConversationViewModel to cache the recipient and openGroup values to avoid accessing the database unnecessarily
Updated the code to just stop all current closed group pollers instead of fetching a list to stop
Updated the PN registration to be triggered in an AsyncTask
Updated the call code to unregister a couple of additional receivers
Updated the background poller so it waits for 15 mins before running and doesn't replace the existing scheduler (allows for PNs to trigger explicit background polling)
Fixed an issue where we were sending push notifications which were too large and likely to fail as a result (non-pre-offer call messages)
Fixed an issue where a failing Open Group poller could prevent the background poller from receiving and processing DMs

* Updated to a more coroutine-y convention
2023-03-31 13:24:36 +11:00
Morgan Pretty
5e28af2be4
Updated the code to use the network offset time everywhere relevant (#1111)
* Updated the code to use the network offset time everywhere relevant

* Updated the SnodeAPI.nowWithOffset to use @JvmStatic
2023-03-31 10:11:30 +11:00
0x330a
38454bedfc fix: database update not deleting in certain circumstances, storage persisting and removing the volatile convo info for thread deletion / creation, NTS hidden getter values in shared library 2023-03-31 09:01:52 +11:00
0x330a
d3c55fad60
feat: support avatar removal from shared library 2023-03-27 11:07:14 +11:00
0x330a
03d3199ed2
Merge remote-tracking branch 'origin/libsession-integration' into libsession-integration 2023-03-24 11:18:32 +11:00
0x330a
aadbcf36d0
feat: add in activity finish if recipient no longer exists (deleted thread) from sync 2023-03-24 11:18:14 +11:00
0x330a
2af0cc7bb2 fix: open group sync persistence 2023-03-17 11:53:10 +11:00
0x330a
0fc5675e42
feat: add groups to configs for push 2023-03-16 12:16:10 +11:00
0x330a
061cff8437
feat: open group joining should work now 2023-03-16 12:15:21 +11:00
Ian Macdonald
405b8c7d28
Allow user display names of up to 64 bytes. (#981) 2023-03-16 10:38:49 +11:00
0x330a
c28fe290df feat: add almost all group editing cases, need to hook into the thread deletion for groups in the user groups 2023-03-15 17:24:17 +11:00
0x330a
eca5712282
feat: add expiration updates via config for contacts as well 2023-03-09 17:35:48 +11:00
0x330a
a9e6db4734
refactor: change how expiration timer works for contacts, set the expiration timer for those conversations in handling contact configs 2023-03-09 17:09:54 +11:00
0x330a
3318b53a1f
feat: add contacts expiry serialization/deserialization, more LGC, timestamps to add closed group encryption info (for latest tracking) 2023-03-09 12:27:58 +11:00
0x330a
8d8325f16e
feat: adding user groups to the list of user configs, refactorign some of the config factory to fetch the user configs easier. Add handling for polling user group namespace 2023-03-06 17:16:42 +11:00
0x330a
66c997dfb2
feat: more usergroup functionality, storage functionality for checking pinned status, adding pinned status for NTS/contacts, move community info parse full url to base community, add StorageProtocol logic for group info 2023-03-06 15:27:06 +11:00
0x330a
858893a0e9
feat: incorporate hashes from library, more wrapper for user groups and serialization from c++ 2023-02-28 17:47:25 +11:00
0x330a
c351cd6038
feat: start to implement group list info classes and wrappers and refactor to use library based hashes 2023-02-27 17:31:40 +11:00
0x330a
c06c7eab19
feat: start implementing hashes in shared lib and refactoring 2023-02-27 13:12:01 +11:00
0x330a
c36387175d
fix: add some more contact syncing: nicknames, approved statuses, blocked statuses 2023-02-24 17:05:33 +11:00
0x330a
8a000fe5a9
feat: add basic contact logic for setting local contact state. Need to implement handling properly 2023-02-23 17:19:03 +11:00
0x330a
fdd70ec6d0
feat: add the last seen 2023-02-22 13:56:18 +11:00
0x330a
548862c37d
fix: getters weren't getters properly in the config factory, fixed new onboarding from configs 2023-02-21 17:50:11 +11:00
0x330a
39c532240c
fix: compile errors from updating library to use latest branch, now requires cmake 3.22.1 2023-02-21 15:45:22 +11:00
0x330a
0dff619aa9
fix: replace the mark read receiver (from notifications) to use the new set last seen mark read logic 2023-02-21 14:44:32 +11:00
0x330a
621e564023
feat: batching poll responses properly and handling groups properly 2023-02-21 13:26:19 +11:00
0x330a
8c512c7b6e
fix: unreads work now for incoming messages, need to sync conv volatile properly still 2023-02-20 17:36:35 +11:00
0x330a
1b580cca1b
Merge remote-tracking branch 'upstream/dev' into libsession-integration
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java
#	libsession/src/main/java/org/session/libsession/database/StorageProtocol.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/AttachmentDownloadJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/AttachmentUploadJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/BackgroundGroupAddJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/BatchMessageReceiveJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/GroupAvatarDownloadJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/Job.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/JobQueue.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/MessageReceiveJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/MessageSendJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/NotifyPNServerJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/OpenGroupDeleteJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/TrimThreadJob.kt
2023-02-20 11:52:25 +11:00
0x330a
66fb6b30e9
feat: add broken unreads everywhere 2023-02-17 17:51:28 +11:00
Morgan Pretty
391418ae1e
Merge pull request #1107 from mpretty-cyro/fix/group-avatar-download-job-duplication
Fixed a few issues related to the GroupAvatarDownloadJob
2023-02-17 10:16:22 +11:00
0x330a
2f2ebe9451
feat: add basic message read logic for synchronizing last reads, need to modify the query to use the last seen instead of the unread count in a subquery possibly for thread display record 2023-02-15 17:29:29 +11:00
0x330a
03a343d832
feat: syncs the user profile stuff for now, and errors back to placeholder instead of unknown recipient 2023-02-13 16:43:45 +11:00
0x330a
acd14843b8
feat: expand on the config sync job, finish basic implementation to test against 2023-02-10 16:41:33 +11:00
Morgan Pretty
9fd68d27f8 Fixed a few issues with the GroupAvatarDownloadJob
Added a method to remove the Group avatar
Fixed an issue where the recipient diffing on the HomeActivity wasn't working properly
Fixed an issue where the GroupAvatarDownloadJob could be scheduled even when there was already one scheduled
2023-02-10 10:05:28 +11:00
0x330a
336604b9e5
refactor: moving some properties around so we have access in libsession 2023-02-08 17:31:33 +11:00
0x330a
c0bcc37d2e
feat: adding config sync functionality, refactoring jobs to execute in suspend context to do some nice coroutine execution 2023-02-08 17:09:52 +11:00
Morgan Pretty
97458a4baa Added a missing constructor 2023-02-08 14:04:02 +11:00
Morgan Pretty
cd3b8f3571 Fixed a few issues related to the GroupAvatarDownloadJob
Added logic to avoid scheduling a GroupAvatarDownloadJob if there is already an existing one with the same parameters
Added logic to avoid trying to download an old avatar for a group if there is a new one
Added logic to prevent an old GroupAvatarDownloadJob from overriding a valid avatar with an old one
2023-02-08 13:42:35 +11:00
0x330a
c639d57471
feat: add storage with hashes and some basic profile update logic in config factory probably move that somewhere else 2023-02-07 17:30:45 +11:00
0x330a
c8d520c3ce
feat: update request responses and their appropriate processing 2023-02-06 17:24:55 +11:00
0x330a
395ada62ff
Update French translations (#1103)
* chore: update french translations file from crowdin

* chore: update french translations libsession file from crowdin

* chore: update french non-region translations file from crowdin

* chore: update french non-region libsession translations file from crowdin
2023-02-06 16:01:16 +11:00
0x330a
28e5794624
feat: add in more config factory for volatile 2023-02-06 14:28:00 +11:00
Morgan Pretty
50989cb2ee Increased file upload limits to 10Mb 2023-02-06 14:22:26 +11:00
Morgan Pretty
0256735135 Fixed a few bugs, added logging and removed some old code
Added the ability to copy the sessionId of open group URL from the conversation menu
Added additional logging to the BatchMessageReceiveJob to make future debugging easier
Removed the OpenGroupMigrator
Updated the JobQueue logging to provide more insight
Fixed an issue where the database migrations weren't blocking which could result in failing/crashing SQL queries
Fixed an issue where the new database file wouldn't be removed if a migration error was thrown
Fixed an issue where the new database could exist in an invalid state and the app wouldn't attempt to remigrate
Fixed an incorrectly throw exception in the PassphrasePromptActivity
2023-02-03 13:33:52 +11:00
0x330a
d01e27c671
Merge remote-tracking branch 'upstream/dev' into libsession-integration
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/database/helpers/SQLCipherOpenHelper.java
#	libsignal/src/main/java/org/session/libsignal/protos/SignalServiceProtos.java
2023-01-24 16:32:07 +11:00
Morgan Pretty
87f1d708b1 Merge remote-tracking branch 'upstream/dev' into feature/unread-mention-indicator
# Conflicts:
#	app/src/main/res/values/themes.xml
2023-01-24 15:44:22 +11:00
Morgan Pretty
05838faaf0 Updated the unread count logic to recalculate correctly 2023-01-24 15:41:44 +11:00
Morgan Pretty
2711a6dd5f
Merge pull request #994 from ceokot/message-request-response
Add profile data to message request responses
2023-01-24 14:53:09 +11:00
Morgan Pretty
ce3aa980aa Merge remote-tracking branch 'upstream/dev' into message-request-fixes
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/groups/OpenGroupManager.kt
#	libsession/src/main/java/org/session/libsession/messaging/open_groups/OpenGroup.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/pollers/OpenGroupPoller.kt
2023-01-24 14:48:54 +11:00
Morgan Pretty
251df065f8 Merge remote-tracking branch 'upstream/dev' into message-request-response
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSender.kt
2023-01-24 14:44:56 +11:00
Morgan Pretty
dc9458f313 Merge remote-tracking branch 'upstream/dev' into feature/unread-mention-indicator
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/attachments/DatabaseAttachmentProvider.kt
#	libsession/src/main/java/org/session/libsession/database/MessageDataProvider.kt
2023-01-24 14:02:08 +11:00
Morgan Pretty
23dca5b38d Merge remote-tracking branch 'upstream/dev' into feature/unread-mention-indicator 2023-01-24 14:00:07 +11:00
Morgan Pretty
025989f928
Merge pull request #1069 from mpretty-cyro/feature/performance-improvements
Performance improvements
2023-01-24 13:59:32 +11:00
Morgan Pretty
bdac7f2ea3
Merge pull request #1087 from 0x330a/fix/expire-old-call-messages
Prevent very old messages (15 minutes ago) being processed to prevent endless crashes in some cases
2023-01-24 13:59:19 +11:00
0x330a
5861623369
fix: may have been preventing new closed group message on multi-device (#1081) 2023-01-23 17:20:07 +11:00
Morgan Pretty
ebe8479e4c Resolved PR comments 2023-01-23 16:14:50 +11:00
0x330a
86b065203f
fix: prevent very old messages (15 minutes ago) being processed to prevent endless crashes in some cases 2023-01-23 15:43:43 +11:00
Morgan Pretty
8a4a9623cc Fixed an edge case where an OpenGroup might not download it's image 2023-01-20 17:42:46 +11:00
0x330a
378601afa5
feat: add raw requests for modifying expiry and getting expiries 2023-01-20 15:58:43 +11:00
Morgan Pretty
0ed5c5825d Cleaned up some of the error logging 2023-01-20 15:24:14 +11:00
0x330a
edb5ff09e9
fix: add optional namespace in signature and params 2023-01-20 10:27:34 +11:00
Morgan Pretty
810430e806 Fixed a couple of issues with the OpenGroupDeleteJob
Updated the OpenGroupDispatcher to have a thread limit of 8 (was previously unlimited which could result in the app getting flooded with threads under certain conditions)
Updated the OpenGroupDeleteJob to do bulk deletions (instead of individual message deletions)
Updated the OpenGroupDeleteJob to catch and report failures (wasn't previously happening)
2023-01-20 09:02:59 +11:00
0x330a
39bd0bba22
feat: add batch snode calls and try to poll from all the config namespaces 2023-01-19 17:17:32 +11:00
Morgan Pretty
694ca79958 Added the unread mention indicator to the conversation list
Fixed the unread indicator colours to match correct theming designs
Fixed a bug where the unread count could be incorrect when receiving UnsendRequests within the same poll
Added a couple missing theme colours
2023-01-19 15:24:50 +11:00
0x330a
8bea5e73e6
refactor: config database changes, new protos, adding in support for config base namespace queries 2023-01-18 15:51:29 +11:00
0x330a
00fe77af8a
feat: add in config storage and injection to common places, managing lifecycle of native instances 2023-01-17 17:27:54 +11:00