Commit Graph

1858 Commits

Author SHA1 Message Date
0x330a
68248db83c fix: compile errors to build 2023-07-19 10:28:52 +10:00
0x330a
74ee433eec fix: more merge conflict compile issues 2023-07-19 00:02:43 +10:00
andrew
452db6dfa3 Make reply safer 2023-07-18 13:36:08 +09:30
andrew
9a84f6c67b Merge branch 'dev' into comp 2023-07-18 12:04:56 +09:30
0x330a
07e1d80654 Merge remote-tracking branch 'upstream/dev' into disappearing-messages
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/menus/ConversationMenuHelper.kt
#	app/src/main/java/org/thoughtcrime/securesms/database/MmsDatabase.kt
#	app/src/main/java/org/thoughtcrime/securesms/database/RecipientDatabase.java
#	app/src/main/java/org/thoughtcrime/securesms/database/SmsDatabase.java
#	app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt
#	app/src/main/java/org/thoughtcrime/securesms/database/helpers/SQLCipherOpenHelper.java
#	app/src/main/java/org/thoughtcrime/securesms/dependencies/DatabaseComponent.kt
#	app/src/main/java/org/thoughtcrime/securesms/dependencies/DatabaseModule.kt
#	app/src/main/java/org/thoughtcrime/securesms/preferences/ClearAllDataDialog.kt
#	app/src/main/java/org/thoughtcrime/securesms/repository/ConversationRepository.kt
#	app/src/main/java/org/thoughtcrime/securesms/service/ExpiringMessageManager.java
#	app/src/main/res/layout/activity_conversation_v2.xml
#	libsession/src/main/java/org/session/libsession/database/StorageProtocol.kt
#	libsession/src/main/java/org/session/libsession/messaging/jobs/BatchMessageReceiveJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/messages/Message.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageReceiver.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSender.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSenderClosedGroupHandler.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt
#	libsession/src/main/java/org/session/libsession/snode/SnodeAPI.kt
#	libsignal/protobuf/SignalService.proto
#	libsignal/src/main/java/org/session/libsignal/utilities/Snode.kt
2023-07-18 11:39:03 +10:00
hjubb
e7608763a0 fix: tests pass with forcing config 2023-07-14 18:47:10 +10:00
0x330a
ac18f1cbfe
Integrate shared libsession-util library (#1096)
* feat: add some config db basics and DI for it, make the user profile optional, start looking at integrate building from initial dump

* update: get latest util library submodule update

* refactor: fix compile for refactored API

* refactor: naming consistent with library

* feat: add in config storage and injection to common places, managing lifecycle of native instances

* refactor: config database changes, new protos, adding in support for config base namespace queries

* refactor: config query and store use the same format as other platforms

* feat: add batch snode calls and try to poll from all the config namespaces

* fix: add optional namespace in signature and params

* feat: add raw requests for modifying expiry and getting expiries

* feat: add some base config migration logic, start implementing wrappers for conversation and expiry types

* chore: update libsession base

* feat: start integrating conversation wrapper functions

* feat: add basic conversation info volatile types and implementations, start working on tests

* feat: more common library wrapper implementation and test

* fix: tests and compile issues

* fix: fix tests, don't use iterables

* feat: add all iterators and tests

* feat: add in more config factory for volatile

* feat: update request responses and their appropriate processing

* feat: add storage with hashes and some basic profile update logic in config factory probably move that somewhere else

* feat: adding config sync functionality, refactoring jobs to execute in suspend context to do some nice coroutine execution

* refactor: moving some properties around so we have access in libsession

* feat: expand on the config sync job, finish basic implementation to test against

* feat: add forced config sync

* feat: syncs the user profile stuff for now, and errors back to placeholder instead of unknown recipient

* 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

* feat: add broken unreads everywhere

* fix: unreads work now for incoming messages, need to sync conv volatile properly still

* feat: batching poll responses properly and handling groups properly

* fix: replace the mark read receiver (from notifications) to use the new set last seen mark read logic

* feat: update to the group list branch

* fix: compile errors from updating library to use latest branch, now requires cmake 3.22.1

* fix: fix the contact tests

* fix: getters weren't getters properly in the config factory, fixed new onboarding from configs

* feat: add the last seen

* feat: start adding user groups wrapper objects

* refactor: add more else branches for unimplemented types

* feat: buffer the last read when in conversation

* feat: add basic contact logic for setting local contact state. Need to implement handling properly

* refactor: trying to just include blocked status for now in updating contacts

* fix: add some more contact syncing: nicknames, approved statuses, blocked statuses

* feat: start implementing hashes in shared lib and refactoring

* feat: start to implement group list info classes and wrappers and refactor to use library based hashes

* feat: incorporate hashes from library, more wrapper for user groups and serialization from c++

* feat: adding more serialization changes for community base info and user groups LGC

* feat: adding more serialize deserialize to legacy closed groups

* feat: finish serial/deserial helper

* feat: just implement deserialize community info

* refactor: refactor tests and wrappers to use less pointers, finish implementing user groups API

* feat: finish latest wrappers fix tests and continue building default generation functions. refactor defaults to be used if no stored data blob in DB

* 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

* 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

* feat: implement the default user config list

* feat: add user group config handling

* chore: extra missed existing group

* refactor: use existing lookup for objects in wrappers so they don't overwrite missing values

* feat: add contacts expiry serialization/deserialization, more LGC, timestamps to add closed group encryption info (for latest tracking)

* refactor: change how expiration timer works for contacts, set the expiration timer for those conversations in handling contact configs

* feat: add expiration updates via config for contacts as well

* feat: add almost all group editing cases, need to hook into the thread deletion for groups in the user groups

* feat: open group joining should work now

* feat: add groups to configs for push

* fix: handling user group updates bug fix for closed groups instead of all groups

* fix: open group sync persistence

* feat: add in activity finish if recipient no longer exists (deleted thread) from sync

* feat: support avatar removal from shared library

* feat: support thread deletion and refactoring a lot of getOrCreateThread references to go via storage or assume they are correctly set to hook into the contact and volatile creation during thread creation

* 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

* refactor: make update listener visibility package

* refactor: update kotlin

* feat: update dependencies and support outdated config messages, refactor config factory to return null configs if new configs not supported

* feat: update shared library to use priority only, fix compile errors, fix group member sync problem

* fix: compile error

* fix: profile avatar fixes for local user now that we aren't setting local user profile key

* Revert "fix: profile avatar fixes for local user now that we aren't setting local user profile key"

This reverts commit 3f569e3403.

* refactor: let the local number update recipient details in profile manager

* fix: don't recreate thread after leaving

* fix: fix up the duplicate thread creation in the message receive handler

* 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

* feat: add test theme for xml layout previews

* 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

* feat: setup android unit tests for verifying storage behaviours and state of shared configs

* feat: adding dependencies to try and get android tests working, fixing bug with initial config not syncing properly

* fix: remove hilt testing, add spy on app context storage field instead, update libsession-util to fixed sodium cmake branch

* refactor: use PR version of libsession-util to test cmake build

* fix: new build on normal repo

* feat: new libsession util commit

* refactor: remove the old custom build libsodium stuff from cmake

* feat: update libsession module

* fix: add legacy config subscription to the home activity to enable showing banner at any time

* fix: pinned status for communities and groups, group last read time being set to snodeapi.now on finish joining

* fix: some open group volatile convo fix for last read timer being set. Need to investigate further

* fix: prevent blocking local number

* fix: adding in more checks for open group inbox recipients before being saved to the shared configs. Prevent sending typing indicator for blocked users

* fix: add blocked check for read receipt and updating expiring messages

* fix: another contact recipient config library call removed for non-standard IDs

* fix: another ID check

* fix: don't process thread creation for user is sender && recipient (sync message) for message request responses

* refactor: mark as read on open and use less buffer time

* fix: finally fix the darn unread count issue by

* 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

* 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

* refactor: try to add a retry logic to config sync job in case of snode failure

* build: update submodule

* 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

* feat: use blinded message count for banner also

* refactor: remove some logging, don't use blinded conversations in the list

* fix: don't set the read flag in update notifications, some roundabout logic for first loads and scrolling to last known positions

* refactor: merge changes, re-add the group check in unapproved messages

* fix: re-poll on fail in case that was breaking anything

* fix: pinning groups and notifying list listeners in threadDb.setPinned

* feat: add in TTL extension subrequest and builder, enable extending TTLs for all latest config messages in poll as subrequest

* feat: add block to the delete all message requests, only if they're not open group inbox contacts

* refactor: disable edit text for non contacts

* refactor: let the user display name return "You" for local user

* fix: prevent NTS self create thread on user view bind

* refactor: remove populate public key cache if needed call which seems unnecessary at that point, maybe UserView refs have changed since 2020

* refactor: use just first visible instead of completely visible, merge message sender changes

* fix: prevent block of users in delete all

* fix: self sync sync message failures for default values

* feat: update libsession-util, adjust docs, update mms and sms to use message sent timestamp instead of -1 for last read in the thread

* fix: some compile issues in tests and some TODOs for things to do before merge

* fix: handle recyclerview scrolled on scroll to first unread if it's the first load

* 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

* feat: adding a force new configs flag and logic for timestamp handling / forced configs, fix issue with handling legacy messages

* refactor: re-add the sending of configs

* fix: don't add contacts if they don't exist in the profile manager

* [wip]
fix: trying to consolidate prof pic and key properly

* feat: add logs and fix compile issue with a themes.xml entry, add removing profile picture into logic for profile manager

* fix: force has sent for local user, only prevent setting last seen for open group recipients, allow empty user pics to trigger config sync in settings

* fix: nts threads

* fix: open group avatar loop for open groups we have left

* feat: add a wrapper hash to track home diff util changes for wrapper contact recipient info, add test for dirty state in double set

* feat: add a dump in there as well

* refactor: more test code refactor

* fix: update last seen if later than current

* fix: open group threads and avatar downloads

* fix: add max size and maybe fix the non-200 sub requests for batches (for 421s in particular)

* fix: open group comparison issues potentially, have to update some more outgoing message open group flags for visibility of details etc

* Updated to the latest libSession-util

* Updated logic to delete legacy groups when kicked/left

* Added the legacy group 'joined_at' value

* Replaced incorrect character in JNI

* Fixed an issue where the group keyPair was getting encoded incorrectly

* Updated the code to ignore outdated legacy group control message changes

* Updated the code to ignore messages invalidated by the config

* [Review] Updated the poller to process config messages before standard

* Cleaned up the outdated message logic

* Fixed inverted config dropping flags

* Fixed an issue where the joining a community would read all messages

Stopped using a reversed RecyclerView in all cases (caused the unread issue)
Updated the logic to jump to the newly sent message when sending a message (to be consistent with other platforms)
Updated the logic to refresh the DB unread count when the cursor receives an update

* Updated the conversation to highlight the first unread message on open

* Fixed a couple of bugs with the highlighting

* Fixed a bug where the user profile picture wasn't downloading correctly

* feat: add all namespaces to delete all messages request and signature verification data

* fix: merge namespace hashes for signature returned and

* fix: import correct scroll to bottom

* build: update version code and name

* fix: initial contact generation fix for existing blinded contacts

* fix: initial convo generation fix for existing blinded convos (?)

* fix: conversation unread not doing a check for standard ID prefix

* fix: thread ID not being created for legacy config messages

* fix: don't treat 404 as bad snode

* fix: don't add retrieve profile job if we have one for that address

* build: update build code

* fix: reduce attempts for downloading image, invert unreachable type check

* fix: attempting to fix preventing message processing if group thread is not active for closed groups and initial contact dump only allows conversations with thread, may need further optimisations though

* feat: Added an unread marker and search result focus highlighting

* fix: empty set in appropriate places for current closed groups

* build: update build version code

* fix: fix the notifications and request at appropriate time

* refactor: remove debug logging for thread create and delete

* build: update build number

* fix: new community doesn't break persisting config if the .add request fails

* build: trying to track down broken retrieve avatar job

* feat: update to latest libsession dev

* fix: maybe fix avatar download for new messages

* fix: 404s causing snode errors and trying to retrieve avatars that have already 404'd a lot

* fix: closed group creation sets thread date to formation timestamp

* build: update version code

* build: update version code

* build: remove debuggable release build

* fix: use new permissions for external attachments

* build: update version code

* chore: remove debug logs

* fix: tests and main thread blocking db fetch for path status view

* wip: trying to track down failure to mark conversation as read in delayed group add

* wip: add more logs for initial last Read sync of communities

* wip: maybe the volatile is being updated with 0 on batch message receive?

* fix: maybe syncing read statuses are working now

* chore: remove debug logs

* build: update build number

* fix: trying to improve performance

* fix: add close to banner

* refactor: hide seed reminder in preview

* build: update build number

* fix: maybe requires update thread no matter what

* fix: message request banner shows again

* fix: android tests work again and permissions

* fix: blocked contacts click handler being overridden by something

* Revert "fix: blocked contacts click handler being overridden by something"

This reverts commit 608572fc42.

* build: update build number

* refactor: remove unused dependencies and update minor for sqlcipher

* fix: actually do insert contact, because otherwise name doesn't get set properly

* fix: maybe fix scroll to bottom issue

* build: update build number

* fix: the message time and jump to message queries are more optimized

* fix: maybe fix the last seen issues

* build: update build number

* fix: pfp broken closed groups why

* fix: add admins and members as member list instead of just members

* fix: exclude lgc without membership > 1 and inactive explicitly

* fix: submodule update

* fix: compiles with removal of iterator erase

* fix: unread indicator updates properly in ConversationActivityV2

* fix: unread notifications clear and altered if any notifications exist (prevents clearing read notifications in conversation or on home screen)

* refactor: profile pictures kinda broken

* build: update build number

* refactor: remove full hash from log

* fix: isPinned threadDB call

* refactor: use mutex in all libsession native calls, change timestamp

* refactor: add basic support for blinded v2 prefixes

---------

Co-authored-by: Morgan Pretty <morgan.t.pretty@gmail.com>
2023-07-14 18:27:13 +10:00
andrew
adfa94614b Merge branch 'dev' into utilise-dialog-dsl 2023-07-13 12:12:01 +09:30
andrew
c3ef4d6e7b Merge branch 'dev' into utilise-dialog-dsl 2023-07-13 11:11:58 +09:30
andrew
d83532b6af Use Channel and Flow to avoid duplicate events 2023-07-11 13:28:44 +09:30
andrew
1845b60dac Refactor slide out of MessageDetailsActivity 2023-07-11 12:28:04 +09:30
andrew
172f85ae4f Fix some edge cases in fileDetails 2023-07-11 01:30:03 +09:30
andrew
fb68aaede6 Cleanup Components imports 2023-07-11 01:29:44 +09:30
andrew
09b321530d Add strings 2023-07-10 16:09:38 +09:30
andrew
a1e8ad2c37 Cleanup ViewModel 2023-07-10 13:01:46 +09:30
andrew
821327569e Cleanup Themes 2023-07-10 01:05:09 +09:30
andrew
b26c98af68 Hide Resend if no error 2023-07-10 00:35:13 +09:30
andrew
0824713ac5 Fix theming and polish 2023-07-10 00:12:42 +09:30
andrew
bbc9cdfeeb Cleanup ViewModel 2023-07-09 23:31:43 +09:30
andrew
d8b85768d2 Fix sms messages 2023-07-07 10:46:43 +09:30
andrew
e5b19d4ea4 Fix incorrect recipient used as threadRecipient to launch MediaPreview 2023-07-06 22:39:54 +09:30
andrew
fc87ae18f5 Fix message padding 2023-07-06 15:48:31 +09:30
andrew
1d1977ca7a Make expand button clickable 2023-07-06 15:32:51 +09:30
andrew
c417b37236 Hide thumbnails 2023-07-06 15:23:58 +09:30
andrew
8be1e8e87e Wire up voiceMessageView 2023-07-06 15:20:45 +09:30
0x330a
4c9a237d87
fix: compile errors 2023-07-06 14:48:05 +10:00
andrew
68684bb839 Refactor VisibleMessageContentView#onContentClick 2023-07-06 13:09:00 +09:30
andrew
efb5b27191 Fix divider color 2023-07-06 12:03:33 +09:30
0x330a
325abe020a Merge remote-tracking branch 'upstream/dev' into disappearing-messages
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationViewModel.kt
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/menus/ConversationMenuHelper.kt
#	app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt
#	app/src/main/java/org/thoughtcrime/securesms/database/helpers/SQLCipherOpenHelper.java
#	app/src/main/java/org/thoughtcrime/securesms/notifications/AndroidAutoReplyReceiver.java
#	app/src/main/java/org/thoughtcrime/securesms/repository/ConversationRepository.kt
#	app/src/main/res/layout/activity_conversation_v2_action_bar.xml
#	app/src/main/res/layout/expiration_dialog.xml
#	app/src/main/res/menu/menu_conversation_expiration.xml
#	app/src/main/res/menu/menu_conversation_expiration_on.xml
#	app/src/main/res/values/strings.xml
#	libsession/src/main/java/org/session/libsession/messaging/jobs/BatchMessageReceiveJob.kt
#	libsession/src/main/java/org/session/libsession/messaging/messages/control/MessageRequestResponse.kt
#	libsession/src/main/java/org/session/libsession/messaging/messages/signal/IncomingMediaMessage.java
#	libsession/src/main/java/org/session/libsession/messaging/messages/signal/IncomingTextMessage.java
#	libsession/src/main/java/org/session/libsession/messaging/messages/signal/OutgoingMediaMessage.java
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSender.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/MessageSenderClosedGroupHandler.kt
#	libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt
#	libsession/src/main/java/org/session/libsession/messaging/utilities/UpdateMessageBuilder.kt
#	libsession/src/main/java/org/session/libsession/snode/OnionRequestAPI.kt
#	libsession/src/main/java/org/session/libsession/snode/SnodeAPI.kt
#	libsignal/src/main/java/org/session/libsignal/protos/SignalServiceProtos.java
2023-07-05 22:27:59 +10:00
andrew
8d66d948ca Polish 2023-07-04 22:10:48 +09:30
andrew
d6b1440217 Refactor MessageDetailsViewModel 2023-07-04 15:27:00 +09:30
andrew
7cd2bd0e0d Cleanup 2023-07-04 15:11:40 +09:30
andrew
6209ae68a8 Cleanup 2023-07-04 14:56:35 +09:30
andrew
ee0141f82d Refactor to Components 2023-07-04 14:09:40 +09:30
andrew
f82ed7718d Cleanup CarouselButton 2023-07-04 13:26:26 +09:30
Andrew
7da3e4f022
Fix blocked contacts button (#1264) 2023-07-04 11:39:49 +09:30
andrew
26aed783e8 Fix Divider padding 2023-07-04 11:34:20 +09:30
andrew
6890f5c448 Add image click listener 2023-07-04 09:31:14 +09:30
andrew
d719660030 Add expand button 2023-07-03 21:25:59 +09:30
andrew
0fcd997290 Fix divider color 2023-07-03 20:40:16 +09:30
andrew
70e63a23bc Fix indicator colors 2023-07-03 20:12:23 +09:30
andrew
0ec93e4b36 Refactor CarouselButtons 2023-07-03 18:30:15 +09:30
andrew
1d29b5465f Refactor prev and next buttons 2023-07-03 17:41:30 +09:30
andrew
db4ff94084 Add prev and next buttons to carousel 2023-07-03 17:19:33 +09:30
andrew
1902d4755c Add pager indicator 2023-07-03 13:00:11 +09:30
Stefan Junker
ba4143c298
feat: increase voice recording limit to 5m (#1201) 2023-07-03 11:43:02 +10:00
andrew
1303979cdf Add image attachments 2023-07-03 10:35:50 +09:30
andrew
4decce9dde Add images 2023-07-01 17:41:33 +09:30
andrew
d44dbe089f Wire up buttons 2023-06-30 22:49:23 +09:30
andrew
351b259449 Add error 2023-06-30 13:25:16 +09:30
andrew
19b2c5ef97 Fix LiveDataTestUtil 2023-06-30 12:32:56 +09:30
andrew
f68c01b2ee Populate profile pic 2023-06-30 11:35:22 +09:30
andrew
92fae3d6bf Add ProfilePictureView to MessageDetailActivity 2023-06-30 11:07:27 +09:30
andrew
876e12c411 Refactor ProfilePictureView 2023-06-30 11:01:57 +09:30
andrew
6d596226b3 Add user info 2023-06-30 10:33:56 +09:30
Andrew
c039eb89bc
Fix debug screen security default (#1256) 2023-06-30 10:05:32 +09:30
andrew
676c29ca60 Add click listeners 2023-06-30 09:48:48 +09:30
andrew
ac476f4382 Add icons and respect nullability 2023-06-29 22:11:15 +09:30
andrew
d5b3d9bcf9 Improve theming 2023-06-29 19:14:47 +09:30
andrew
0c2682fe47 Improve compose theming 2023-06-29 17:11:11 +09:30
andrew
fc108b34db Create Message Details screen 2023-06-29 11:37:55 +09:30
andrew
ab8b2c42b9 Add jetpack compose 2023-06-28 10:34:48 +09:30
andrew
97297508f4 Simplify ExpirationDialog 2023-06-26 10:58:08 +09:30
andrew
20eac67761 simplify 2023-06-23 13:01:11 +09:30
andrew
4ee8dc712e Fix + button in rationale dialog 2023-06-23 11:42:19 +09:30
andrew
b46b52ace4 Merge branch 'dev' into utilise-dialog-dsl 2023-06-23 11:14:27 +09:30
andrew
8be088ad56 Reinstate v1 PNServerJob 2023-06-23 10:29:49 +09:30
andrew
e3f60eb5f2 Fix individual group subs 2023-06-21 10:32:29 +09:30
andrew
42cfce0c3e Refactor v1 and v2 2023-06-21 10:01:35 +09:30
andrew
0e0ab9151e cleanup 2023-06-20 22:34:10 +09:30
andrew
5c9dc36460 Merge branch 'dev' into add-unregister 2023-06-20 12:31:37 +09:30
Andrew
b9f24bc4bd
Add button downstates to appearance settings screen (#1224) 2023-06-20 12:04:24 +09:30
Andrew
92a6447b8a
Add button downstates throughout (#1220) 2023-06-19 11:51:14 +09:30
andrew
667af27bfb Utilise TokenManager and ExpiryManager 2023-06-16 10:45:38 +09:30
andrew
153aa4ceaa Reinstate push v1 2023-06-14 18:46:28 +09:30
andrew
440a5a942d Merge branch 'dev' into utilise-dialog-dsl 2023-06-14 11:03:27 +09:30
Andrew
cc015c45bd
Add 50 dp buffer to isScrolledToBottom (#1228) 2023-06-14 10:34:49 +09:30
andrew
be4d742e84 Unregister v1 push 2023-06-09 18:10:06 +09:30
andrew
01d80ae54b cleanup PushNotificationAPI 2023-06-09 15:56:24 +09:30
andrew
3f6229f841 Remove PushNotificationManager 2023-06-09 14:50:45 +09:30
andrew
ba6eca2443 Add FirebasePushManager#unregister 2023-06-09 09:52:11 +09:30
Morgan Pretty
026b994664
Merge pull request #1238 from oxen-io/fix/modal-backgrounds
Fix broken modal styling from 1.16.8
2023-06-08 17:31:27 +10:00
Morgan Pretty
80104f6db8 [SES-627] Fixed an issue where the DocumentView could run off the screen 2023-06-08 16:33:34 +10:00
Morgan Pretty
7699e47f7b Responded to PR comments 2023-06-07 15:02:32 +10:00
Morgan Pretty
11c1fd382d Fixed a few issues with the OpenGroupPoller
Fixed an issue where the admin/moderator status wasn't getting stored if set before joining a community
Fixed an issue where multiple pollers for the same server could run at the same time when joining multiple rooms within the same app run (very noticeable when restoring/linking)
2023-06-07 13:31:22 +10:00
andrew
1efda68334 Merge branch 'dev' into utilise-dialog-dsl 2023-06-06 19:51:50 +09:30
Morgan Pretty
22a30f1907 Fixed the MediaSendFragment progress dialog 2023-06-06 18:29:02 +10:00
Morgan Pretty
082c087105 Added the custom dialog windowBackground back (fix permission dialogs) 2023-06-06 17:30:10 +10:00
Morgan Pretty
9ce89087a5 Updated the dialog dim amount to match the style guide 2023-06-06 16:57:27 +10:00
Morgan Pretty
cea65f3e45 Fixed an issue where a bunch of dialog backgrounds were missing 2023-06-06 16:34:23 +10:00
Morgan Pretty
31608111b3 Merge remote-tracking branch 'upstream/master' into dev 2023-06-06 09:08:45 +10:00
Morgan Pretty
7f7ab63d15
Merge pull request #1164 from RyanRory/bluetooth-manager-crash
Fix crash & ANRs
2023-06-06 09:00:49 +10:00
Morgan Pretty
f1686ea260
Merge pull request #1236 from bemusementpark/fix-dialog-theme-background
Fix dialog theme to set windowColor and not background of every view
2023-06-06 08:53:40 +10:00
andrew
e5db7fc886 Fix dialog theme so it sets window color and not background of every child view 2023-06-05 19:15:42 +09:30
Morgan Pretty
9d5fa1239c Commented out the plus button on the replace profile modal 2023-06-05 17:15:05 +10:00
Morgan Pretty
346bdc1774 Merge remote-tracking branch 'upstream/dev' into bluetooth-manager-crash 2023-06-05 16:05:20 +10:00
Morgan Pretty
6c14ed26e2
Merge pull request #1229 from bemusementpark/fix-long-message
[SES-571] Fix long message not visible on react
2023-06-05 16:04:52 +10:00
Morgan Pretty
f21100eff7 [SES-569] Merge branch 'fix-pic' into bluetooth-manager-crash 2023-06-05 16:02:11 +10:00
andrew
a6cfe5817d Change unset profile pic in dialog 2023-06-05 14:58:56 +09:30
Morgan Pretty
c92ef09d09 [SES-570] Fixed an issue where quotes weren't using their quoted message media 2023-06-05 14:31:41 +10:00
andrew
e99133fd8b Fix back button background in light themes 2023-06-05 13:13:49 +09:30
andrew
09b241ba67 Fix dialog#view(layoutRes) 2023-06-05 11:11:59 +09:30
Morgan Pretty
1980113e41 [SES-566] Fixed an issue where the blocked state wasn't syncing 2023-06-05 09:39:31 +10:00
andrew
94b48d5fb9 Utilise dialog dsl in DeleteMediaPreviewDialog 2023-06-02 22:36:15 +09:30
andrew
975f9fc4d1 Utilise dialog dsl in DeleteMediaDialog 2023-06-02 22:05:34 +09:30
andrew
033eabbc53 Utilise dialog dsl in SettingsDialog 2023-06-02 19:19:43 +09:30
andrew
4641512644 Utilise dialog dsl in RationaleDialog 2023-06-02 19:11:58 +09:30
Morgan Pretty
2b7bd7417e [SES-567] Fixed a couple of issues where the Group poller would be stopped during creation 2023-06-02 17:00:20 +10:00
andrew
cbe90e7bfc Cleanup ConversationReactionOverlay 2023-06-02 15:46:28 +09:30
andrew
6d528d0e92 Fix long message not visible on react 2023-06-02 15:35:35 +09:30
andrew
72c07f4b99 Utilise dialog dsl in PrivacySettingsPreferenceFragment 2023-06-01 00:07:15 +09:30
andrew
80f21aeb41 Convert PrivacySettingsPreferenceFragment to Kotlin 2023-05-31 22:23:46 +09:30
andrew
c5f821add0 Utilise dialog dsl in ExpirationDialog 2023-05-31 21:58:38 +09:30
andrew
50271685af Utilise dialog dsl in MuteDialog 2023-05-31 18:05:23 +09:30
andrew
623cfde8b1 Utilise dialog dsl in CallToggleListener 2023-05-31 13:07:28 +09:30
andrew
391735dc28 Convert CallToggleListener to Kotlin 2023-05-31 13:02:33 +09:30
andrew
4e92c40210 Remove BaseDialog and utilise dialog DSL 2023-05-31 12:43:51 +09:30
andrew
1d8d678047 Make kotlin code use dialog dsl 2023-05-30 21:39:03 +09:30
andrew
4ee68cbbb1 Utilise dialog dsl 2023-05-30 16:49:07 +09:30
andrew
1b88d4f950 Utilise dialog dsl 2023-05-30 16:49:01 +09:30
Morgan Pretty
9b7fb3dd86 Removed the JobDatabase since it's no longer used 2023-05-30 13:31:36 +10:00
Morgan Pretty
b7744f4f2d Addressed PR feedback 2023-05-30 12:43:51 +10:00
Morgan Pretty
c77d465438 Merge remote-tracking branch 'upstream/dev' into bluetooth-manager-crash
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/backup/FullBackupExporter.kt
#	app/src/main/java/org/thoughtcrime/securesms/backup/FullBackupImporter.kt
2023-05-30 12:25:13 +10:00
Morgan Pretty
0c2a635d03 Merge remote-tracking branch 'upstream/dev' into bluetooth-manager-crash 2023-05-30 12:24:32 +10:00
Morgan Pretty
10af2815ac
Merge pull request #1176 from bemusementpark/sync-everything
Synchronize usage of Cipher
2023-05-30 12:22:28 +10:00
Andrew
e8d26222b9
Fix scroll to bottom button visibility (#1219) 2023-05-30 11:44:20 +09:30
andrew
0af713317a Merge branch 'dev' into sync-everything 2023-05-30 11:34:34 +09:30
Morgan Pretty
22ed2dd8aa
Merge pull request #1205 from bemusementpark/disable-unblock
Disable unblock button
2023-05-30 10:30:51 +10:00
Morgan Pretty
d541f395a5
Merge pull request #1213 from bemusementpark/fix-id-divider-color
Fix ID divider color
2023-05-30 10:29:57 +10:00
andrew
03aa19aae4 . 2023-05-29 18:02:20 +09:30
Andrew
5519f17775
Truncate session id when displayed as username (#1215) 2023-05-25 10:58:52 +09:30
Andrew
331d523c45
Improve notification content dialog (#1211) 2023-05-24 18:03:27 +09:30
Andrew
47d5b242ca
Fix share button color (#1212) 2023-05-24 18:00:32 +09:30
Andrew
1b231bfff3
Fix dialog button style (#1214) 2023-05-24 13:06:26 +09:30
Andrew
945df19aef
Fix radio button selection transition (#1209) 2023-05-24 11:23:57 +09:30
Andrew
95a165aa05
Fix TabLayout ripple (#1210) 2023-05-24 11:23:19 +09:30
andrew
55dd62240a Fix size & space 2023-05-23 18:49:28 +09:30
andrew
ff124b8edc Fix ID divider color 2023-05-23 18:41:04 +09:30
andrew
a295dfb248 Cleanup 2023-05-23 14:56:03 +09:30
andrew
8b39c4e56a polish 2023-05-22 22:20:52 +09:30
andrew
76466e57de Fix ripple 2023-05-22 17:03:26 +09:30
andrew
4f2ef7f2af Add SelectableItem<> 2023-05-22 15:46:12 +09:30
andrew
8ef6ec2125 . 2023-05-22 14:57:36 +09:30
Andrew
d505109aa3
Merge branch 'dev' into disable-unblock 2023-05-22 14:55:55 +09:30
Andrew
a8e77659b3
Add remove avatar 2023-05-22 14:53:58 +09:30
Andrew
8f55ac93f8
Fix accept button color 2023-05-22 14:53:05 +09:30
Andrew
6fc7b3591e
Fix ripple color 2023-05-22 14:52:27 +09:30
andrew
30d748e147 Disable unblock button 2023-05-19 23:44:07 +09:30
Jason Rhinelander
46acd7878d
New SPNS subscription and notifications
Finishes the WIP for subscribing to push notifications and handling the
new-style pushes we get.
2023-05-18 18:03:00 -03:00
andrew
235b94a905 Fix ripple color 2023-05-18 19:20:44 +09:30
Andrew
f64fe4b652
Fix device notification settings preference color 2023-05-17 22:34:46 +09:30
andrew
8c5ff1f944 Fix dialog button color 2023-05-17 14:50:20 +09:30
andrew
a334b8912a Fix device notification settings preference color 2023-05-17 14:39:47 +09:30
Andrew
ab3caf8ab5
Fix message entrance coordinates 2023-05-12 09:44:14 +09:30
Andrew
44cb8fec2c
Remove reply from context menu when you can't write 2023-05-11 22:59:53 +09:30
Andrew
e6dc5f2128
Fix links not working when message is partially offscreen 2023-05-11 22:58:12 +09:30
Andrew
fef2948f58
Fix scroll to bottom button position when input not visible 2023-05-11 22:57:08 +09:30
Andrew
57476cd56e
Fix scroll to bottom button always visible if last item is taller than RecyclerView 2023-05-11 19:48:10 +09:30
Andrew
ba9dab33c5
Synchronize Cipher in KeystoreHelper 2023-05-11 19:47:49 +09:30
Andrew
aadba75038
Add sync status message 2023-05-11 19:46:09 +09:30
Andrew
84004d2fdb
Swallow exceptions in ScreenshotObserver 2023-05-11 19:45:43 +09:30
Andrew
910ab8874e
Remove laid out check before drawToBitmap 2023-05-11 19:45:10 +09:30
ryanzhao
a7e0bd5366 Merge branch 'dev' into bluetooth-manager-crash 2023-05-11 12:16:52 +10:00
ryanzhao
88e788a406 clean 2023-05-11 12:16:37 +10:00
Andrew
8dbabec4e7
Fix send after approval message (#1178)
* Fix send after approval message

* Fix logic

* Utilise isLocalNumber
2023-05-11 10:02:38 +10:00
Andrew
2b00729df3
Fix message request button overlap (#1188) 2023-05-11 10:01:05 +10:00
Andrew
ba3566f7e8
Fix approval text position when input bar is gone (#1181) 2023-05-11 10:00:39 +10:00
ryanzhao
89545f0406 further clean up 2023-05-10 15:36:10 +10:00
andrew
d20c27d6d3 Remove laid out check before drawToBitmap 2023-05-09 22:26:36 +09:30
andrew
4469d9754a Fix bubble entrance coordinates 2023-05-09 15:10:03 +09:30
andrew
c8fa2d8d6e Remove reply from context menu when you can't write 2023-05-09 14:51:28 +09:30
ryanzhao
fa71ea1850 make RetrieveProfileAvatarJob work 2023-05-09 14:14:49 +10:00
andrew
8d38d1c0fb Fix links not working when message is partially offscreen 2023-05-09 13:29:25 +09:30
Ryan Zhao
b494088c3d WIP: further refactor on old jobs 2023-05-08 17:12:20 +10:00
andrew
b6667b83ce Fix scroll to bottom button position when input not visible 2023-05-08 14:43:08 +09:30
andrew
f0715f16e0 Fix scroll to bottom button always visible if last item is taller than RecyclerView 2023-05-08 14:09:01 +09:30
Ryan Zhao
2ceb9e2bf4 clean up old job manager 2023-05-08 12:29:21 +10:00
Ryan Zhao
2b48b52df0 remove unused jobs and wrap up old job refactoring 2023-05-08 11:18:33 +10:00
andrew
ec2abffdcc Remove logs 2023-05-08 10:33:39 +09:30
andrew
e9a15941ae Fix colors 2023-05-05 17:47:36 +09:30
ryanzhao
375815c719 WIP: refactor on jobs using old job table 2023-05-05 16:51:44 +10:00
andrew
6a5d97a0f0 Fix something 2023-05-05 12:37:46 +09:30
andrew
a9078c8d08 ...and the rest 2023-05-05 12:32:54 +09:30
andrew
a152250a60 Add comments 2023-05-05 12:18:39 +09:30
andrew
24741fcc22 Synchronize Cipher in KeystoreHelper 2023-05-05 12:10:46 +09:30
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
ryanzhao
d868021f0a move job running status from database to memory 2023-05-04 15:30:09 +10:00
ryanzhao
7a14c3f8be Merge branch 'dev' into bluetooth-manager-crash 2023-05-02 09:20:41 +10:00
Andrew
99cb10f5be
Add send approval message (#1157) 2023-05-01 17:19:19 +10:00
Andrew
83b6002a27
Fix emoji misalignment (#1155) 2023-05-01 17:19:13 +10:00
Andrew
a934c5c2e2
Fix missing media progress (#1151) 2023-05-01 17:19:01 +10:00
Andrew
70aab2994b
Refactor MmsDatabase (#1169) 2023-05-01 17:16:48 +10:00
Ryan Zhao
2630c97a4e add where clause for marking all jobs pending to reduce the time for writing to db 2023-05-01 17:01:57 +10:00
ryanzhao
bd4f451513 Merge branch 'dev' into bluetooth-manager-crash 2023-04-27 14:38:09 +10:00
andrew
58e532f0ec Swallow screenshot exceptions 2023-04-26 16:31:28 +09:30
Andrew Gallasch
ffef98ecc9
Fix LandingActivity textColor (#1159) 2023-04-26 14:59:32 +10:00
Andrew Gallasch
5d552a7f93
Remove unnecessary api version checks in WindowUtil (#1163) 2023-04-26 14:56:00 +10:00
Andrew Gallasch
716fc1f4fa
Add SafeViewPager to fix touch exception in MediaPreviewActivity (#1166) 2023-04-26 14:54:54 +10:00
Andrew Gallasch
7d33177e06
Fix status and nav bar colors (#1165) 2023-04-26 14:48:34 +10:00
Ryan Zhao
c7bbdb778b minor refactor 2023-04-24 15:50:53 +10:00
Ryan Zhao
51856138e3 refactor on SignalAudioManager 2023-04-24 15:38:06 +10:00
0x330a
d2e80c3157
feat: re-add bencode utility and fix tests to use bytearray instead of assuming utf-8 encoding for strings 2023-04-21 13:56:08 +10:00
0x330a
7762d534bb
feat: add no op push manager for de-googled 2023-04-20 17:25:03 +10:00
0x330a
8d4f2445f2
feat: add support for firebase and split out google services as a dependency for only the play version of the app. Add support for requests in new pn server 2023-04-20 17:12:38 +10:00
0x330a
2246a5d9ce feat: introduce new pns models and wire kotlinx serialization to apply in libsession 2023-04-19 23:07:36 +10:00
Andrew Gallasch
63d442584c
Fix empty message behind media message (#1150) 2023-04-13 16:54:03 +10:00
SzBenedek2006
7b0c014791
Fix hungarian translations (#1140) 2023-04-13 10:40:32 +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
wafflesvsfrankie
9ad73139b6
Add accessibility tags (#1054)
* adding accessibility id to new conversation button

* adding accessibility ids and strings for testing

* updating id tags for new conversation buttons

* accessibility tags for create contact test

* adding ids for message requests, config message, requests banner and conversation view

* adding more tags to settings page

* adding tags to different resolutions for landing page

* updating display name in settings to include accessibility id

* found some stashed changes which i forgot about

* more stashed changes

* adding tags to layout sw400dp

* closed group testing, delete/unsend message testing and selecting contacts tag

* adding tags for message body, selecting contacts for group creation, deleted message config, unsend message modal, and trash icon

* added tags for disappearing messages menu option, time selector, clock icon, confirm of change (ok)and control message

* add test for block user

* docs: Adding in accessibility ID's for Appium testing

* accessibility tags for conversation options, profile picture/settings and block options

* Add content descriptions for better accessibility

* Add more content descriptions

* Add timer icon content description

* Update profile picture content description

* Adding accessibility ids to new conversation creation screen and to message notification settings

* fix: content descriptions in their correct places and prevent a crash

* build: update build number

* build: update build number

* Adding back in FrameLayout, making changes as request

* Fixed viewPager move

* Fixing changes as requested by Jubb

* Adding content descriptions to mentions list, voice message settings, link preview permissions, closed group menu and slow mode notifications option

* Adds content descriptions to blocked contacts heading in conversations settings, individual contacts in blocked contacts page and to empty message requests folder

* Adds content descriptions to empty message request folder and text input box for username on settings page

---------

Co-authored-by: charles <charles@oxen.io>
Co-authored-by: hjubb <hjubb@users.noreply.github.com>
2023-04-04 11:33:17 +10:00
hjubb
2a2f90276d Merge branch 'master' into dev 2023-04-03 09:58:16 +10: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
Float-hu
a062e1c2b2
Update zh-rCN strings.xml (#1129) 2023-03-16 10:18:18 +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
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
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
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
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
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
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
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
025989f928
Merge pull request #1069 from mpretty-cyro/feature/performance-improvements
Performance improvements
2023-01-24 13:59:32 +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
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
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
ba87cbc070
fix: standardise call menu recipient function to share with the new action bar to center better. issue with closed group creation on multi device potentially 2023-01-16 16:54:16 +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
0x330a
f0aba3a973
fix: look at early expiring incoming messages for delete after read 2023-01-13 16:38:37 +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
0x330a
2048e08c86
fix: legacy message deletions working better now 2023-01-11 17:25:38 +11:00
0x330a
b6a4fb9024
refactor: fix star imports 2023-01-11 13:37:55 +11:00
0x330a
06947b63fb
fix: handle the correct legacy setting of expiring config based on thread not message sender (incorrectly attributing to 1o1 instead of groups 2023-01-11 12:06:43 +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
1a28fd2a9e Added code to migrate from SQLCipher 3 to 4 2023-01-05 16:56:52 +11:00
charles
0f4e18fe93 Update group admin check 2022-12-23 11:58:49 +11:00
charles
cdbf76c0f1 Only allow admins to change disappearing messages config 2022-12-22 18:20:13 +11:00
charles
1f0a0760ba Cleanup refactor 2022-12-22 17:23:05 +11:00
charles
6769789e9c Fix call info expiry 2022-12-22 15:05:33 +11:00
charles
03766d57ee Disappear after read info refactor 2022-12-22 14:18:40 +11:00
charles
f600e4d343 Add accessibility id's 2022-12-22 12:07:45 +11:00
charles
7c6e4679fe Expire data extraction messages 2022-12-22 11:07:57 +11:00
charles
03c95f1ba7 Expire group update info and call messages 2022-12-22 10:42:09 +11:00
charles
e460e086e6 Cleanup 2022-12-21 18:33:48 +11:00
charles
18ff597811 Fix outdated client banner display 2022-12-21 17:47:00 +11:00
charles
2228bfc8f2 Fix expiry start 2022-12-21 15:48:56 +11:00
charles
2ed271271a Fix disappearing messages menu item title 2022-12-21 13:00:21 +11:00
charles
4cfa8002d6 Refactor 2022-12-21 12:48:16 +11:00
charles
7d25fd9f4c Start disappearing after sent 2022-12-21 12:46:43 +11:00
charles
92b30739f0 Disappearing messages job update 2022-12-21 12:14:56 +11:00
charles
304bf42c0d Fix expiry info disappearance 2022-12-20 17:27:26 +11:00
charles
42923b5c2b Fix message disappearance after send 2022-12-20 13:14:36 +11:00
charles
3c6b93b2f8 Merge branch 'dev' into disappearing-messages 2022-12-19 20:23:50 +11:00
charles
487f99ab93 Fix expiry timer update handling 2022-12-19 19:59:36 +11:00
charles
644484b650 Restore disappearing messages menu item 2022-12-19 14:59:12 +11:00
charles
9d056ff15b Update disappearing messages client status banner display logic 2022-12-19 14:10:12 +11:00
charles
d52fc4d70a Default to first expiration timer option 2022-12-19 13:16:20 +11:00
charles
70abf8a4d2 Close expiration settings screen after save 2022-12-19 12:41:17 +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
charles
065417ebbb Add synced expiries job 2022-12-19 11:22:13 +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
charles
9e004cd09a Expiration config tweaks 2022-12-16 15:57:00 +11:00
charles
b18cebe03d Fix conversation title alignment 2022-12-16 13:51:28 +11:00
charles
d23b849c91 Group settings refactor 2022-12-16 13:35:55 +11:00
charles
2494483afb Clear open group inbox messages 2022-12-16 11:18:09 +11:00
charles
ee6f393c9a Make conversation settings pager cyclic 2022-12-15 13:48:53 +11:00
charles
312164e364 Revert overflow menu changes 2022-12-15 13:19:07 +11:00
charles
48a99a85c3 Legacy expiration type ui default tweaks 2022-12-15 10:05:07 +11:00
charles
23c881f3ce Legacy expiration type handling tweaks 2022-12-14 18:22:57 +11:00
charles
a6f9e17122 Legacy settings ui tweaks 2022-12-14 16:59:09 +11:00
0x330a
d9a815a729
Add adaptive monochrome icon based on the current ic_launcher_foreground (#1037)
* fix: Selected message theme colours and crash fixes (#1025)

* Fixed a bug where message requests could incorrectly appear in the thread list (#1009)

* New app theming (#1010)

* feat: start new app theming feature

* feat: add some theming colours

* refactor: start refactoring themes and colours to use dynamic attributes

* feat: adding more colours and switching over default colours to be theme based instead of hard-coded or day/night specific

* refactor: take a look at ocean light and logo colour

* feat: global search colours for light and dark ocean

* feat: more styling

* feat: adding themes to conversation activity and refactoring the base theme to apply over the top of the activity's theme so it retains noActionBar etc

* feat: add dynamic accent color

* docs: add todo for changing how accent colour is applied

* feat: update new theming to use override primary style so that the regular colorAccent attribute can be used in existing layouts

* feat: coordinating styles across layouts, fixing up pinned icons and naming for conversation list items

* refactor: re-styling layouts to match new themes and attributes. Need to figure out action mode close button

* refactor: remove @color/text and replace with ?android:textColorPrimary to override in themes

* refactor: add context theme wrapper to bottom sheet dialog that references accent color

* fix: input bar bug fix and preference activity themes

* refactor: new settings menu options

* fix: crash for PNModeActivity.kt

refactor: move ordering in seed dialog to match designs, copy changes to match new settings menu

* feat: add new appearance settings activity

* refactor: title and VM changes

* fix: correct override

* feat: add theme appearance screen UI features and start VM implementation. re-add legacy theme utils to get default for migration

* fix: compile errors and missing themes from emoji features

* refactor: remove background shape alteration and old bottom sheet styles, re-add the theme mode attr

* feat: appearance screen wired up, just need to refresh theme

* feat: add theme state recreation and fix match system settings option

* refactor: add bottom margin

* feat: explore custom preference category

* feat: add the customized session theme for CorrectedPreferenceFragment

* feat: replace AppProtectionPreferenceFragment to extend ListSummaryPreferenceFragment

* refactor: change drawable style and remove explicit dividers

* refactor: remove divider in CorrectedPreferenceFragment

* feat: add theme state check on resume, might be jarring currently

* feat: add preference divider elements for settings menu

* refactor: settings menu redesigns

* refactor: change led preference to integer and refactor TextSecurePreferences.kt

* feat: add scroll parcel to save/restore hierarchy on restart with appearance changes

* feat: add the conversations blocked contacts and refactor preference order and copy

* feat: add blocked contacts activity, basic layout and vm

* feat: add unblock DB functions and storage protocol, start working on the DB query state flow, might have to just implement recipient on modified listener

* feat: add blocked contacts and notif recipient listeners

* feat: add recipient db reader

* feat: add blocked contact interactions and fix a theming crash for notifications

* feat: introduce better equals and hashcode implementations to recipient, replace home diff util content check with hashcode-based comparison

* feat: add settings menu vectors

* fix: preview compile error

* refactor: migrating settings menu to new designs

* feat: help menu

* refactor: simplify link opening

* refactor: remove space

* feat: refactor preferences and start theming for light mode options

* refactor: fixing dark and light modes with dialogs

* refactor: popup dialogs use proper themes now

* refactor: alert dialogs and media edit fragments use attribute references

* refactor: use input bar button attribute instead color control normal in vector tint

* refactor: transparency, dialog fixes, notification fix

* refactor: attrs and styles for buttons

* fix: use prominent button color on the outline button's border

* fix: fix the trash

* refactor: remove the appearance

* refactor: avatar placeholder generation, chips and element border styles

* refactor: use colors instead of style references

* refactor: theming changes to match designs and feedback

* refactor: the titles are bold and the categories are tertiary coloured now

* fix: appearance settings match preferences, search bottom bar uses themed attributes

* refactor: increase setting button height

* Update clear all data dialog

* Update seed dialog

* refactor: more qa feedback changes

* feat: add new TLs and fa-rIR TLs

* Update notification content dialog

* Fix message requests clear all button text color

* feat: re-add screenshot observer

* refactor: make send tint accent color

* feat: add unread background differences

* fix: change unread count indicator

* build: upgrade build numbers

* Fix message requests popupmenu background color

* fix: crash from attr reference in color attribute

* build: upgrade build number

* fix: message bubbles, thumbnail backgrounds, search bar visibility with input bar, attachment buttons

* fix: tertiary text for keyboard page search view

* fix: emoji overflow colour differences

* fix: reaction pill dialog background is now correct colour

* Add style to reactions tab layout

* fix: appearance activity reverting primary color at correct time

* fix: show call privacy warning every time instead of just once

* fix: gradient background(?) and audio autoplay disable

* fix: crash in all media containing documents

* fix: reaction dialog heading fixes

* Add style to reactions tab layout

* fix: remove gradient backgrounds

* fix: adding new reaction normal text attribute to try correct the tab layout

* fix: ocean dark unread/read colours

* build; update build number

* build: update build number

* Fix ocean light theme pin color

* Update classic dark unread indicator text color

* Reduce group name text size on join community screen

* Restore tab indicator color on join community and all media screens

* Home adapter rename

* Updated the HomeViewModel to cancel old executors when new ones are added (#1)

* Updated the HomeViewModel to cancel old executors when new ones are added

* Removed a seemingly unneeded update

* Explicitly remove observers when the HomeActivity is paused (#2)

Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>

* Play fixes (#1017)

* fix: Prevent crash from recipient modification listener

* fix: Add message selection highlight color

* Handle crash from fingerprint auth

* Update message selection highlight colors

* Handle call answer/hangup processing appropriately

* Add proguard rule for ContextMenuList

* Handle more calls intents

Co-authored-by: charles <charles@oxen.io>

Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>
Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>

* release: increment build number

* feat: add adaptive monochrome icon

Co-authored-by: ceokot <ceokot@users.noreply.github.com>
Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>
Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
2022-12-14 11:34:31 +11:00
0x330a
6fbfc95ad2
Make selected message colours more visible, fix classic dark read indicator (#1031)
* fix: Selected message theme colours and crash fixes (#1025)

* Fixed a bug where message requests could incorrectly appear in the thread list (#1009)

* New app theming (#1010)

* feat: start new app theming feature

* feat: add some theming colours

* refactor: start refactoring themes and colours to use dynamic attributes

* feat: adding more colours and switching over default colours to be theme based instead of hard-coded or day/night specific

* refactor: take a look at ocean light and logo colour

* feat: global search colours for light and dark ocean

* feat: more styling

* feat: adding themes to conversation activity and refactoring the base theme to apply over the top of the activity's theme so it retains noActionBar etc

* feat: add dynamic accent color

* docs: add todo for changing how accent colour is applied

* feat: update new theming to use override primary style so that the regular colorAccent attribute can be used in existing layouts

* feat: coordinating styles across layouts, fixing up pinned icons and naming for conversation list items

* refactor: re-styling layouts to match new themes and attributes. Need to figure out action mode close button

* refactor: remove @color/text and replace with ?android:textColorPrimary to override in themes

* refactor: add context theme wrapper to bottom sheet dialog that references accent color

* fix: input bar bug fix and preference activity themes

* refactor: new settings menu options

* fix: crash for PNModeActivity.kt

refactor: move ordering in seed dialog to match designs, copy changes to match new settings menu

* feat: add new appearance settings activity

* refactor: title and VM changes

* fix: correct override

* feat: add theme appearance screen UI features and start VM implementation. re-add legacy theme utils to get default for migration

* fix: compile errors and missing themes from emoji features

* refactor: remove background shape alteration and old bottom sheet styles, re-add the theme mode attr

* feat: appearance screen wired up, just need to refresh theme

* feat: add theme state recreation and fix match system settings option

* refactor: add bottom margin

* feat: explore custom preference category

* feat: add the customized session theme for CorrectedPreferenceFragment

* feat: replace AppProtectionPreferenceFragment to extend ListSummaryPreferenceFragment

* refactor: change drawable style and remove explicit dividers

* refactor: remove divider in CorrectedPreferenceFragment

* feat: add theme state check on resume, might be jarring currently

* feat: add preference divider elements for settings menu

* refactor: settings menu redesigns

* refactor: change led preference to integer and refactor TextSecurePreferences.kt

* feat: add scroll parcel to save/restore hierarchy on restart with appearance changes

* feat: add the conversations blocked contacts and refactor preference order and copy

* feat: add blocked contacts activity, basic layout and vm

* feat: add unblock DB functions and storage protocol, start working on the DB query state flow, might have to just implement recipient on modified listener

* feat: add blocked contacts and notif recipient listeners

* feat: add recipient db reader

* feat: add blocked contact interactions and fix a theming crash for notifications

* feat: introduce better equals and hashcode implementations to recipient, replace home diff util content check with hashcode-based comparison

* feat: add settings menu vectors

* fix: preview compile error

* refactor: migrating settings menu to new designs

* feat: help menu

* refactor: simplify link opening

* refactor: remove space

* feat: refactor preferences and start theming for light mode options

* refactor: fixing dark and light modes with dialogs

* refactor: popup dialogs use proper themes now

* refactor: alert dialogs and media edit fragments use attribute references

* refactor: use input bar button attribute instead color control normal in vector tint

* refactor: transparency, dialog fixes, notification fix

* refactor: attrs and styles for buttons

* fix: use prominent button color on the outline button's border

* fix: fix the trash

* refactor: remove the appearance

* refactor: avatar placeholder generation, chips and element border styles

* refactor: use colors instead of style references

* refactor: theming changes to match designs and feedback

* refactor: the titles are bold and the categories are tertiary coloured now

* fix: appearance settings match preferences, search bottom bar uses themed attributes

* refactor: increase setting button height

* Update clear all data dialog

* Update seed dialog

* refactor: more qa feedback changes

* feat: add new TLs and fa-rIR TLs

* Update notification content dialog

* Fix message requests clear all button text color

* feat: re-add screenshot observer

* refactor: make send tint accent color

* feat: add unread background differences

* fix: change unread count indicator

* build: upgrade build numbers

* Fix message requests popupmenu background color

* fix: crash from attr reference in color attribute

* build: upgrade build number

* fix: message bubbles, thumbnail backgrounds, search bar visibility with input bar, attachment buttons

* fix: tertiary text for keyboard page search view

* fix: emoji overflow colour differences

* fix: reaction pill dialog background is now correct colour

* Add style to reactions tab layout

* fix: appearance activity reverting primary color at correct time

* fix: show call privacy warning every time instead of just once

* fix: gradient background(?) and audio autoplay disable

* fix: crash in all media containing documents

* fix: reaction dialog heading fixes

* Add style to reactions tab layout

* fix: remove gradient backgrounds

* fix: adding new reaction normal text attribute to try correct the tab layout

* fix: ocean dark unread/read colours

* build; update build number

* build: update build number

* Fix ocean light theme pin color

* Update classic dark unread indicator text color

* Reduce group name text size on join community screen

* Restore tab indicator color on join community and all media screens

* Home adapter rename

* Updated the HomeViewModel to cancel old executors when new ones are added (#1)

* Updated the HomeViewModel to cancel old executors when new ones are added

* Removed a seemingly unneeded update

* Explicitly remove observers when the HomeActivity is paused (#2)

Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>

* Play fixes (#1017)

* fix: Prevent crash from recipient modification listener

* fix: Add message selection highlight color

* Handle crash from fingerprint auth

* Update message selection highlight colors

* Handle call answer/hangup processing appropriately

* Add proguard rule for ContextMenuList

* Handle more calls intents

Co-authored-by: charles <charles@oxen.io>

Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>
Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>

* release: increment build number

* fix: make selected colours more visible, make read indicator more visible in dark mode

* refactor: revert ocean dark selected

Co-authored-by: ceokot <ceokot@users.noreply.github.com>
Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>
Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
2022-12-14 11:34:18 +11:00
charles
4b66e0516d Default expiration timer value to zero 2022-12-13 18:41:22 +11:00
charles
a4e64187f1 Cleanup expiring message manager 2022-12-09 13:51:44 +11:00
charles
d70bfe5614 Add pre-release config flag and client version detection 2022-12-08 13:38:53 +11:00
charles
b06ef713c2 Update outdated client banner message 2022-12-08 10:53:47 +11:00
0x330a
7fcd754f00
fix: don't use themed text color primary for the media send fragment (#1038) 2022-12-07 14:05:11 +11:00
charles
8c002247d6 Move expiration configuration to a separate table 2022-12-05 14:41:52 +11:00
charles
92123b2417 Restore disappearing messages off menu item 2022-12-05 10:53:32 +11:00
charles
84ee3eba21 Add legacy and pre-release ui updates 2022-12-01 13:40:48 +11:00
charles
cc8fdb58dd Remove off option from one-to-one conversation expiration settings 2022-11-29 14:20:45 +11:00
charles
820354d451 Fix subtitle differ 2022-11-24 11:05:06 +11:00
charles
f599238b03 Fix open group member count display 2022-11-23 17:01:12 +11:00
charles
962e648bb8 One to one migration refactor 2022-11-21 16:58:00 +11:00
charles
24a020b99f Group migration refactor 2022-11-21 10:54:07 +11:00
charles
3bb19e4df8 Connect migrated expiry to settings ui 2022-11-17 15:15:50 +11:00
charles
b3e9708649 Merge branch 'my-dev' into disappearing-messages
# Conflicts:
#	app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt
2022-11-17 11:26:20 +11:00
charles
6eba3ac8af Update expiry configuration 2022-11-17 11:17:58 +11:00
charles
b529d6d341 Replace overflow menu with user profile or group settings icon 2022-11-07 15:09:24 +11:00
charles
2816377e34 Attach delegate 2022-11-04 09:03:54 +11:00
charles
290e646679 Add conversation settings pager in toolbar 2022-11-03 15:17:55 +11:00
charles
29efd41939 Fix set button padding 2022-11-02 11:47:56 +11:00
charles
da8d93504a Add group disappearing messages settings footer 2022-10-28 16:36:38 +11:00
charles
68ca048267 Add timer selector 2022-10-28 15:36:59 +11:00
charles
63f372b45c Add expiration settings screen 2022-10-26 19:28:08 +11:00
charles
e6d854a4ea Show disappearing messages setting menu on Note to Self conversation 2022-10-26 17:52:47 +11:00
ceokot
427b2d7b5f
fix: Selected message theme colours and crash fixes (#1025)
* Fixed a bug where message requests could incorrectly appear in the thread list (#1009)

* New app theming (#1010)

* feat: start new app theming feature

* feat: add some theming colours

* refactor: start refactoring themes and colours to use dynamic attributes

* feat: adding more colours and switching over default colours to be theme based instead of hard-coded or day/night specific

* refactor: take a look at ocean light and logo colour

* feat: global search colours for light and dark ocean

* feat: more styling

* feat: adding themes to conversation activity and refactoring the base theme to apply over the top of the activity's theme so it retains noActionBar etc

* feat: add dynamic accent color

* docs: add todo for changing how accent colour is applied

* feat: update new theming to use override primary style so that the regular colorAccent attribute can be used in existing layouts

* feat: coordinating styles across layouts, fixing up pinned icons and naming for conversation list items

* refactor: re-styling layouts to match new themes and attributes. Need to figure out action mode close button

* refactor: remove @color/text and replace with ?android:textColorPrimary to override in themes

* refactor: add context theme wrapper to bottom sheet dialog that references accent color

* fix: input bar bug fix and preference activity themes

* refactor: new settings menu options

* fix: crash for PNModeActivity.kt

refactor: move ordering in seed dialog to match designs, copy changes to match new settings menu

* feat: add new appearance settings activity

* refactor: title and VM changes

* fix: correct override

* feat: add theme appearance screen UI features and start VM implementation. re-add legacy theme utils to get default for migration

* fix: compile errors and missing themes from emoji features

* refactor: remove background shape alteration and old bottom sheet styles, re-add the theme mode attr

* feat: appearance screen wired up, just need to refresh theme

* feat: add theme state recreation and fix match system settings option

* refactor: add bottom margin

* feat: explore custom preference category

* feat: add the customized session theme for CorrectedPreferenceFragment

* feat: replace AppProtectionPreferenceFragment to extend ListSummaryPreferenceFragment

* refactor: change drawable style and remove explicit dividers

* refactor: remove divider in CorrectedPreferenceFragment

* feat: add theme state check on resume, might be jarring currently

* feat: add preference divider elements for settings menu

* refactor: settings menu redesigns

* refactor: change led preference to integer and refactor TextSecurePreferences.kt

* feat: add scroll parcel to save/restore hierarchy on restart with appearance changes

* feat: add the conversations blocked contacts and refactor preference order and copy

* feat: add blocked contacts activity, basic layout and vm

* feat: add unblock DB functions and storage protocol, start working on the DB query state flow, might have to just implement recipient on modified listener

* feat: add blocked contacts and notif recipient listeners

* feat: add recipient db reader

* feat: add blocked contact interactions and fix a theming crash for notifications

* feat: introduce better equals and hashcode implementations to recipient, replace home diff util content check with hashcode-based comparison

* feat: add settings menu vectors

* fix: preview compile error

* refactor: migrating settings menu to new designs

* feat: help menu

* refactor: simplify link opening

* refactor: remove space

* feat: refactor preferences and start theming for light mode options

* refactor: fixing dark and light modes with dialogs

* refactor: popup dialogs use proper themes now

* refactor: alert dialogs and media edit fragments use attribute references

* refactor: use input bar button attribute instead color control normal in vector tint

* refactor: transparency, dialog fixes, notification fix

* refactor: attrs and styles for buttons

* fix: use prominent button color on the outline button's border

* fix: fix the trash

* refactor: remove the appearance

* refactor: avatar placeholder generation, chips and element border styles

* refactor: use colors instead of style references

* refactor: theming changes to match designs and feedback

* refactor: the titles are bold and the categories are tertiary coloured now

* fix: appearance settings match preferences, search bottom bar uses themed attributes

* refactor: increase setting button height

* Update clear all data dialog

* Update seed dialog

* refactor: more qa feedback changes

* feat: add new TLs and fa-rIR TLs

* Update notification content dialog

* Fix message requests clear all button text color

* feat: re-add screenshot observer

* refactor: make send tint accent color

* feat: add unread background differences

* fix: change unread count indicator

* build: upgrade build numbers

* Fix message requests popupmenu background color

* fix: crash from attr reference in color attribute

* build: upgrade build number

* fix: message bubbles, thumbnail backgrounds, search bar visibility with input bar, attachment buttons

* fix: tertiary text for keyboard page search view

* fix: emoji overflow colour differences

* fix: reaction pill dialog background is now correct colour

* Add style to reactions tab layout

* fix: appearance activity reverting primary color at correct time

* fix: show call privacy warning every time instead of just once

* fix: gradient background(?) and audio autoplay disable

* fix: crash in all media containing documents

* fix: reaction dialog heading fixes

* Add style to reactions tab layout

* fix: remove gradient backgrounds

* fix: adding new reaction normal text attribute to try correct the tab layout

* fix: ocean dark unread/read colours

* build; update build number

* build: update build number

* Fix ocean light theme pin color

* Update classic dark unread indicator text color

* Reduce group name text size on join community screen

* Restore tab indicator color on join community and all media screens

* Home adapter rename

* Updated the HomeViewModel to cancel old executors when new ones are added (#1)

* Updated the HomeViewModel to cancel old executors when new ones are added

* Removed a seemingly unneeded update

* Explicitly remove observers when the HomeActivity is paused (#2)

Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>

* Play fixes (#1017)

* fix: Prevent crash from recipient modification listener

* fix: Add message selection highlight color

* Handle crash from fingerprint auth

* Update message selection highlight colors

* Handle call answer/hangup processing appropriately

* Add proguard rule for ContextMenuList

* Handle more calls intents

Co-authored-by: charles <charles@oxen.io>

Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>
Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
2022-10-24 15:45:26 +11:00
ceokot
1dbcffe40b
Play fixes (#1017)
* fix: Prevent crash from recipient modification listener

* fix: Add message selection highlight color

* Handle crash from fingerprint auth

* Update message selection highlight colors

* Handle call answer/hangup processing appropriately

* Add proguard rule for ContextMenuList

* Handle more calls intents

Co-authored-by: charles <charles@oxen.io>
2022-10-24 14:24:57 +11:00
charles
10d0134269 fix: Use text color secondary for conversation pinned icon 2022-10-19 13:15:05 +11:00
charles
2216c99dcd release: increment build number 2022-10-18 18:05:41 +11:00
ceokot
3018937ad9
New app theming (#1011)
* Fixed a bug where message requests could incorrectly appear in the thread list (#1009)

* New app theming (#1010)

* feat: start new app theming feature

* feat: add some theming colours

* refactor: start refactoring themes and colours to use dynamic attributes

* feat: adding more colours and switching over default colours to be theme based instead of hard-coded or day/night specific

* refactor: take a look at ocean light and logo colour

* feat: global search colours for light and dark ocean

* feat: more styling

* feat: adding themes to conversation activity and refactoring the base theme to apply over the top of the activity's theme so it retains noActionBar etc

* feat: add dynamic accent color

* docs: add todo for changing how accent colour is applied

* feat: update new theming to use override primary style so that the regular colorAccent attribute can be used in existing layouts

* feat: coordinating styles across layouts, fixing up pinned icons and naming for conversation list items

* refactor: re-styling layouts to match new themes and attributes. Need to figure out action mode close button

* refactor: remove @color/text and replace with ?android:textColorPrimary to override in themes

* refactor: add context theme wrapper to bottom sheet dialog that references accent color

* fix: input bar bug fix and preference activity themes

* refactor: new settings menu options

* fix: crash for PNModeActivity.kt

refactor: move ordering in seed dialog to match designs, copy changes to match new settings menu

* feat: add new appearance settings activity

* refactor: title and VM changes

* fix: correct override

* feat: add theme appearance screen UI features and start VM implementation. re-add legacy theme utils to get default for migration

* fix: compile errors and missing themes from emoji features

* refactor: remove background shape alteration and old bottom sheet styles, re-add the theme mode attr

* feat: appearance screen wired up, just need to refresh theme

* feat: add theme state recreation and fix match system settings option

* refactor: add bottom margin

* feat: explore custom preference category

* feat: add the customized session theme for CorrectedPreferenceFragment

* feat: replace AppProtectionPreferenceFragment to extend ListSummaryPreferenceFragment

* refactor: change drawable style and remove explicit dividers

* refactor: remove divider in CorrectedPreferenceFragment

* feat: add theme state check on resume, might be jarring currently

* feat: add preference divider elements for settings menu

* refactor: settings menu redesigns

* refactor: change led preference to integer and refactor TextSecurePreferences.kt

* feat: add scroll parcel to save/restore hierarchy on restart with appearance changes

* feat: add the conversations blocked contacts and refactor preference order and copy

* feat: add blocked contacts activity, basic layout and vm

* feat: add unblock DB functions and storage protocol, start working on the DB query state flow, might have to just implement recipient on modified listener

* feat: add blocked contacts and notif recipient listeners

* feat: add recipient db reader

* feat: add blocked contact interactions and fix a theming crash for notifications

* feat: introduce better equals and hashcode implementations to recipient, replace home diff util content check with hashcode-based comparison

* feat: add settings menu vectors

* fix: preview compile error

* refactor: migrating settings menu to new designs

* feat: help menu

* refactor: simplify link opening

* refactor: remove space

* feat: refactor preferences and start theming for light mode options

* refactor: fixing dark and light modes with dialogs

* refactor: popup dialogs use proper themes now

* refactor: alert dialogs and media edit fragments use attribute references

* refactor: use input bar button attribute instead color control normal in vector tint

* refactor: transparency, dialog fixes, notification fix

* refactor: attrs and styles for buttons

* fix: use prominent button color on the outline button's border

* fix: fix the trash

* refactor: remove the appearance

* refactor: avatar placeholder generation, chips and element border styles

* refactor: use colors instead of style references

* refactor: theming changes to match designs and feedback

* refactor: the titles are bold and the categories are tertiary coloured now

* fix: appearance settings match preferences, search bottom bar uses themed attributes

* refactor: increase setting button height

* Update clear all data dialog

* Update seed dialog

* refactor: more qa feedback changes

* feat: add new TLs and fa-rIR TLs

* Update notification content dialog

* Fix message requests clear all button text color

* feat: re-add screenshot observer

* refactor: make send tint accent color

* feat: add unread background differences

* fix: change unread count indicator

* build: upgrade build numbers

* Fix message requests popupmenu background color

* fix: crash from attr reference in color attribute

* build: upgrade build number

* fix: message bubbles, thumbnail backgrounds, search bar visibility with input bar, attachment buttons

* fix: tertiary text for keyboard page search view

* fix: emoji overflow colour differences

* fix: reaction pill dialog background is now correct colour

* Add style to reactions tab layout

* fix: appearance activity reverting primary color at correct time

* fix: show call privacy warning every time instead of just once

* fix: gradient background(?) and audio autoplay disable

* fix: crash in all media containing documents

* fix: reaction dialog heading fixes

* Add style to reactions tab layout

* fix: remove gradient backgrounds

* fix: adding new reaction normal text attribute to try correct the tab layout

* fix: ocean dark unread/read colours

* build; update build number

* build: update build number

* Fix ocean light theme pin color

* Update classic dark unread indicator text color

* Reduce group name text size on join community screen

* Restore tab indicator color on join community and all media screens

* Home adapter rename

* Updated the HomeViewModel to cancel old executors when new ones are added (#1)

* Updated the HomeViewModel to cancel old executors when new ones are added

* Removed a seemingly unneeded update

* Explicitly remove observers when the HomeActivity is paused (#2)

Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>

Co-authored-by: Morgan Pretty <mpretty-cyro@users.noreply.github.com>
Co-authored-by: jubb <hjubb@users.noreply.github.com>
Co-authored-by: charles <charles@oxen.io>
2022-10-18 17:59:47 +11:00
Harris
7a773016da
New app theming (#913)
* feat: start new app theming feature

* feat: add some theming colours

* refactor: start refactoring themes and colours to use dynamic attributes

* feat: adding more colours and switching over default colours to be theme based instead of hard-coded or day/night specific

* refactor: take a look at ocean light and logo colour

* feat: global search colours for light and dark ocean

* feat: more styling

* feat: adding themes to conversation activity and refactoring the base theme to apply over the top of the activity's theme so it retains noActionBar etc

* feat: add dynamic accent color

* docs: add todo for changing how accent colour is applied

* feat: update new theming to use override primary style so that the regular colorAccent attribute can be used in existing layouts

* feat: coordinating styles across layouts, fixing up pinned icons and naming for conversation list items

* refactor: re-styling layouts to match new themes and attributes. Need to figure out action mode close button

* refactor: remove @color/text and replace with ?android:textColorPrimary to override in themes

* refactor: add context theme wrapper to bottom sheet dialog that references accent color

* fix: input bar bug fix and preference activity themes

* refactor: new settings menu options

* fix: crash for PNModeActivity.kt

refactor: move ordering in seed dialog to match designs, copy changes to match new settings menu

* feat: add new appearance settings activity

* refactor: title and VM changes

* fix: correct override

* feat: add theme appearance screen UI features and start VM implementation. re-add legacy theme utils to get default for migration

* fix: compile errors and missing themes from emoji features

* refactor: remove background shape alteration and old bottom sheet styles, re-add the theme mode attr

* feat: appearance screen wired up, just need to refresh theme

* feat: add theme state recreation and fix match system settings option

* refactor: add bottom margin

* feat: explore custom preference category

* feat: add the customized session theme for CorrectedPreferenceFragment

* feat: replace AppProtectionPreferenceFragment to extend ListSummaryPreferenceFragment

* refactor: change drawable style and remove explicit dividers

* refactor: remove divider in CorrectedPreferenceFragment

* feat: add theme state check on resume, might be jarring currently

* feat: add preference divider elements for settings menu

* refactor: settings menu redesigns

* refactor: change led preference to integer and refactor TextSecurePreferences.kt

* feat: add scroll parcel to save/restore hierarchy on restart with appearance changes

* feat: add the conversations blocked contacts and refactor preference order and copy

* feat: add blocked contacts activity, basic layout and vm

* feat: add unblock DB functions and storage protocol, start working on the DB query state flow, might have to just implement recipient on modified listener

* feat: add blocked contacts and notif recipient listeners

* feat: add recipient db reader

* feat: add blocked contact interactions and fix a theming crash for notifications

* feat: introduce better equals and hashcode implementations to recipient, replace home diff util content check with hashcode-based comparison

* feat: add settings menu vectors

* fix: preview compile error

* refactor: migrating settings menu to new designs

* feat: help menu

* refactor: simplify link opening

* refactor: remove space

* feat: refactor preferences and start theming for light mode options

* refactor: fixing dark and light modes with dialogs

* refactor: popup dialogs use proper themes now

* refactor: alert dialogs and media edit fragments use attribute references

* refactor: use input bar button attribute instead color control normal in vector tint

* refactor: transparency, dialog fixes, notification fix

* refactor: attrs and styles for buttons

* fix: use prominent button color on the outline button's border

* fix: fix the trash

* refactor: remove the appearance

* refactor: avatar placeholder generation, chips and element border styles

* refactor: use colors instead of style references

* refactor: theming changes to match designs and feedback

* refactor: the titles are bold and the categories are tertiary coloured now

* fix: appearance settings match preferences, search bottom bar uses themed attributes

* refactor: increase setting button height

* Update clear all data dialog

* Update seed dialog

* refactor: more qa feedback changes

* feat: add new TLs and fa-rIR TLs

* Update notification content dialog

* Fix message requests clear all button text color

* feat: re-add screenshot observer

* refactor: make send tint accent color

* feat: add unread background differences

* fix: change unread count indicator

* build: upgrade build numbers

* Fix message requests popupmenu background color

* fix: crash from attr reference in color attribute

* build: upgrade build number

* fix: message bubbles, thumbnail backgrounds, search bar visibility with input bar, attachment buttons

* fix: tertiary text for keyboard page search view

* fix: emoji overflow colour differences

* fix: reaction pill dialog background is now correct colour

* Add style to reactions tab layout

* fix: appearance activity reverting primary color at correct time

* fix: show call privacy warning every time instead of just once

* fix: gradient background(?) and audio autoplay disable

* fix: crash in all media containing documents

* fix: reaction dialog heading fixes

* Add style to reactions tab layout

* fix: remove gradient backgrounds

* fix: adding new reaction normal text attribute to try correct the tab layout

* fix: ocean dark unread/read colours

* build; update build number

* build: update build number

Co-authored-by: charles <charles@oxen.io>
2022-10-12 17:05:55 +11:00
jubb
92075aed32 Merge branch 'master' into dev 2022-10-10 09:59:40 +11:00
charles
eb74f901c1 Persist profile data 2022-10-05 10:05:26 +11:00
charles
140877f4e3 Refactor 2022-10-04 18:31:20 +11:00
charles
c537da6acd fix: Show message sender in push notifications for groups 2022-10-03 16:31:29 +11:00
charles
99f70e5c21 Move open group query into click handler 2022-10-03 13:42:47 +11:00
charles
ffa280bc1b fix: Disable typing and message requests in read-only open groups 2022-10-03 13:15:14 +11:00
Harris
54efc36a8b
fix: don't use RTL layout for header image (#982) 2022-09-30 16:55:29 +10:00
ceokot
fbd1721eaf
Menu redesign (#958)
* feat: Menu redesign

* Add bottomsheet

* Handle default peek height

* Smooth out setting peek height

* Move contacts prep to util

* Dialog layout tweaks

* Contact grouping tweaks

* Add new message dialog

* Add public key input delegate

* Add create group dialog

* Add join community dialog

* Handle dialog back navigation

* Enter community url tab tweaks

* Scan QR code tab refactor

* Scan qr code refactor

* Direct and community tabs refactor

* Add session id copy context menu item

* Set dialog background colours

* Set full dialog background colour

* Minor tweaks

* Add closed group contact search

* Cleanup

* Add content descriptions

* Resize community chips

* Fix new conversation screen paddings

* Fix fade in/out of join community screen

* Prevent creating conversation with empty public key

* Resize and position create group loader

* Fix back nav after creating direct message conversation

* Fix inter-screen transitions

* Fix new conversation background colours

* Fix background colours

* Rename contact list header for clarity

* Bug fixes

* Enable scrolling of Enter Session ID tab of the new message dialog

* Minor refactor

* Switch to child fragment manager

* Fix member search on create group screen

Co-authored-by: charles <charles@oxen.io>
2022-09-30 13:32:07 +10:00
Harris
d2dc86de88
Fix moderator race condition (#975)
* fix: race condition in clear all / add new members

* fix: max width emoji text view on smaller devices

* fix: add extra widths and reduce the original again

* fix: quoted messages for blinded servers, remove unused add group member function

* fix: quote sending and resending using blinded IDs in quotes

* build: update build number
2022-09-26 11:44:59 +10:00