Commit Graph

1500 Commits

Author SHA1 Message Date
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
b3ae2e967f
refactor: trying to just include blocked status for now in updating contacts 2023-02-23 17:42:59 +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
164810e533
feat: buffer the last read when in conversation 2023-02-23 11:33:05 +11:00
0x330a
055d37db5f
refactor: add more else branches for unimplemented types 2023-02-22 17:22:29 +11:00
0x330a
6006715b74
feat: start adding user groups wrapper objects 2023-02-22 17:02:25 +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
e159e4ad52
fix: fix the contact tests 2023-02-21 17:07:55 +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
Morgan Pretty
c8846bc31a
Merge pull request #1118 from mpretty-cyro/feature/add-copy-to-long-press-menu
Add ‘Copy community URL’ to the long-press menu
2023-02-15 15:40:47 +11:00
Morgan Pretty
5bd188387b
Merge pull request #1112 from mpretty-cyro/fix/link-preview-layout-issues
Fixed a few layout issues with the LinkPreviewView
2023-02-15 15:39:37 +11:00
Morgan Pretty
cc7a80900f Added copy session id and community url to the conversation long press menu 2023-02-14 16:43:55 +11:00
Morgan Pretty
da0d38f389 Updated the copy for the Giphy warning prompt 2023-02-14 16:17:25 +11:00
Morgan Pretty
4df530d341 Code review changes 2023-02-14 14:10:47 +11:00
Qian Hong
47066a320c
fix: Increase contrast between selected messages and window background. Fixes #1110 (Plan B) (#1116) 2023-02-13 18:26:55 +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
fb21f58cbd
feat: add forced config sync 2023-02-10 16:48:21 +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
bbedad5ebb Fixed a few layout issues with the LinkPreviewView 2023-02-10 14:33:19 +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
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
hjubb
48799db21c build: update build number 2023-02-06 16:03:49 +11:00
hjubb
378fb40984 Merge branch 'dev' 2023-02-06 16:03:19 +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
ee35cadfc6
Merge remote-tracking branch 'upstream/master' into libsession-integration 2023-01-31 10:34:02 +11:00
0x330a
13909e152c
Merge branch 'dev' into libsession-integration 2023-01-31 10:33:09 +11:00
hjubb
4e38b75f57 build: update build number 2023-01-30 17:02:11 +11:00
Morgan Pretty
7ffe48b5ed Fixed an issue where the message bubble could be sized incorrectly 2023-01-27 15:19:02 +11:00
Morgan Pretty
5d7d141d0c Added a missing parameter to the SMS & MSS projections 2023-01-25 17:19:23 +11:00
0x330a
7733aec6fc
feat: add some base config migration logic, start implementing wrappers for conversation and expiry types 2023-01-25 13:16:25 +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
30615be029 Fixed a build error in the MockDataGenerator 2023-01-24 15:56:14 +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
fff0e5a32d Merge remote-tracking branch 'upstream/dev' into pinned-message-icon-color
# Conflicts:
#	app/src/main/res/values/themes.xml
2023-01-24 15:11:09 +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
1ce9e47c51
Merge pull request #991 from ceokot/groups-push-message-sender-name
fix: Show message sender in push notifications for groups
2023-01-24 14:52:50 +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
e44ae140e0 Merge remote-tracking branch 'upstream/dev' into feature/unread-mention-indicator
# Conflicts:
#	app/src/main/res/values/themes.xml
2023-01-24 14:24:33 +11:00
Morgan Pretty
bc20811431 Merge remote-tracking branch 'upstream/dev' into feature/read_status_updates
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/messages/VisibleMessageView.kt
#	app/src/main/res/values/strings.xml
2023-01-24 14:10:14 +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
Morgan Pretty
e0785c4854 Added in fixes and defensive coding for the most frequent crashes
Fixed a crash which could occur when dealing will calls in the background on Android 12 and newer
Fixed a crash when we don't have permission to check the current call state
Fixed a crash when the ScreenshotObserver receives an invalid Uri (just prevent the specific case)
2023-01-24 13:31:56 +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
a6f09c6fef Added some defensive coding to help prevent incorrect message statuses 2023-01-23 12:42:10 +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
Morgan Pretty
afa42daab1 Updated the 'scrollToBottom' behaviour to be more efficient 2023-01-20 09:19:29 +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
ce8e5c596e Fixed the message sorting for a couple of database queries 2023-01-19 15:24:50 +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
Morgan Pretty
cae15a200d Added temporary support for downgrading and notify the user upon failure 2023-01-19 15:24:09 +11:00
0x330a
f573c7deaf
refactor: config query and store use the same format as other platforms 2023-01-19 09:56:21 +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
Morgan Pretty
a2fcb3195d General cleanup
Fixed a bug where open groups were incorrectly displaying closed group avatar images
Removed some commented out code
2023-01-16 16:46:24 +11:00
Morgan Pretty
f4fdfd7410 Added the updated delivery status UI 2023-01-16 14:48:38 +11:00
Morgan Pretty
cc5c63b211 Fixed a couple of issues from the rebase, removed an unneeded text clear 2023-01-13 16:16:52 +11:00
Morgan Pretty
70f0dad36e Fixed a few bugs and some optimisations
Updated a number of nested layout components to be included instead of inflated
Added a couple of optimisations to the EmojiTextView
Fixed an issue where long conversation titles could squish the unread count
Fixed an issue where the typing indicator wasn't working on the home screen
2023-01-13 15:56:14 +11:00
Morgan Pretty
693c3a9656 Fixed a few cases where we were using the write access for read operations 2023-01-13 15:56:14 +11:00
Morgan Pretty
f9ff3feb29 Refactored code to avoid passing lifecycleCoroutineScope as a parameter 2023-01-13 15:56:14 +11:00
Morgan Pretty
afdf730eaa Added a couple of minor UI optimisations 2023-01-13 15:56:14 +11:00
Morgan Pretty
3e68bdc2f8 Fixed an issue introduced by the last commit with OpenGroup initialisation 2023-01-13 15:56:14 +11:00
Morgan Pretty
5afd647686 Tweaked some open group handling and a couple of onboarding issues
Updated the OpenGroup adding and polling logic to reduce duplicate API calls
Updated the BackgroundGroupAddJob to start a GroupAvatarDownloadJob instead of running the download itself (to appear to run faster)
Defaulted OpenGroups to use blinded auth when no server capabilities are present
Fixed an issue where the background poller could be started even though the onboarding hadn't been completed
Fixed an issue where the database could get into an invalid state if the app was restarted during onboarding
2023-01-13 15:56:14 +11:00
Morgan Pretty
d0a4bac83e Shifted the creation of AttachmentDownloadJobs to the IO thread 2023-01-13 15:56:14 +11:00
Morgan Pretty
a1b052ef82 Added indexes to the Reactions database 2023-01-13 15:56:13 +11:00
Morgan Pretty
e7b6ddacbb Shifted a number of db writes when opening conversations to the IO thread so they don't block 2023-01-13 15:55:31 +11:00
Morgan Pretty
c0bef51fe0 Fixed a couple of bugs where the HomeDiffUtil could incorrectly detect differences 2023-01-13 15:55:31 +11:00
Morgan Pretty
d68d26cd5d Added the MockDataGenerator to simplify db testing 2023-01-10 10:41:53 +11:00
Morgan Pretty
5abc3119cb Fixed an issue where clearing device data would create an invalid DB state 2023-01-06 15:41:26 +11:00
Morgan Pretty
e6fe38587b Fixed an issue where database migrations were broken 2023-01-06 10:36:56 +11:00
Morgan Pretty
12205e72b6 Another update was released last week 2023-01-06 09:05:29 +11:00
Morgan Pretty
1a28fd2a9e Added code to migrate from SQLCipher 3 to 4 2023-01-05 16:56:52 +11:00
0x330a
a9c34dd3d1
feat: add some config db basics and DI for it, make the user profile optional, start looking at integrate building from initial dump 2022-12-20 17:28:50 +11:00
0x330a
961f445390
Merge branch 'master' into libsession-integration 2022-12-20 13:31:46 +11:00
hjubb
df8a6d739a build: release v1.16.3 (3235) 2022-12-19 11:57:22 +11:00
0x330a
cdd2559839
Paged conversation recycler, update compile sdk version 31 (#1049)
* Update build tools

* Update appcompat version

* Update dependencies

* feat: add paging into conversation recycler and queries to fetch data off-thread

* refactor: wip for updating paged results and bucketing messages / fetching enough to display

* fix: currently works for scrolling and possibly refreshing? need scroll to message and auto scroll down on insert (at bottom)

* fix: search and scrolling to X message works now

* build: increase version code and name

* fix: re-add refresh, remove the outdated comment

* refactor: lets see if 25 size pages increases performance 👀

* feat: add in some equals overrides for mms records to refresh if media has finished DLing

* feat: add scroll to bottom for new messages if we are at the end of the chat

* build: update build numbers

* fix: update AGP and fix compile errors for sdk version 31

* feat: add log for loki-avatar and loki-fs on upload types and responses

* feat: increase build number to match latest installed version

* feat: changing props and permission checks for call service

* fix: possible service exception when no call ID remote foreground service not terminated

* revert: google services version

* fix: re-add paging dependency

* feat: adding new last seen function and figuring out the last seen for recycler adapter

* build: update version names and codes for deploy

* refactor: undo the new adapter and query changes to use previous cursor logic. revert this commit to enable new paged adapter

* fix: use author's address in typist equality and hashcode for set inclusion

* refactor: refactor the select contacts activity

* refactor: refactor the select contacts activity

* build: update version code

* fix: hide all other bound views if deleted

* refactor: change voice message tint, upgrade build number

* fix: message detail showing up properly

* revert: realise copy public key is actually not allowed if open group participant

* fix: copy session ID, message detail activity support re-enabled

* build: update build version code

* build: remove version name

* build: update build code

* feat: google services version minimum compatible

* fix: selection for re-created objects not properly highlighting

* fix: foreground CENTER_INSIDE instead of just CENTER for scaletype

* build: update version code

* fix: don't show error if no error

* build: update version code

* fix: clear error messages if any on successful send

Co-authored-by: charles <charles@oxen.io>
2022-12-19 11:29:05 +11:00
hjubb
bda50d263c Merge branch 'master' into dev 2022-12-19 11:06:42 +11:00
Ninad Bhuiyan
95298bb9e3
Fix voice message duration view (#948)
The seconds for a voice message duration, and also its decreasing duration when played, were just the total duration of the audio. So, a 3 minute audio would appear as 3:180 at the audio's right, and 2:170 for example when said audio is being played.

I added a modulo operator for 60 after the time millisecond to seconds conversion, just before setting it as viewable text, same for the progress function.
2022-12-19 10:53:03 +11:00
0x330a
5012374a1f
refactor: put it in an object instead of abstract class 2022-12-16 16:54:57 +11:00