Commit Graph

3611 Commits

Author SHA1 Message Date
Adam Brown
256cb7093d catching ensureOlmSessionsForDevicesAction errors during the event decryption flow
- we currently can't do much but log here as we've asynchronously start the fallback flow, catching the error at least stops a hard crash
2021-10-12 16:37:40 +01:00
Benoit Marty
6c915ea4d1 Cleanup the PR about presence 2021-10-12 16:45:41 +02:00
Benoit Marty
923bc00dcd
Merge branch 'develop' into feature/aris/presence 2021-10-12 15:22:40 +02:00
Benoit Marty
7338982030
Merge pull request #4193 from vector-im/feature/bma/fix_logout_crash
Try to fix #4007
2021-10-12 15:19:20 +02:00
Benoit Marty
36d2f8e46b
Merge pull request #4228 from vector-im/feature/adm/suspending_add_pusher
Improved /settings/notifications push toggle error handling
2021-10-12 14:50:01 +02:00
Benoit Marty
a7ec76bae3 Also call monarchyWriteAsyncExecutor.awaitTermination 2021-10-12 14:20:20 +02:00
Adam Brown
786dec5dc0 observing both the email pushers and email pids so that displayed email pushers are always in sync 2021-10-12 12:49:39 +01:00
ganfra
a24a9b43fa Mavericks 2: make the UT happy. Let SDK exposes MatrixCoroutineDispatchers. 2021-10-12 13:47:32 +02:00
Adam Brown
bdec6a3580 removing mention of email in the http pusher model, we have dedicated emails functions on the service instead 2021-10-12 11:39:14 +01:00
Adam Brown
69bb554e20 lifting the request executor to its own file in the network package
- also creates a dedicated RequestModule instead of providing the executor via the pushers module
2021-10-12 11:39:14 +01:00
Adam Brown
aff787bb29 extracting the test fakes to their own package 2021-10-12 11:39:14 +01:00
Adam Brown
8e84aea434 removing unused import 2021-10-12 11:39:14 +01:00
Adam Brown
b7c911feee adding test cases for when adding a pusher fails and when it already exists 2021-10-12 11:39:14 +01:00
Adam Brown
21479b2b28 inverting if to favour positive ordering 2021-10-12 11:39:14 +01:00
Adam Brown
48d9dfb82d adding test for the add pusher task happy flow
- introduces the concepts of Fakes for handling the dependencies, unforuntately realm/monarchy aren't very testable in their current state so we'll need to use mocks
2021-10-12 11:39:14 +01:00
Adam Brown
0a2d7d709b creating an injectable request executor to enable unit tests network request (without hitting the network) 2021-10-12 11:39:14 +01:00
Adam Brown
6672ab3966 removing comment which doesn't add additional context/information 2021-10-12 11:39:14 +01:00
Adam Brown
46c338934e running lint 2021-10-12 11:39:14 +01:00
Adam Brown
e24329e139 reusing the transactional logic for the current session notifications toggle
- uses the synchronous token registering which also means we get error handling
2021-10-12 11:39:14 +01:00
Adam Brown
6c9fcc0d93 extracting the add pusher logic for the worker and delegating to the task from the worker 2021-10-12 11:39:14 +01:00
Benoit Marty
2d97640372 Ensure no async transaction will occurs if the store is closed 2021-10-12 12:08:14 +02:00
Benoit Marty
4a7e0a5d95 CleanupSession: start by releasing the session, then empty the databases 2021-10-12 11:57:07 +02:00
Benoit Marty
73c08e2eeb Avoid code duplication 2021-10-12 11:38:16 +02:00
Benoit Marty
0d85299c57 Try to fix #4007
Wait for Realm instance to be effectively closed before deleting Realm files
2021-10-12 10:40:46 +02:00
Onuray Sahin
13aee7d162 Do not delete voice message file to be able to resend. 2021-10-11 16:49:15 +03:00
yostyle
cbcb620ad1 Limit supported cipher suites 2021-10-08 18:16:27 +02:00
ariskotsomitopoulos
9aeba10b7e ktlintFormat fixes 2021-10-06 20:19:21 +03:00
ariskotsomitopoulos
9ab59a543d * Implement Presence Service:
- Get Presence Status
     - Set Presence Status
