Commit Graph

55 Commits

Author SHA1 Message Date
Harris 6ddefb7a2e
Performance improvements and bug fixes (#869)
* refactor: fail on testSnode instead of recursively using up snode list. add call timeout on http client

* refactor: refactoring batch message receives and pollers

* refactor: reduce thread utils pool count to a 2 thread fixed pool. Do a check against pubkey instead of room names for oxenHostedOpenGroup

* refactor: caching lib with potential loader fixes and no-cache for giphy

* refactor: remove store and instead use ConcurrentHashMap with a backing update coroutine

* refactor: queue trim thread jobs instead of add every message processed

* fix: wrapping auth token and initial sync for open groups in a threadutils queued runnable, getting initial sync times down

* fix: fixing the user contacts cache in ConversationAdapter.kt

* refactor: improve polling and initial sync, move group joins from config messages into a background job fetching image.

* refactor: improving the job queuing for open groups, replacing placeholder avatar generation with a custom glide loader and archiving initial sync of open groups

* feat: add OpenGroupDeleteJob.kt

* feat: add open group delete job to process deletions after batch adding

* feat: add vacuum and fix job queue re-adding jobs forever, only try to set message hash values in DB if they have changed

* refactor: remove redundant inflation for profile image views throughout app

* refactor(wip): reducing layout inflation and starting to refactor the open group deletion issues taking a long time

* refactor(wip): refactoring group deletion to not iterate through and delete messages individually

* refactor(wip): refactoring group deletion to not iterate through and delete messages individually

* fix: group deletion optimisation

* build: bump build number

* build: bump build number and fix batch message receive retry logic

* fix: clear out open group deletes

* fix: update visible ConversationAdapter.kt binding for initial contact fetching and better traces for debugging background jobs

* fix: add in check for / force sync latest encryption key pair from linked devices if we already have that closed group

* Rename .java to .kt

* refactor: change MmsDatabase to kotlin to make list operations easier

* fix: nullable type

* fix: compilation issues and constants in .kt instead of .java

* fix: bug fix expiration timer on closed group recipient

* feat: use the job queue properly across executors

* feat: start on open group dispatcher-specific logic, probably a queue factory based on openGroupId if that is the same across new message and deletion jobs to ensure consistent entry and removal

* refactor: removing redundant code and fixing jobqueue per opengroup

* fix: allow attachments in note to self

* fix: make the minWidth in quote view bind max of text / title and body, wrapped ?

* fix: fixing up layouts and code view layouts

* fix: remove TODO, remove timestamp binding

* feat: fix view logic, avatars and padding, downloading attachments lazily (on bind), fixing potential crash, add WindowDebouncer.kt

* fix: NPE on viewModel recipient from removed thread while tearing down the Recipient observer in ConversationActivityV2.kt

* refactor: replace conversation notification debouncer handler with handlerthread, same as conversation list debouncer

* refactor: UI for groups and poller improvements

* fix: revert some changes in poller

* feat: add header back in for message requests

* refactor: remove Trace calls, add more conditions to the HomeDiffUtil for updating more efficiently

* feat: try update the home adapter if we get a profile picture modified event

* feat: bump build numbers

* fix: try to start with list in homeViewModel if we don't have already, render quotes to be width of attachment slide view instead of fixed

* fix: set channel to be conflated instead of no buffer

* fix: set unreads based off last local user message vs incrementing unreads to be all amount

* feat: add profile update flag, update build number

* fix: link preview thumbnails download on bind

* fix: centercrop placeholder in glide request

* feat: recycle the contact selection list and profile image in unbind

* fix: try to prevent user KP crash at weird times

* fix: remove additional log, improve attachment download success rate, fix share logs dialog issue
2022-06-08 17:12:34 +10:00
Harris 0dbe96d723
build: update build numbers (#895)
fix: migration issues in 1.13.0
2022-05-25 10:43:26 +10:00
Harris 00f06ab034
Namespace retrieval and storage with auth (#880)
* feat: add migration and fork info for upcoming auth and closed group retrieval updates

* feat: add closed group poller calls and include namespace to parse raw messages function

* feat: add DB upgrades and queries for namespaces

* fix: fix the polling for post-HF signatures and group messages

* fix: realise we need a compound key for namespaces in received hashes, test explicitly setting namespace

* feat: add setForkInfo implementation

* refactor: include default fork info command on create, refactor migration to use new table since we can't add constraints in alter for PK, replace `lastHash` with `last_hash` in case that fixes paging

* refactor: include namespace and use when statement for closed group polling

* refactor: revert to main net

* refactor: use namespace constants

* refactor: revert to testnet and log the poll result

* fix: use or to log either poller

* fix: revert to default network and add more logging, only set the latest fork info if it is an increment

* build: update minor version

* refactor: use single target snode and namespace list for message sending

* fix: link previews and expiring messages in closed groups
2022-05-18 10:20:57 +10:00
jubb 11d49426d3 fix: approval for more fine-grained contacts on migrate 2022-03-10 16:29:44 +11:00
ceokot 206505abe8
feat: Add conversation filtering for message requests (#830)
* feat: Message requests

* Apply contact sync message

* Filter based on message requests toggle

* Add message requests screen

* Implement message requests screen

* Handle message request buttons

* Handle approval syncing

* Display message request response

* Display pending message request

* Display pending message request

* Add approval migrations

* Send message request response

* Fix conversation filters

* Add approval migration

* Handle message request response

* Update message request response proto

* Update message request response handling

* Refresh message requests

* Show message request banner on new message request

* Message request item layout tweaks

* Fix latest unapproved conversation query

* Handle sent message request responses on restore

* QA feedback tweaks

* Remove send limit on message requests

* Config message handling tweaks

* Reverse conversation upon message request approval

* Remove read receipts, delete declined conversations

* Fix contact filtering in config messages

* Fix message request order and handle deletion

* Fix message request snippet on home screen

* Refresh message request list after decline or clearing all

* Fix message request reversal

* Fix message request notifications

* Disable media buttons for message requests

* Hide message request banner after reading

* Refresh message request banner
2022-03-04 08:46:39 +02:00
ceokot 44f5684b21
feat: Update open group avatars periodically (#807)
* feat: Update open group avatars periodically

* Updated timestamp

* Existing job check

* Refresh avatar on the conversation

* Remove println statement

* Update profile picture on recipient modified event
2021-12-15 08:11:55 +02:00
ceokot 15f5ac10ec
feat: Add conversation pinning (#806)
* feat: Add conversation pinning

* Update pinned conversation icon

* Update pinned conversation column name
2021-12-10 10:18:56 +11:00
ryanzhao af6c19690b send unsend request & delete remotely 2021-08-11 15:17:53 +10:00
ryanzhao c3e45a308a store server hash 2021-08-10 16:42:15 +10:00
jubb 7890f5bd44 refactor: revert DB change experimentation from latest version 2021-07-30 10:50:58 +10:00
Harris 9d9f543c3b feat: trying upgrade DB for perf and reducing retry interval to congest threads 2021-07-29 08:56:34 +10:00
Harris 2d82e48a04 fix: fresh install not updating notification type column in table 2021-07-26 15:07:47 +10:00
Harris b95cb2bedb feat: add notification types for all / mentions only or none with UI and push logic 2021-07-20 16:06:59 +10:00
Niels Andriesse 9d447608da Re-organize files 2021-07-09 13:25:57 +10:00
Niels Andriesse 05cc6ea742 Re-enable copying Session IDs in closed groups & clean 2021-07-09 13:01:16 +10:00
Niels Andriesse d7afcd07f8 Add contacts migration 2021-05-24 11:35:05 +10:00
Niels Andriesse e7ae08fe7a Clean 2021-05-24 10:27:31 +10:00
Niels Andriesse e0c1456af4 Merge branch 'dev' into nicknames 2021-05-21 15:21:24 +10:00
Niels Andriesse 6829895995 Handle Kryo version incompatibility 2021-05-21 09:08:16 +10:00
Ryan ZHAO 38ed5c2187 Merge branch 'dev' of https://github.com/oxen-io/session-android into client-side-nickname 2021-05-20 11:15:24 +10:00
Niels Andriesse a88322a033 Move files 2021-05-18 09:12:33 +10:00
Ryan ZHAO a16e67d1fd add new contact database api 2021-05-07 16:31:46 +10:00
Niels Andriesse cc7e4701a3 Increment database version 2021-05-06 16:03:45 +10:00
Niels Andriesse 3c3f6c25f1 Fix various bugs 2021-05-06 15:46:22 +10:00
jubb fa528c47d5 Merge remote-tracking branch 'upstream/dev' into open_groups_V2
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationActivity.java
#	app/src/main/java/org/thoughtcrime/securesms/database/helpers/SQLCipherOpenHelper.java
#	app/src/main/java/org/thoughtcrime/securesms/loki/database/LokiMessageDatabase.kt
#	app/src/main/java/org/thoughtcrime/securesms/loki/protocol/MultiDeviceProtocol.kt
#	app/src/main/java/org/thoughtcrime/securesms/loki/views/MentionCandidateSelectionView.kt
#	app/src/main/java/org/thoughtcrime/securesms/loki/views/MentionCandidateView.kt
#	libsession/src/main/java/org/session/libsession/messaging/mentions/MentionsManager.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/pollers/ClosedGroupPoller.kt
#	libsession/src/main/java/org/session/libsession/messaging/utilities/DotNetAPI.kt
#	libsession/src/main/java/org/session/libsession/utilities/mentions/Mention.kt
#	libsignal/src/main/java/org/session/libsignal/service/loki/Mention.kt
#	libsignal/src/main/java/org/session/libsignal/service/loki/utilities/mentions/Mention.kt
2021-05-03 15:37:53 +10:00
jubb ef19c0d10e fix: fixing up LokiMessageDatabase.kt table structure, deletion closer to finished 2021-04-29 17:13:42 +10:00
Brice-W b064f8f5d7 implementation of the zombie members handling logic 2021-04-23 14:07:10 +10:00
Ryan ZHAO d2843b2cef fix removing jobs in database 2021-03-15 14:56:46 +11:00
Ryan ZHAO 60f51af295 clean & fix expiration timer setting issue 2021-03-12 11:27:51 +11:00
Ryan ZHAO 1a6da88ce3 clean 2021-03-09 13:54:15 +11:00
Ryan ZHAO 3b2ea4e95d clean 2021-03-05 11:31:12 +11:00
Ryan ZHAO 2df9d4f27c clean 2021-03-05 11:24:43 +11:00
Ryan ZHAO d9eaedd6ae hook up sending pipeline & clean 2021-03-02 12:24:09 +11:00
Ryan ZHAO 2f57090cfa further clean up on session restoration 2021-02-23 11:56:03 +11:00
Ryan ZHAO 12a2061251 clean up jobs 2021-02-23 11:29:07 +11:00
Ryan ZHAO c5ab13aadf clean up deprecated message connection 2021-02-22 16:29:48 +11:00
Ryan ZHAO 19a829d011 WIP: clean up signal protocols (stickers) 2021-02-22 10:06:40 +11:00
Ryan ZHAO d8104c0d5c WIP: clean up signal protocol storage 2021-02-19 15:11:30 +11:00
Ryan ZHAO 958ec690f1 WIP: clean up signal protocols 2021-02-19 11:03:58 +11:00
Ryan ZHAO 9d0831b874 remove shared sender keys 2021-02-18 14:14:05 +11:00
Ryan ZHAO 568fddf91d remove ClosedGroupUpdateMessageSendJob in database 2021-02-18 10:59:31 +11:00
Niels Andriesse f45a285141 Update version number 2021-02-18 10:30:21 +11:00
nielsandriesse 362e24f98c Fix DB migration 2021-02-17 11:36:56 +11:00
nielsandriesse 7f4603a1ba Fix DB migration 2021-02-17 11:30:37 +11:00
nielsandriesse 5226947e0a Fix DB migration 2021-02-17 11:08:57 +11:00
ryanzhao 307da3b2be clean logging 2021-02-03 12:22:40 +11:00
Brice 99107d169e add changes of latest dev 2021-01-13 16:13:49 +11:00
Anton Chekulaev 54f730fdfd Job cleanup. 2020-12-17 12:47:18 +11:00
Anton Chekulaev 24d36158ae Job cleanup. 2020-12-16 13:36:20 +11:00
Anton Chekulaev e294199ea3 Master secret removed.
Screen lock related classes refactoring.
Legacy database util classes and migrations removed.
2020-12-14 18:16:16 +11:00