Commit graph

3930 commits

Author SHA1 Message Date
ganfra
3217277bc4 Timeline: check for create event to hide loader 2021-12-03 18:39:04 +01:00
Benoit Marty
e60d053f84
Merge pull request #4568 from vector-im/feature/fga/fix_sdk_integration_tests
Feature/fga/fix sdk integration tests
2021-12-03 17:11:33 +01:00
David Langley
767ead019a Add warning if unexpected state. 2021-12-03 15:13:06 +00:00
Onuray Sahin
23ad4e5a27 Remove legacy implementation classes. 2021-12-03 16:19:19 +03:00
Benoit Marty
cd7345aa6b
Removing trailing space 2021-12-03 13:54:05 +01:00
ganfra
8ca60eadbb Merge branch 'develop' into feature/fga/timeline_chunks_rework 2021-12-03 12:55:57 +01:00
ganfra
667bf1a848 Tests: fix internal TestMatrix 2021-12-03 12:55:32 +01:00
David Langley
de7180ef7e And remove braces 2021-12-03 11:30:28 +00:00
David Langley
0cf50e88e9 Keep guard pattern 2021-12-03 11:28:49 +00:00
David Langley
bf8b485e2c lint 2021-12-03 11:24:40 +00:00
ganfra
014da84ba6 Timeline: try to optimise a bit the loading 2021-12-03 12:14:35 +01:00
Onuray Sahin
c62028df68 Implement poll actions bottom sheet. 2021-12-03 11:41:21 +03:00
Onuray Sahin
2a3a55894f Aggregate votes and poll end event. 2021-12-03 11:23:47 +03:00
Onuray Sahin
a3b11b223a Allow removing poll event. 2021-12-03 11:21:52 +03:00
Onuray Sahin
7c269309c2 Allow sending vote and ending poll. 2021-12-03 11:21:21 +03:00
Onuray Sahin
ebc131f492 Implement new poll content. 2021-12-03 11:18:16 +03:00
ganfra
76eddef840 Timeline: avoid notifying when decryption error is same as previous 2021-12-02 20:42:54 +01:00
ganfra
03961fe933 Timeline: update when loading states changed 2021-12-02 20:42:29 +01:00
David Langley
f3b3c880d0 select answer should be used for outgoing calls. 2021-12-02 18:35:51 +00:00
ganfra
f0ecfbbab2 Tests: TestMatrix should only be used internally by sdk tests 2021-11-30 17:22:50 +01:00
ganfra
3d31ba963d Merge branch 'develop' into feature/fga/timeline_chunks_rework 2021-11-30 16:58:55 +01:00
ganfra
51f46d199f Tests: clean after review 2021-11-30 14:15:18 +01:00
Adam Brown
cdb5376a19 Adding support for voice drafts
- introduces a new Voice draft and sender mode type
- initializes the voice recorder with a previously recorded file (the draft)
- renames RecordingUiStates to map to their actual UI states
2021-11-30 10:22:25 +00:00
ganfra
30fe564a2c Throw clear error when MatrixWorkerFactory is not set up on worker configuration 2021-11-29 19:26:55 +01:00
ganfra
cfaa7268a8 Tests: clean up a bit 2021-11-26 18:17:28 +01:00
ganfra
ccdeeeab4c Tests: fix timeline tests + some small others 2021-11-26 18:16:27 +01:00
ariskotsomitopoulos
c4967a2871 Handle chunks merging with thread summary
Add animation to fragment transition with offset for recyclerview initialization
Support threads on deleted events
2021-11-25 17:59:28 +02:00
ganfra
1d9da6c7d3 Tests: do some clean-up and fix bunch of them 2021-11-25 12:46:16 +01:00
ariskotsomitopoulos
afc69c77bd Add local filtering in thread list 2021-11-24 18:23:33 +02:00
Benoit Marty
32441eb81b
Merge pull request #4553 from vector-im/feature/adm/stricter-voice-file-deletion
Unable to upload .ogg to rooms
2021-11-24 13:55:31 +01:00
Adam Brown
31bd4fd2d0 avoiding inferred voice type check via waveform in favour of using the attachment type 2021-11-24 11:38:28 +00:00
Adam Brown
5ee379e10d including a new voice message attachment type
- allows for us to explictly delete voice message after uploading rather than inferring that audio message with the .ogg extension are voice messages which could have caused us to delete users files
2021-11-24 10:21:12 +00:00
Benoit Marty
bd423db98a
Merge pull request #4548 from vector-im/feature/adm/sealed-class-cleanup
Voice related sealed class cleanup
2021-11-24 11:10:10 +01:00
Adam Brown
70d25653c8 removing unused base property from the sealed classes and switching to interfaces 2021-11-23 18:21:42 +00:00
Adam Brown
d1102f7be4 fixing wrong cased data class names 2021-11-23 18:19:33 +00:00
Adam Brown
bdf9402685 only deleting voice files if they were successfully uploading
- fixes flaky networks losing the voice file and being unable to retry
2021-11-23 17:45:10 +00:00
Benoit Marty
c72dd5eec6
Merge pull request #4507 from vector-im/feature/bca/crypto_better_logs
Improve crypto log to debug UISI
2021-11-23 15:35:28 +01:00
Valere
31eeb0674b cleaning 2021-11-23 13:38:45 +01:00
ariskotsomitopoulos
722f367690 View all threads screen implementation & UI
Add user friendly message thread summary on the SDK side
Fix not encrypted rooms thread summaries
2021-11-23 13:34:24 +02:00
Valere
77454c8ae9 code review 2021-11-23 11:58:01 +01:00
David Langley
2b3de840f1 Force markdown parse on replies and update quote to use markdown parser. 2021-11-22 17:02:12 +00:00
ganfra
69720ffdd3 Android tests: introduce TestBackgroundDetectionObserver so sync is not cancelled while testing + fix small warnings 2021-11-19 17:18:39 +01:00
ganfra
67975e0c83 Matrix: introduce MatrixWorkerFactory to remove internal usage of Matrix.getInstance 2021-11-19 17:15:39 +01:00
Valere
feda53bfb7 Improve crypto log to debug UISI 2021-11-18 15:39:13 +01:00
ariskotsomitopoulos
3de0f7bf37 Add sending file to thread support
** Important while this feature depends on local echo, should be added local echo support in threads to work 100%
2021-11-18 15:48:17 +02:00
ganfra
e562d7684a Timeline: re-add usage of TimelineSettings 2021-11-18 11:03:13 +01:00
Benoit Marty
e98dd2e663
Merge pull request #4396 from vector-im/feature/aris/thread_aware
Feature/aris/thread aware
2021-11-18 10:16:56 +01:00
ariskotsomitopoulos
8015ffee42 PR remrarks 2021-11-17 19:56:06 +02:00
ariskotsomitopoulos
9972dbc278 Use RealmConfiguration instead of Monarchy 2021-11-17 16:54:03 +02:00
Benoit Marty
a5518e90ae
Merge pull request #4485 from vector-im/feature/bma/small_cleanup
Small cleanup after content scanner code has been merged
2021-11-17 15:08:07 +01:00
ariskotsomitopoulos
d463500998 Remove unused import 2021-11-17 14:48:10 +02:00
ariskotsomitopoulos
88656ce80b Use GetEventTask instead of session from the ThreadAwarenessHandler 2021-11-17 14:14:21 +02:00
ariskotsomitopoulos
3d9350091e Add Replies support from within a thread 2021-11-17 13:09:27 +02:00
Benoit Marty
c0af8214a6 Improve and use MatrixUrls 2021-11-17 11:27:59 +01:00
Benoit Marty
0fd29d763c
Markdown and sploiler in roomlist + spoiler in notifications (#4483)
Render markdown in room list and make notifications spoiler aware, per MSC3124
Reorder when case to put the most common on top

Co-authored-by: Onuray Sahin <onurays@element.io>
Co-authored-by: Wasabi\preston <1337paf92@gmail.com>
2021-11-17 10:21:48 +00:00
Benoit Marty
adea1db87a Remove useless ? 2021-11-17 11:19:59 +01:00
Benoit Marty
855b672f48
Add content scanner service (#4392)
* Add content scanner APIs

* Move to content scanner matrix SDK to FOSS

* Update file service

* Refactoring

* Replace matrix callbacks by coroutines

* Fix lint errors

* Add changelog

Co-authored-by: yostyle <yoanp@element.io>
2021-11-17 11:18:20 +01:00
Adam Brown
10a460bf0c
Sign out crash - Realm configuration mismatch (#4480)
Dispatching session events to a specified session instance instead of always querying the session manager
- fixes the close session flow causing the session to be recreated
2021-11-17 10:39:46 +01:00
ganfra
3d27e21683 Merge branch 'develop' into feature/fga/timeline_chunks_rework 2021-11-16 18:34:38 +01:00
ganfra
8c0b2a6704 Timeline: fix double link issue when server is messed up... 2021-11-16 18:14:11 +01:00
ariskotsomitopoulos
4160688f83 Supporting command in threads 2021-11-16 14:59:30 +02:00
Benoit Marty
be3aafeef2
Merge pull request #4433 from vector-im/feature/bma/android12
Android12
2021-11-16 13:27:33 +01:00
ariskotsomitopoulos
8c539426e6 - Thread Summary along with optimization
- Create new thread & reply to thread
2021-11-15 19:17:13 +02:00
Benoit Marty
35e2a1083b
Merge pull request #4360 from vector-im/feature/ons/poll
Poll Feature - Create
2021-11-15 14:05:40 +01:00
Benoit Marty
df60b0c2b7
Merge pull request #4430 from vector-im/feature/adm/feature-notification-images
Notification images
2021-11-15 12:46:51 +01:00
Benoit Marty
0a9845af30 @OnLifecycleEvent is deprecated, use DefaultLifecycleObserver instead 2021-11-15 12:24:48 +01:00
Onuray Sahin
89db5a6ecd Lint fixes. 2021-11-11 11:52:01 +03:00
yostyle
6ddf3f6e5a Fix lint errors 2021-11-10 22:31:23 +01:00
yostyle
7a78bc6866 Replace matrix callbacks by coroutines 2021-11-10 21:57:45 +01:00
yostyle
98ae9d0e8a Refactoring 2021-11-10 21:57:44 +01:00
yostyle
016f3faeea Update file service 2021-11-10 21:57:44 +01:00
yostyle
0ad66446e7 Move to content scanner matrix SDK to FOSS 2021-11-10 21:57:44 +01:00
yostyle
80a42d0a55 Add content scanner APIs 2021-11-10 21:57:44 +01:00
ganfra
52df50a686 Timeline: continue trying to make Read marker/receipts working 2021-11-10 19:17:34 +01:00
Valere
b304ef82fc add comments 2021-11-10 17:41:06 +01:00
Valere
5b76d4b682 Fix fallback otk support 2021-11-10 16:55:34 +01:00
Adam Brown
9dd01d5b20
Merge pull request #4429 from vector-im/feature/adm/relogin-sanity-check
Sign out - Sign in sanity check & nightly sanity check
2021-11-08 20:21:15 +00:00
ariskotsomitopoulos
ecc9b59ad1 Reply In Thread, create a new thread timeline 2021-11-08 20:46:37 +02:00
Adam Brown
9c1d6e0484 avoiding null unwrapping by merging the contains check with eagerly throwing if the session component is missing 2021-11-08 17:14:00 +00:00
Adam Brown
7646f7ce32 updating copyright header 2021-11-08 15:24:08 +00:00
Adam Brown
037d1fcf52 adding catch around the push event dispatching to match previous behaviour 2021-11-08 15:24:08 +00:00
Adam Brown
5190ef4280 replacing separated push listener callbacks with a single onEvents callback
- simplifies the handling of notifications, will allow us to reduce redundant synchronisations and suspend the entire notification update (will be needed for supporting images)
2021-11-08 15:24:07 +00:00
Adam Brown
2d1aed1839 separating the stopping of in-flight tasks form the cleaning up of the session state
- by stopping the session tasks before invalidating the current session we're able to avoid any extra token failures which retrigger the signout flow
2021-11-08 14:50:58 +00:00
Adam Brown
52731cf59d double checking the sync state in order to avoid redundant invalid token events 2021-11-08 14:50:58 +00:00
Adam Brown
9b4cd3c3c4 resetting the session access token after releasing the current session, fixes missing session sign out error
- the sign out step was invaliding the in flight access token which causes the global error handler to trigger an extra sign out
2021-11-08 14:50:58 +00:00
Florian Renaud
8140d90826 Fix potential NPE on Optional objects 2021-11-08 15:48:33 +01:00
ganfra
92a37f15d4 Timeline: fix hasReachedEnd 2021-11-04 13:11:45 +01:00
ariskotsomitopoulos
ec366f1346 PR Remarks 2021-11-04 12:15:22 +02:00
Adam Brown
b1afc26d65 using start_redeliver_intent to allow the system to restart killed sync services
- memory restricted devices may have the sync service destroyed whilst in progress causing future sync to no longer be scheduled
2021-11-04 09:45:59 +00:00
Adam Brown
c14ffefe7c updating background sync function docs with more information 2021-11-04 09:45:59 +00:00
Adam Brown
56d5a38e80 reverting parts of the rapid periodic sync, unfortunately it suffers from the same issue as the one shot workers -
the system can ignore them if the application process is in the background
2021-11-04 09:45:59 +00:00
Marcel Langner
e14fb16db2 initial commit of a permanent GuardService for fdroid background syncing 2021-11-04 09:45:59 +00:00
Andrew Aylett
d261dd705d Periodic sync to re-kick-off rapid sync 2021-11-04 09:45:59 +00:00
ariskotsomitopoulos
cb0fefa74d Add changelog file 2021-11-04 09:33:32 +02:00
ganfra
a1fdd31b68 Timeline: just some renaming + constant 2021-11-03 19:05:36 +01:00
ganfra
52d0da7053 Timeline: remove previous lastForward chunk 2021-11-03 19:02:44 +01:00
ganfra
ce5ccd4dab Timeline: remove useless methods 2021-11-03 12:06:17 +01:00
ganfra
d42a2e69ae Timeline: don't remove annotations and read receipts when deleting timeline event 2021-11-03 11:44:01 +01:00
ariskotsomitopoulos
8ee3f2c6cb Delete ThreadToReplyMapInterceptor
Add documentation comments
2021-11-03 11:34:22 +02:00
ganfra
e4896cad38 Merge branch 'develop' into feature/fga/timeline_chunks_rework 2021-11-02 17:13:23 +01:00
ariskotsomitopoulos
45a63b73bd Make Android app thread aware. Handling also extreme cases like really old messages that the root thread message is not fetched in the device and initial sync 2021-11-02 17:47:37 +02:00
Benoit Marty
3760401b10
Merge pull request #4353 from SpiritCroc/video-compression
Fix broken video compression due to NPE in library
2021-11-02 13:28:52 +01:00
SpiritCroc
c568595817 Video compression error logging: code style 2021-11-01 14:51:53 +01:00
Onuray Sahin
a5a3a817e1 Merge branch 'develop' into feature/ons/poll
* develop: (129 commits)
  Improve Rx sequence regarding listener
  adding changelog entry
  using correct license for matrix-sdk test
  extending the room name resolved to create a dedicated room name data class which contains a normalized version of the room name
  Remove shortcut as soon as a PIN code is set
  ensuring the store migration class is always equal to other store migration instances - is needed as realm will throw if multiple migration instances are created and they don't match
  removing extra query definition by chaining the query creation with modifiers
  removing noisy log which duplicates a type clause and fixing when casing formatting to have a case per line
  documenting the different query cases
  making the isNormalized function an extension and internal to the sdk
  Cache immutable value
  Do not show shortcuts if a PIN code is set
  Remove (disable) shortcut if a room is left
  Ensure ShortcutsHandler get all the joined rooms #4168
  Add `sortOrder: RoomSortOrder` parameter, with no API break
  Clean code
  adding normalised room display name field and making use of it when filtering rooms by name - fixes non latin-1 character set room names from being ignored when searching with inexact casing
  adding normalisation to the query string cases
  making value processing an injectable class, it will need to have its own dependencies to support normalisation
  porting QueryStringValue to sealed interface with a sub category for the content based values - allows for handling those cases separately for normalisation
  ...

# Conflicts:
#	vector/src/main/java/im/vector/app/core/di/ScreenComponent.kt
2021-10-28 18:05:10 +03:00
Benoit Marty
c22d3fbedc
Merge pull request #4355 from vector-im/feature/adm/timeline-disk-usage
Reducing timeline disk usage
2021-10-28 15:16:27 +02:00
Adam Brown
23f8d05522 removing redundant exists() checks, mkdirs already does this 2021-10-28 13:35:39 +01:00
Onuray Sahin
ac299d8c06 Remove poll command. 2021-10-28 14:48:20 +03:00
Onuray Sahin
f9f4317d68 Use unstable types. 2021-10-28 14:46:51 +03:00
Benoit Marty
868548d0ab
Merge pull request #4352 from vector-im/feature/adm/room-filtering
Fixing case sensitive non latin room name filtering
2021-10-28 12:27:13 +02:00
Onuray Sahin
dd58dd800c Create poll event content. 2021-10-28 10:50:29 +03:00
Adam Brown
c2ce10f89c delaying working dir creation to when its needed, lazy is sychronised by default 2021-10-27 18:23:25 +01:00
Adam Brown
8d668cc118 avoiding redundant session id filesDir opening, this provision is called multiple times each time we open a room 2021-10-27 18:23:16 +01:00
Adam Brown
63e9e07d5e using correct license for matrix-sdk test 2021-10-27 16:42:35 +01:00
Adam Brown
611bf29ebe extending the room name resolved to create a dedicated room name data class which contains a normalized version of the room name 2021-10-27 15:25:05 +01:00
Adam Brown
9949779b62 ensuring the store migration class is always equal to other store migration instances
- is needed as realm will throw if multiple migration instances are created and they don't match
2021-10-27 15:01:26 +01:00
Adam Brown
540036f83c removing extra query definition by chaining the query creation with modifiers 2021-10-27 14:36:26 +01:00
Adam Brown
7b356484ae removing noisy log which duplicates a type clause and fixing when casing formatting to have a case per line 2021-10-27 14:34:40 +01:00
Adam Brown
e7a0a4d4ae documenting the different query cases 2021-10-27 14:33:01 +01:00
Adam Brown
dbb4a87784 making the isNormalized function an extension and internal to the sdk 2021-10-27 14:26:51 +01:00
SpiritCroc
076820bb10 Fix broken video compression due to NPE in library
Library issue: https://github.com/natario1/Transcoder/issues/154

Possibly fixes
https://github.com/vector-im/element-android/issues/4337

Also add some logging for failures.
2021-10-27 15:24:17 +02:00
Benoit Marty
76314b9d87 Add sortOrder: RoomSortOrder parameter, with no API break 2021-10-27 15:00:14 +02:00
Adam Brown
4ae04fc297 adding normalised room display name field and making use of it when filtering rooms by name
- fixes non latin-1 character set room names from being ignored when searching with inexact casing
2021-10-27 13:09:53 +01:00
Adam Brown
d5ed95988d adding normalisation to the query string cases 2021-10-27 12:46:17 +01:00
Adam Brown
2681601d35 making value processing an injectable class, it will need to have its own dependencies to support normalisation 2021-10-27 12:30:23 +01:00
Adam Brown
72508c61d9 porting QueryStringValue to sealed interface with a sub category for the content based values
- allows for handling those cases separately for normalisation
2021-10-27 12:19:49 +01:00
Adam Brown
1c0d69674d moving is invitation help to the event file 2021-10-26 20:03:10 +01:00
Adam Brown
37a7d449ae moving invitiation joined event filtering to the existing mapNotNull chain to avoid another list creation 2021-10-26 20:03:10 +01:00
Adam Brown
e95d49a3ae avoiding dispatching invitation accepted events
- we only want to notify users when they receive an invititation, not when they've accepted it
2021-10-26 20:03:10 +01:00
Benoit Marty
109a5a6664
Merge pull request #4332 from vector-im/feature/bma/do_not_inject_default
DI: Use interfaces instead of implementation
2021-10-26 20:45:13 +02:00
Benoit Marty
31abf44d0e
Merge pull request #4346 from vector-im/feature/bma/login_custom
Add API `LoginWizard.loginCustom(data: JsonDict): Session`
2021-10-26 19:28:30 +02:00
Benoit Marty
e8ccae8cd0 Add API LoginWizard.loginCustom(data: JsonDict): Session to be able to login to a homeserver using arbitrary request content 2021-10-26 18:38:15 +02:00
ariskotsomitopoulos
d1f3e3f958 Thread awareness, map threads events to replies 2021-10-26 18:59:01 +03:00
Benoit Marty
0236396c59 Add optional deviceId to the login API 2021-10-26 15:10:04 +02:00
ariskotsomitopoulos
8f0074911a Thread awareness, map threads events to replies 2021-10-25 19:00:39 +03:00
Benoit Marty
d0f226dcd1 Bind identity service 2021-10-25 15:47:17 +02:00
Benoit Marty
363ae79378 DI: Use interfaces instead of implementation 2021-10-25 15:32:27 +02:00
Benoit Marty
f2c22c1985
Merge pull request #4192 from vector-im/yostyle/cipher_suites
Limit supported TLS versions and cipher suites
2021-10-25 13:07:21 +02:00
ariskotsomitopoulos
ab87937e5b Threads init commit 2021-10-20 18:39:59 +03:00
Benoit Marty
097694f6ef Make MegolmBackupAuthData.signatures optional for robustness 2021-10-19 17:31:51 +02:00
Benoit Marty
ab0e707ea6
Merge pull request #4229 from vector-im/feature/adm/decrypt-event-dummy-keys-fallback-crash
Catching EnsureOlmSessionsForDevicesAction errors
2021-10-19 16:13:34 +02:00
Aris Kotsomitopoulos
aea22201c3
Feature/aris/issue 465 scrub exif data (#4248)
Implement ImageExifTagRemover to scrub user sensitive data while sending original size photos
- Return a not scrubbed file when there is an exception while scrubbing the jpeg file
- Improve error handling on image compression
2021-10-18 21:20:03 +00:00
Adam Brown
c8a8d2e0bf applying a retry when attempting to fetch one time keys, tries to catch flaky network conditions 2021-10-18 16:15:07 +01:00
Adam Brown
ca79e87e00 applying a retry when attempting to send dummy payload to device 2021-10-18 16:13:22 +01:00
Benoit Marty
085da6c99a
Merge pull request #4090 from vector-im/feature/aris/presence
Feature/aris/presence
2021-10-13 09:58:22 +02:00
Benoit Marty
13ec4db8a2
Merge pull request #4215 from vector-im/feature/ons/fix_voice_message_resend
Voice message - Do not delete file to be able to resend
2021-10-12 18:30:03 +02:00
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
Nick Hu
0a498bee38
Fix lints and add changelog.d entry 2021-09-24 13:50:43 +01:00
Nick Hu
4c45a69129
Migrate commonmark extension to kotlin 2021-09-24 13:50:42 +01:00
Nick Hu
20821fbe80
Render maths with respect to data-mx-maths
(https://github.com/matrix-org/matrix-doc/pull/2191)

Firstly, this implements a commonmark-java plugin which is solely used to parse
LaTeX input in the composer box, so that they can be rendered into
`<span data-mx-maths=...>fallback</span>` and `<div
data-mx-maths=...>fallback</div>` for inline and display maths
respectively in the sent message.

Secondly, received messages of this form are pre-processed by a simple
regex into a form which markwon (which performs the rendering) expects.
2021-09-24 13:50:42 +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
ganfra
cd1da7348f Timeline rework: make sure migration doesn't crash 2021-09-20 18:33:43 +02:00
ganfra
b370f84e08 Timeline rework: add some comments and fix pagination when having overlapping events 2021-09-20 18:33:26 +02:00
Florian Renaud
fa3abecf8f Fix review 2021-09-20 15:18:06 +02:00
ganfra
63aa5b4015 Merge branch 'develop' into feature/fga/timeline_chunks_rework 2021-09-17 19:40:20 +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
ganfra
7f9c191647 Timeline rework: add db migration 2021-09-17 18:01:26 +02:00
ganfra
2283030c9b Timeline rework: handle lastForwardChunk 2021-09-17 17:51:40 +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
ganfra
da75642b92 Timeline: add some logs and fix epoxy cache 2021-09-17 15:13:38 +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