* Integrate presence in room details screen
* Integrate presence in room people's view
* Update UI to support presence
* Fix bug when insertOrUpdate was called on RoomMemberEventHandler and override the correct presence value in RoomMemberSummaryEntity
* Improve performance on updateUserPresence in RoomMemberSummaryEntity entity
* Remarks & linter fixes
* Disable presence when there is no m.presence events. In some servers like matrix.org is disabled atm.
* Enhance UI Presence on DM room lists to support dark/light theme
* Restore missing lines in gradle.properties to speed up debugging
2021-10-06 18:00:02 +03:00
Benoit Marty
7ebdd7830a
Merge pull request #4158 from vector-im/feature/bma/new_commands
Handle new commands
2021-10-05 13:38:31 +02:00
Benoit Marty
eceb341986
Merge pull request #4034 from vector-im/feature/bma/displayNameFallback
Add a fallback for user displayName when this one is null or empty
2021-10-04 23:13:28 +02:00
Benoit Marty
647b09739f Fix test compilation 2021-10-04 22:48:43 +02:00
Benoit Marty
068c9393f1 Create extension String.isMxcUrl() 2021-10-04 16:26:15 +02:00
Benoit Marty
f91936b413
Merge pull request #4156 from vector-im/feature/bma/remove_unused_worker
Remove unused SendRelationWorker and related API call (3588)
2021-10-04 16:16:35 +02:00
Benoit Marty
36e4d3ec69 Remove unused SendRelationWorker and related API call (3588) 2021-10-04 15:17:03 +02:00
Benoit Marty
f385e74662 Improve reusability of code 2021-10-04 14:13:25 +02:00
Benoit Marty
7636b4d7a8 limit alias length in candidateAliasFromRoomName() 2021-10-04 12:40:43 +02:00
Benoit Marty
c3b65a9c71 Create MatrixConstants to handle max alias length limitation 2021-10-04 12:30:28 +02:00
Valere
3da5641e2b Client side validation of alias max length 2021-10-04 10:57:54 +02:00
Benoit Marty
0a6b71d27d ktlint 2021-10-04 09:58:14 +02:00
Benoit Marty
9735bc6ee3 Add a fallback for user displayName when this one is null or empty, so that the application can customize the dispay name 2021-10-04 09:55:01 +02:00
Benoit Marty
f5375c7af2 Run ./gradlew ktlintFormat 2021-10-02 11:49:28 +02:00
Benoit Marty
f7af298654
Merge pull request #3972 from vector-im/feature/fga/expose_sync
Feature/fga/expose sync
2021-10-01 20:48:46 +02:00
Benoit Marty
2366227133
Merge pull request #4129 from vector-im/feature/adm/sync-read-notifications
Fixing notifications not being dismissed when read from other devices
2021-10-01 18:11:46 +02:00
Benoit Marty
d8203ea27b Optimize import 2021-10-01 18:08:48 +02:00
Benoit Marty
7d59cbebf1
Merge branch 'develop' into feature/fga/expose_sync 2021-10-01 18:04:56 +02:00
Adam Brown
c72f66871f replacing boolean constants with an improved function name + doc around why the events can be missing 2021-10-01 16:22:24 +01:00
Adam Brown
f9d2f236a4 using named parameters when the same types are used in close proximity 2021-10-01 14:43:39 +01:00
Benoit Marty
6983e1be55 Split long lines 2021-10-01 14:24:07 +02:00
Benoit Marty
ba35c0101e Fix compilation error 2021-10-01 14:09:22 +02:00
Benoit Marty
d1e9f3131a Big annoying commit: execute command ./gradlew ktlintFormat - Fix "colon-spacing" 2021-10-01 13:31:15 +02:00
Benoit Marty
a1caccbcc8 Big annoying commit: execute command ./gradlew ktlintFormat - Fix "chain-wrapping" 2021-10-01 13:31:15 +02:00
Benoit Marty
2ca3c68611 Big annoying commit: execute command ./gradlew ktlintFormat - Fix "import-ordering" 2021-10-01 13:31:15 +02:00
Adam Brown
49e332cb1c formatting 2021-09-30 17:30:23 +01:00
Adam Brown
7105a20f4f fixes notifications not being marked as read when the last chunk containing the event is no longer the latest
- use explict returns constants to attempt to add more documentation
- queries for the existence of the event in all of the chunk history and if a read receipt exists in the latest chunk (which it should if a user has just read on another client) which allows us to mark old notifications events as read
2021-09-30 17:15:04 +01:00
ganfra
845c396f8f Clean code after PR review 2021-09-30 16:43:49 +02:00
Benoit Marty
3719382569
Merge pull request #3953 from vector-im/dependabot/gradle/androidx.work-work-runtime-ktx-2.6.0
Bump work-runtime-ktx from 2.5.0 to 2.6.0
2021-09-30 14:25:43 +02:00
ganfra
be8c6f1836 Merge branch 'develop' into feature/fga/expose_sync 2021-09-30 12:10:38 +02:00
Benoit Marty
3f7e810f14 Handle change from WorkManager 2.6.0.
https://developer.android.com/jetpack/androidx/releases/work#2.6.0
2021-09-30 12:06:57 +02:00
Benoit Marty
0033378f8b
Merge pull request #4050 from vector-im/dependabot/gradle/kotlin-1.5.31
Bump kotlin from 1.5.30 to 1.5.31
2021-09-29 17:09:39 +02:00
Benoit Marty
c0adde56df
Merge pull request #4027 from vector-im/feature/fre/permalink
Add client base url support for permalinks
2021-09-29 17:08:12 +02:00
Benoit Marty
045e4bbf76
Merge pull request #4052 from vector-im/feature/adm/email_notification_toggle
Add email notification toggle
2021-09-24 20:42:44 +02:00
Valere
1fed27961a Code review 2021-09-24 19:35:49 +02:00
Valere
0acf90d8cd Code review 2021-09-24 18:12:12 +02:00
Valere
d59aaa7611 Support entering mail in user invite screen 2021-09-24 18:12:12 +02:00
Adam Brown
4482cbdaa6 using dedicated pusher removal methods for the different types of pushers
- also adds a separate removePusher which supports removing any type of pusher
2021-09-24 17:00:48 +01:00
Adam Brown
95b4f99970 making the add email pusher append parameter configurable by clients, typically we wouldn't want to overwrite other accounts but we can expose the option to clients if they want that behaviour 2021-09-24 15:39:08 +01:00
Benoit Marty
f3c4e9a1df ktlint 2021-09-23 19:33:38 +02:00
Benoit Marty
80aad8a958
Merge pull request #4033 from vector-im/feature/bca/improve_store_key_throttling
Use in memory cache when adding inBoundGroupSession
2021-09-23 19:31:35 +02:00
Benoit Marty
a40cee337e Fix warning "This expression will be resolved to Int in future releases. Please add explicit conversion call" 2021-09-23 15:52:01 +02:00
Adam Brown
0302d19f47 formatting 2021-09-23 13:20:01 +01:00
Benoit Marty
75fb026289 Rename some classes after new feature implemented 2021-09-23 13:54:03 +02:00
Benoit Marty
306e3cf055 Improve log to track push and sync request
Also change some log level from d to v
2021-09-23 13:54:03 +02:00
Benoit Marty
05aff3314d Add error state 2021-09-23 13:54:03 +02:00
Benoit Marty
f5151463e2 Add the number of rooms and toDevice events in the debug data 2021-09-23 13:54:03 +02:00
Benoit Marty
63a84dcb8a Add incremental sync status to the room list and the room detail (only in developer mode) 2021-09-23 13:54:03 +02:00
Adam Brown
d31ad7e187 extracting constants for the pusher kinds and email appId 2021-09-23 12:33:48 +01:00
Adam Brown
8316728e53 removing this. usages where there's no clashes 2021-09-23 11:45:09 +01:00
Adam Brown
8734d5d2e7 removing redundant comments about pusher kind from apis which don't have a kind field 2021-09-21 16:08:46 +01:00
Adam Brown
2c25efc36a making the removePusher more generic as it can handle email and http pushers
- Updates the doc to reflect that to remove emails an appId of m.email is required
2021-09-21 13:46:18 +01:00
Adam Brown
78d70eab12 enforcing emails pushes to always be appended
- always appending allows the same email to be used for other accounts see https://github.com/matrix-org/matrix-react-sdk/pull/2727 https://github.com/matrix-org/matrix-react-sdk/pull/2727/files#diff-ec232520bf51337e5e6939b885d21f428ad6da3306c8e17a3ff660b2b341179dR165
2021-09-21 11:32:33 +01:00
Adam Brown
516bb6ed95 lifting the email branding to its own parameter so clients of the sdk can configure it 2021-09-21 11:26:11 +01:00
Adam Brown
ee3f2877e9 adding matrix SDK support for email adding and removing email pushes
- email pushes make use of a new undocumented `brand` field, for now this field maps directly to the app display name so we can resuse it
2021-09-21 09:52:00 +01:00
Florian Renaud
fa3abecf8f Fix review 2021-09-20 15:18:06 +02:00
Benoit Marty
b5f7351564
Merge pull request #4008 from vector-im/feature/fga/small_timeline_optimisation
Feature/fga/small timeline optimisation
2021-09-17 18:06:58 +02:00
Florian Renaud
e37fb313c0 Permalink: Merge LinkHandlerActivity with PermalinkHandlerActivity
Also convert links to matrix.to before permalink parsing
2021-09-17 17:19:32 +02:00
Florian Renaud
a73f0a9fa8 Permalink: use client base url if any 2021-09-17 16:46:09 +02:00
Florian Renaud
0d344fde03 Permalink: add client url field in MatrixConfiguration 2021-09-17 16:46:09 +02:00
Florian Renaud
afb49430be Permalink: move method implementation from service to factory 2021-09-17 16:46:09 +02:00
Valere
22319a0f0a Cleaning, line too long 2021-09-16 09:33:06 +02:00
Valere
e5de62b57c Code review 2021-09-16 09:33:06 +02:00
Valere
94f88c80fc Fix parent relation handling 2021-09-16 09:33:06 +02:00
Valere
70ebb3a3f2 Code review 2021-09-15 18:48:40 +02:00
Valere
2c1435f08c Change default power to invite in private space + setting 2021-09-15 18:47:38 +02:00
Benoit Marty
d6b261ce4c
Merge pull request #3986 from vector-im/feature/bca/room_summary_api
Better room preview, use room Summary API if available
2021-09-15 15:03:31 +02:00
Valere
f2b7ee3e06 Code review 2021-09-15 09:21:30 +02:00
Valere
7142cd899b Use in memory cache when adding inBoundGroupSession 2021-09-14 14:01:17 +02:00
Valere
3a0734f6e2 Store device key in SharedSessionEntity
Code review changes


Fix database migraiton


Fix wrong self assignement + comment
2021-09-13 15:29:45 +02:00
ganfra
f96485c493 Timeline: use json directly to be a bit more speedy (those methods are called a lot) 2021-09-09 19:06:09 +02:00
Benoit Marty
3fcfe7000f Update user agent: MatrixAndroidSDK_X is replaced by MatrixAndroidSdk2 2021-09-09 09:59:06 +02:00
Benoit Marty
6a1409ba59 Better management of SDK version 2021-09-09 09:55:24 +02:00