Commit Graph

1224 Commits

Author SHA1 Message Date
Harris
c6cf7a24d7 fix: raise elevation on the attachment buttons 2022-03-17 13:18:59 +11:00
Harris
3733826e2e fix: re-check input bar control after recipient modified 2022-03-17 13:01:33 +11:00
Harris
6649a9a745
Generate placeholder avatars from two characters, re-fetch missed avatars (#856)
* feat: splitting names in the avatar generation

* fix: re-fetch avatars if initial downloads fail

* fix: remove shadowed name, add tests for common labels
2022-03-15 09:24:15 +11:00
jubb
11d49426d3 fix: approval for more fine-grained contacts on migrate 2022-03-10 16:29:44 +11:00
Harris
c458d4a359
Fix approved references and visible message setting flags for approval (#854)
* fix: set approved on new outgoing threads, use approved more deeply and invalidate the options menu on recipient modified. Add approvedMe flag toggles for visible message receive

* fix: add name update in action bar on modified, change where approvedMe is set

* fix: text colours and attachment approve requests

* refactor: text color for share screen

* Restart conversation loader on message request approval

Co-authored-by: ceokot <ceokot@gmail.com>
2022-03-10 09:54:18 +11:00
ceokot
206505abe8
feat: Add conversation filtering for message requests (#830)
* feat: Message requests

* Apply contact sync message

* Filter based on message requests toggle

* Add message requests screen

* Implement message requests screen

* Handle message request buttons

* Handle approval syncing

* Display message request response

* Display pending message request

* Display pending message request

* Add approval migrations

* Send message request response

* Fix conversation filters

* Add approval migration

* Handle message request response

* Update message request response proto

* Update message request response handling

* Refresh message requests

* Show message request banner on new message request

* Message request item layout tweaks

* Fix latest unapproved conversation query

* Handle sent message request responses on restore

* QA feedback tweaks

* Remove send limit on message requests

* Config message handling tweaks

* Reverse conversation upon message request approval

* Remove read receipts, delete declined conversations

* Fix contact filtering in config messages

* Fix message request order and handle deletion

* Fix message request snippet on home screen

* Refresh message request list after decline or clearing all

* Fix message request reversal

* Fix message request notifications

* Disable media buttons for message requests

* Hide message request banner after reading

* Refresh message request banner
2022-03-04 08:46:39 +02:00
Harris
55aa266769
Bug fixes and provide conversation tooltips (#851)
* refactor: removing unused strings and changing session header dimensions

* refactor: remove bodyTextView from LinkPreviewView.kt and changing header image colours

* fix: path layout is aligned, global search input should always prompt soft input on open

* fix: unread count and scroll to bottom button visibility properly taking into account adapter item count and RecyclerView.NO_POSITION

fixes #848

* fix: crash on error toast for failing to share logs

* feat: conversation tooltips in NewConversationButtonSetView.kt

* fix: UI issue for conversation action bar cutting off lower than baseline characters

fixes #839

* refactor (wip): replacing bindings with nullable types to try prevent mystery bug

* refactor: use the nullable bindings for ConversationActivityV2.kt and remove inputBarHeightChanged

* fix: remove recipient listener on destroy

* build: add latest strings and increase build
2022-02-28 17:23:58 +11:00
Harris
b01075cef6
fix: add UI test for URL modal dialog and fix mention infinite layout inflation bugs (#841) 2022-02-09 14:18:22 +11:00
jubb
07ccc2696b Merge remote-tracking branch 'upstream/dev'
# Conflicts:
#	app/build.gradle
2022-02-07 17:08:48 +11:00
Harris
dd1da6b1a4
Add a global search (#834)
* feat: modifying search functionalities to include contacts

* feat: add global search UI input layouts and color attributes

* feat: add global search repository and model content

* feat: adding diff callbacks and wiring up global search vm to views

* feat: adding scroll to message, figuring out new query for recipient thread search

* feat: messing with the search and highlighting functionality after wiring up bindings

* fix: compile error from merge

* fix: gradlew build errors

* feat: filtering contacts by existing un-archived threads

* refactor: prevent note to self breaking, update queries and logic in search repo to include member->group reverse searches

* feat: adding home screen new redesigns for search

* feat: replacing designs and adding new group subtitle text

* feat: small design improvements and incrementing gradle build number to install on device

* feat: add scrollbars for search

* feat: replace isVisible for cancel button now that GlobalSearchInputLayout.kt replaces header

* refactor: all queries are debounced not just all but 2 char

* refactor: remove visibility modifiers for cancel icon

* refactor: use simplified non-db and context related models in display, remove db get group members call from binding data

* fix: use threadId instead of group's address

* refactor: better close on cancel, removing only yourself from group member list in open groups

* refactor: seed view back to inflated on create and visibility for empty placeholder and seed view text

* refactor: fixing build issues and new designs for message list

* refactor: use dynamic limit

* refactor: include raw session ID string search for non-empty threads

* fix: build lint errors

* fix: build issues

* feat: add in path to the settings activity

* refactor: remove wildcard imports
2022-02-07 17:06:27 +11:00
Harris
561ce83aa4
Fix quote alignment (#837)
* refactor: use constraints in quote view

* refactor: layouts for quotes fixed

* fix: use the current text, which may be the type of attachment instead of the quote body
2022-02-07 15:38:07 +11:00
Harris
d4424481b1
fix: documents render correctly now (#838) 2022-02-07 15:25:31 +11:00
Harris
983e4f59d3
Fix unrecycled delete actions (#836)
* fix: set view press/swipe/long press to null if message is deleted

* fix: deselects messages once they've been deleted
2022-02-06 12:41:35 +11:00
Harris
c70de069a4 fix: checking invalid profileKey lengths on message receive and retrieve profile avatars 2022-01-23 00:33:38 +11:00
Ian Macdonald
46aebb168c
Make the unread message count 4 digits instead of 2. (#827)
* Make the unread message count 4 digits instead of 2.

99+ unread messages can be reached within an hour in some busy open
groups. 4 digits allow for much more accurate reporting.

* Improve appearance of unread counter by using rounded rectangle.
2022-01-18 22:32:20 +11:00
Harris
bd5a324ad8
Split image from replies (#779)
* refactor: VisibleMessageContentView.kt re-using layouts instead of instantiating every bind to fix alignment and constraint issues for splitting thumbnails and body

* refactor: constraint works for sms only records, adjust other components of the visible message content accordingly

* feat: link previews and quotes now wrap content or align according to media type

* refactor: move back to emojitextview for body

* fix: add some padding at the bottom of the quote

* fix: voice message view not rendering properly

* fix: set visibility to false for each message content view on recycle event

* fix: untrusted attachments

* fix: compile issues and small UI improvement
2022-01-18 14:33:04 +11:00
ceokot
c2657bb785
feat: Add the option to mark a conversation as read (#816)
* feat: Add the option to mark a conversation as read

Fixes #789

* Extract and share logic to mark all as read

* Fix merge conflict issues
2022-01-16 19:02:39 +02:00
ceokot
c113a447cf
refactor: Use view binding to replace Kotlin synthetics (#824)
* refactor: Migrate home screen to data binding

* Add view binding

* Migrate ConversationView to view binding

* Migrate ConversationActivityV2 to view binding

* View model refactor

* Move more functionality to the view model

* Add ui state events flow

* Update conversation item bindings

* Update profile picture view bindings

* Replace Kotlin synthetics with view bindings

* Fix qr code fragment binding and optimize imports

* View binding refactors

* Make TextSecurePreferences an interface and add an implementation to improve testability

* Add conversation repository

* Migrate remaining TextSecurePreferences functions into the interface

* Add unit conversation unit tests

* Add unit test coverage for remaining view model functions
2022-01-14 07:56:15 +02:00
ceokot
366b5abdc8
Enable media gallery fullscreen mode (#813)
* feat: Enable fullscreen mode on the media gallery screen

* Move `fitsSystemWindows` attribute to root view

* Rename for clarity

* Update fullscreen flag

* Set system bars behaviour for api >= 30
2021-12-20 09:38:27 +02:00
jubb
8ea0690e3a fix: remove sh-rHR strings due to localisation error 2021-12-17 15:07:53 +11:00
Harris
164937aaa3
Remove the read and typing indication on startup (#812)
* fix: remove the read and typing indication

* fix: set default value in preferences_app_protection.xml
2021-12-17 10:19:32 +11:00
Harris
28b97e45cc
Remove ID copy interactions (#811)
* fix: remove selected session ID interactions

* fix: include thread ID in home activity's creation of user details bottom sheet

* refactor: use bundleOf builder instead of old bundle put value methods
2021-12-16 06:47:26 +02:00
ceokot
44f5684b21
feat: Update open group avatars periodically (#807)
* feat: Update open group avatars periodically

* Updated timestamp

* Existing job check

* Refresh avatar on the conversation

* Remove println statement

* Update profile picture on recipient modified event
2021-12-15 08:11:55 +02:00
Harris
5601da0e22
fix: replace alpha update with isVisible to not intercept tap from message gestures (#809) 2021-12-15 08:01:35 +02:00
Harris
34569ff1da
build: update translations with latest values (#808) 2021-12-15 10:45:25 +11:00
ceokot
15f5ac10ec
feat: Add conversation pinning (#806)
* feat: Add conversation pinning

* Update pinned conversation icon

* Update pinned conversation column name
2021-12-10 10:18:56 +11:00
ceokot
c25795fa53 fix: Include empty open groups in the conversation list query 2021-12-07 06:39:31 +02:00
ceokot
ba51102b6d Add message date break extension function to reduce duplication 2021-12-06 06:34:32 +02:00
ceokot
a966623db2 Add conversation constants file 2021-12-06 06:07:46 +02:00
ceokot
bfe91427ab fix: Add date breaks on control messages 2021-12-03 08:50:19 +02:00
jubb
f2f906fd3e refactor: closed groups delete for yourself and handle unsend request if it's from yourself or author now 2021-10-27 17:26:44 +11:00
Harris
00d6ce76b5 fix: contacts without stored profile information display similar to closed groups for unsend 2021-10-19 11:13:15 +11:00
Harris
0b062074b1 feat: switch unsend flag 2021-10-19 10:33:15 +11:00
Harris
f87fb2b9bb
Merge pull request #767 from hjubb/incognito_keyboard
Use incognito keyboard based on privacy preference in app
2021-10-13 22:33:52 +00:00
Harris
0755f0b953 fix: conversationListNotificationHandler initialized in getter if null and removed from onCreate 2021-10-12 14:32:06 +11:00
Harris
13dc28231d fix: respect the incognito flag in the user's preferences 2021-10-11 14:38:10 +11:00
Harris
e8a2bbe76d fix: saving log external instead of session blob 2021-10-08 16:43:45 +11:00
Harris
a55c9a969b refactor: replace settings string for sharing logs, change extension to .txt to make things easier 2021-10-08 14:01:13 +11:00
Harris
37f9ef3b1a Merge branch 'dev' into restore_log_report
# Conflicts:
#	app/build.gradle
#	app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java
2021-10-06 14:57:51 +11:00
Harris
678d8094a1
Merge pull request #739 from ianmacd/pr1
Display the service node's IP address after its country.
2021-10-06 02:43:23 +00:00
Harris
91b876589a refactor: move db module init before injection and replace ApplicationContext db component access to static function to get the component 2021-10-05 10:58:02 +11:00
Harris
d130ba5432 fix: oom from too many db instances, adding singletons to limit object creation 2021-10-04 19:02:20 +11:00
Harris
0516526923 refactor: use hilt to provide DB instead of our own factory, inject it in some places where possible 2021-10-04 18:51:19 +11:00
Harris
e036344c76 refactor: performance improvements in batch message processing, synchronized cache access and audible message notifications.
Increase audible timeout on DefaultMessageNotifier.java, don't send in-thread notification based on last audible notification.

Create a batch message receive job to handle up to 20 chunked messages at a time per job instead of singular or open group poll amount

Remove synchronized access to recipient cache and replace with a concurrent cache that's lock free from perf tracing monitor contention
2021-09-29 15:29:24 +10:00
Harris
c21a75c880 feat: finish share log dialog 2021-09-23 15:47:43 +10:00
Harris
a295cc384c feat: add share logs dialogs into settings activity 2021-09-23 13:49:32 +10:00
Harris
17b58b09e3 feat: add persistent logger and integrate it to the loggers initialization 2021-09-23 10:27:57 +10:00
Ian Macdonald
7b3035104d
Display the service node's IP address after its country. 2021-09-22 10:12:39 +02:00
Harris
b3a850a876 feat: instantly scroll to bottom if already smooth scrolling on button tap
fixes #736
2021-09-21 14:50:25 +10:00
Harris
00c2642b47
Merge pull request #731 from hjubb/self_messages_display_read
Display threads as read from sync'd multi-device messages
2021-09-21 04:05:33 +00:00
Harris
b61613ed09
Merge pull request #725 from hjubb/multi_device_expiry
Fix expiry from self-sent messages via linked device
2021-09-21 00:17:24 +00:00
Harris
4533a25a3c
Merge pull request #729 from hjubb/copy_url_link
Allow copying URL from conversation
2021-09-21 00:13:59 +00:00
Harris
ecf2308e84 feat: add survey button 2021-09-17 16:44:32 +10:00
Harris
cb5b9cc575 fix: display threads as read when the last message is from us triggered by multi device
purely visual in the ConversationView's bind() method
2021-09-15 16:55:51 +10:00
Harris
77f02a5917 fix: copy message fixed for single messages 2021-09-15 11:04:43 +10:00
Harris
792dc2752c fix: remove bottom padding in layout 2021-09-14 14:15:40 +10:00
Harris
790436bad8 refactor: change the "copy" text to "copy URL" for added context 2021-09-14 14:14:42 +10:00
Harris
66e95787a2 feat: add bottom sheet modal url with copy option 2021-09-14 10:27:34 +10:00
Harris
3c96083d59 Merge remote-tracking branch 'upstream/dev' into multi_device_expiry 2021-09-13 13:46:19 +10:00
Harris
2b6107d868 fix: expiring messages across multi-device 2021-09-13 13:45:55 +10:00
Harris
ef3d2bb28f
Merge pull request #719 from hjubb/date_break_improvement
Improve date breaks in messages
2021-09-08 04:51:30 +00:00
Harris
b1535940f9 refactor: move the set has seen to positive button handler 2021-09-03 13:53:49 +10:00
Harris
ded0370e8e feat: add gif metadata warning 2021-09-02 10:19:43 +10:00
Harris
49b164a8c5 feat: make date breaks more dynamic, spaced out in five minute clusters 2021-09-02 09:27:23 +10:00
Harris
6a36ae538d Merge remote-tracking branch 'upstream/dev' into dev 2021-09-01 14:23:06 +10:00
Harris
7bcfb56127 build: adding latest strings 2021-09-01 13:56:11 +10:00
Harris
0120eb3fad
Merge pull request #714 from warrickct/quote-cutoff-fix
Fixing quote cutoff when font is too large.
2021-08-31 06:14:33 +00:00
Harris
7c3dc7e7bc refactor: instrumentation for clipboard test was failing on smaller screen devices running the tests 2021-08-31 14:21:48 +10:00
Warrick Corfe-Tan
0539ca412d constrain min size for cancel button when drafting a quote reply. 2021-08-26 15:29:34 +10:00
Warrick Corfe-Tan
5936efea53 Fixing quote cutoff when font is too large. 2021-08-26 10:38:05 +10:00
Harris
873fb6b578 fix: clear notifications properly on muted groups 2021-08-20 16:09:44 +10:00
Niels Andriesse
4bc9bdea73
Merge pull request #711 from hjubb/bottom_sheet_conversation
Allow Messaging from User details sheet
2021-08-20 15:58:14 +10:00
Harris
021d81ab98 refactor: alignment 2021-08-19 13:45:57 +10:00
Harris
7ac340b3ca refactor: remove unused constant 2021-08-19 13:44:38 +10:00
Harris
ef8cdf3127 fix: handle bundling properly with the messageIdTag check 2021-08-19 12:24:28 +10:00
Harris
975076cb5c fix: bundled notification no longer notifies on mentions only 2021-08-19 12:14:21 +10:00
Harris
1f3db80d36 fix: only show notification settings if the contact is not muted and a group 2021-08-18 12:15:49 +10:00
Harris
ea71334524 Merge remote-tracking branch 'upstream/dev' into conversation_camera_improvement 2021-08-18 12:12:02 +10:00
ryanzhao
b03ba5bfa7 clean 2021-08-17 16:16:17 +10:00
ryanzhao
d9eb2c7585 don't show delete options for old messages 2021-08-17 15:11:53 +10:00
ryanzhao
ecc881bc7c store server hash value for incoming messages 2021-08-17 14:34:49 +10:00
ryanzhao
c4a3463416 send unsend request to self only for delete locally 2021-08-17 12:17:40 +10:00
ryanzhao
b9dd229207 add a flag to disable unsend requests 2021-08-16 15:09:12 +10:00
ryanzhao
144992d817 Merge branch 'dev' of https://github.com/oxen-io/session-android into unsend-request 2021-08-16 14:38:39 +10:00
Harris
dbec5ad53c fix: fixing the message dismissal of notifications for threads upon activity resume. using media send activity's camera intent for consistency 2021-08-16 14:05:49 +10:00
ryanzhao
e8551a3545 improve delete option ui 2021-08-16 12:08:35 +10:00
ryanzhao
4ce1bd6875 clean 2021-08-16 11:59:52 +10:00
ryanzhao
ee3e9ae17f delete outgoing message for linked device 2021-08-16 09:58:28 +10:00
ryanzhao
064e509992 fix a minor issue for closed group 2021-08-13 16:33:30 +10:00
ryanzhao
cb59a1af2d minor fix 2021-08-13 15:49:05 +10:00
ryanzhao
aad58043d3 add UI options for delete messages 2021-08-13 15:30:26 +10:00
Harris
266ed2fa78 feat: allow opening conversation thread from UserDetailsBottomSheet.kt
refactor the copy button logic to occur when long pressing the Session ID text to fix #517
2021-08-12 17:50:35 +10:00
ryanzhao
4f89c33676 fix a issue that the unread count can be negative 2021-08-12 16:37:53 +10:00
Harris
7e791d63dc fix: other view types have clickable links, clickable links in the long message. Ordering of highlight mentions before getting clickable spans
fixes #664
2021-08-12 15:36:08 +10:00
ryanzhao
9dcc5dd848 disable interaction for deleted messages 2021-08-12 15:01:48 +10:00
ryanzhao
9ab285c3be handle home screen update for unsend request 2021-08-12 14:14:37 +10:00
ryanzhao
8b6b02911f handle database for message deleted by unsend request 2021-08-12 11:43:33 +10:00
ryanzhao
23a61299ac bind deleted message view 2021-08-11 16:35:48 +10:00
ryanzhao
77b5b3ab01 deleted message bubble ui 2021-08-11 15:36:13 +10:00
ryanzhao
0000aa0d13 delete locally after successfully delete remotely 2021-08-11 15:24:33 +10:00