Commit Graph

758 Commits

Author SHA1 Message Date
Dominic Fischer
215324a03e Some kotlinification
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-08-06 11:36:39 +01:00
ganfra
d3ce4c491c Clean code after review 2019-08-06 11:45:06 +02:00
Benoit Marty
ed6d28bd3b
Merge pull request #417 from Dominaezzz/kt-opt
Some optimisations
2019-08-06 11:42:07 +02:00
Benoit Marty
c2e053b62b
Merge pull request #414 from Dominaezzz/kt-leak
Fix potential resource leak
2019-08-06 11:39:51 +02:00
Benoit Marty
c450849cc3
Merge pull request #425 from Cadair/patch-1
Fix reply fallback prefix
2019-08-06 11:23:37 +02:00
ganfra
fe884dba2d Update CHANGES.md and fix code quality 2019-08-05 20:28:50 +02:00
ganfra
3fa4dbaa25 Make async transaction working with suspend method 2019-08-05 20:17:59 +02:00
ganfra
4a74f58516 Task: use a builder with DSL and introduce Constraints (only boolean connectedToNetwork at the moment) 2019-08-05 20:17:36 +02:00
ganfra
c413321a22 Remove unnecessary code and fix signout 2019-08-02 13:15:56 +02:00
ganfra
d696bd2830 Send worker: let LIMIT_EXCEEDED error to be retry 2019-08-02 11:36:32 +02:00
ganfra
a2b6bd0f62 Fix network reconnection with sync 2019-08-02 11:35:58 +02:00
ganfra
9cc922a8a2 Optimize imports 2019-08-02 11:35:27 +02:00
ganfra
fd09a1224e Remove Try from suspending functions 2019-08-01 17:15:17 +02:00
ganfra
77c4355aed Merge branch 'develop' into feature/room_update 2019-07-31 14:27:12 +02:00
ganfra
1a92562182 Clean code after review 2019-07-31 14:06:10 +02:00
ganfra
95089b91b8 UserAccountData: optimize helper and clean code. 2019-07-30 21:41:29 +02:00
ganfra
eb446d7b49 Fix code quality issues 2019-07-30 21:20:30 +02:00
ganfra
dc4786ecf0 Room upgrade: add rx flux and handle failures more precisely 2019-07-30 19:13:09 +02:00
Stuart Mumford
90fad23493
Fix reply fallback prefix
Plain text reply fallback should be prefixed with "> " not ">" (as per spec).

Signed-off-by: Stuart Mumford <stuart@cadair.com>
2019-07-30 12:09:29 -04:00
Valere
000db4b192 Basic Message Failure support + Resend (text only)
+ clean worker inputs when starting new independent task in unique queue
2019-07-30 17:53:43 +02:00
ganfra
ef6c1cfc63 RoomSummaryUpdater: remove unused params 2019-07-30 17:37:16 +02:00
ganfra
4b4156996d User Account Data: fix sync issues with direct invites 2019-07-30 17:32:31 +02:00
Valere
087cc0e6e3
Merge pull request #448 from danteissaias/develop
Fix #447
2019-07-30 17:07:22 +02:00
ganfra
f4df27c2dc Merge branch 'develop' into feature/room_update 2019-07-30 15:51:56 +02:00
ganfra
ab25980c4e
Merge pull request #437 from vector-im/feature/create_direct_room
Feature/create direct room
2019-07-30 15:13:30 +02:00
Dante Issaias
2763fbb496
fix #447
Signed-off-by: Dante Issaias <dante.issaias@gmail.com>
2019-07-30 13:57:04 +01:00
ganfra
6deba31111 Direct room: finally use PagedList as we can get a lot of users in DB. 2019-07-30 14:51:14 +02:00
ganfra
65f0af918f Remove default identity server as we don't use it. 2019-07-29 18:26:26 +02:00
ganfra
ac38a6461c Tombstone : handle joining viaserver params 2019-07-26 19:17:12 +02:00
ganfra
9a1e16a170 Tombstone : add notification area and handle links 2019-07-26 14:51:14 +02:00
ganfra
9e5c70dda3 Room update: start handling tombstone and room create events [WIP] 2019-07-25 19:34:39 +02:00
ganfra
76a9625f25 Direct chat : finalize flow 2019-07-25 16:34:27 +02:00
ganfra
507bc2f622 UserEntity: fix not inserted at all 2019-07-23 21:31:58 +02:00
ganfra
125eacb20b Direct messages: try to handle selecting/deselecting users (WIP) 2019-07-23 19:53:47 +02:00
Valere
3aea0a50ca
Merge branch 'develop' into feature/pending_edits_ux 2019-07-22 23:53:16 +02:00
ganfra
151ae7f4dd Direct chat: handle user account data 2019-07-22 18:58:55 +02:00
Dominic Fischer
a34b053efe Some optimisations
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-21 23:35:38 +01:00
Dominic Fischer
02e342849f Remove most usages of the java.util package
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-21 23:23:56 +01:00
Dominic Fischer
b59017938b Fix potential leak
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-21 19:11:53 +01:00
ganfra
2c81e41288 Merge branch 'develop' into feature/create_direct_room 2019-07-19 18:18:22 +02:00
ganfra
cb44ab547c Create direct room: almost finished, still need to handle showing selected users in search field 2019-07-19 18:12:42 +02:00
Benoit Marty
6d01a570fd Clear notification for a room left on another client 2019-07-19 16:44:30 +02:00
Valere
40a68c3e9f Show pending edits by fading the event body #193
+ Fix issues with edits local echo management in aggregation
2019-07-19 16:13:35 +02:00
ganfra
cb274d6a33 Add some cancelable on service methods and start branching Rx 2019-07-19 11:21:16 +02:00
ganfra
001603cf9a Create direct room: add filtering and enhance design a bit 2019-07-18 17:42:22 +02:00
Valere
d87ee32422
Merge pull request #384 from vector-im/feature/edit_e2e
Feature/edit e2e
2019-07-18 16:44:44 +02:00
Benoit Marty
e218691bf2 Import strings and translation from Riot 2019-07-18 14:25:34 +02:00
Benoit Marty
d48ae967bd Remove dead code 2019-07-18 11:11:42 +02:00
Benoit Marty
0afde3b021 Rename class member for code clarity 2019-07-18 11:07:09 +02:00
ganfra
4341b0d0f5 Merge branch 'develop' into feature/create_direct_room 2019-07-18 09:47:25 +02:00
Valere
51fdccb393 cleaning 2019-07-18 09:29:27 +02:00
ganfra
7e3b300130 Fix sync state progress bar 2019-07-17 19:45:35 +02:00
ganfra
838003b68a Create direct room: start creating all the required stuff 2019-07-17 18:30:14 +02:00
Valere
7d41352918 Fix / edit reply was quoting wrong text
+ e2e reply of edit
2019-07-17 16:46:56 +02:00
Valere
077396a832 E2E replies
+ Edit History / support e2e and use original event
2019-07-17 16:20:12 +02:00
Benoit Marty
32b79bd50e Remove extra space around userId 2019-07-17 15:13:12 +02:00
Benoit Marty
844f6d16a4 Code quality 2019-07-17 15:05:29 +02:00
Benoit Marty
fc9ef579ca
Merge pull request #381 from vector-im/feature/room_members_perf
Feature/room members perf
2019-07-17 15:01:06 +02:00
ganfra
2948018453 Clean code after review 2019-07-17 14:56:00 +02:00
Benoit Marty
173452d38c
Merge pull request #367 from Dominaezzz/kotlinify-3
Some more kotlinification.
2019-07-17 14:38:16 +02:00
Benoit Marty
927cd7285d
Merge pull request #378 from vector-im/feature/fix_sync_thread_wrong_autostart
Fix / SyncThread was started in background
2019-07-17 14:32:19 +02:00
Benoit Marty
8e78d8a58d
Merge pull request #380 from vector-im/feature/rs_crash_steve
Fix a crash in notificationwhen display name is empty
2019-07-17 14:22:45 +02:00
Benoit Marty
477920f411 Add some comment 2019-07-17 14:14:02 +02:00
Valere
87de7bd3e6 fix lint code quality 2019-07-17 11:41:14 +02:00
ganfra
b7e0b400fb Timeline : set bigger initial load size 2019-07-16 17:48:32 +02:00
ganfra
a8f06f609b Use latest retrofit version to properly cancel requests
Fix cancelation requests
2019-07-16 17:46:52 +02:00
ganfra
d469299f42 RoomMembers: should fix state events issues 2019-07-16 17:46:52 +02:00
Benoit Marty
45f7d3e9c4 Kotlin style 2019-07-16 15:59:08 +02:00
Benoit Marty
0f7a56d005 Use Session.myUserId whereas it's possible 2019-07-16 15:54:00 +02:00
Valere
63d2861bc8 Fix / SyncThread was started in background
Upon reception of a push, is the session is instantiated the sync thread was starting to loop
2019-07-16 15:44:08 +02:00
Valere
c6fd625761 code review 2019-07-16 14:56:16 +02:00
Valere
d8092abc4e fix / strip reply prefix on history 2019-07-16 14:39:46 +02:00
Valere
6effb90361 Fix / edit of reply and edit of edit of reply 2019-07-16 14:39:05 +02:00
Valere
25f1d21bc7 Edit history
Get history from API


cleaning


Updated change log


Missing copyrights


Code review


cleaning
2019-07-15 14:57:12 +02:00
Dominic Fischer
1822fc4fbb Some more kotlinification
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-13 15:35:10 +01:00
Dominic Fischer
e6dd1fbfec Use GlobalScope instead of temp scope
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-13 15:18:16 +01:00
ganfra
9182f2ce4e RoomMembers/User : get a better and faster handling (still need to fix one small issue) 2019-07-12 13:59:37 +02:00
Benoit Marty
34d14eb304 Fix regression on permalink click 2019-07-12 13:51:37 +02:00
ganfra
10e4d0190f Try to insert users directly to see if perfs are better [WIP] 2019-07-11 18:55:13 +02:00
ganfra
252b2ea30a
Merge pull request #334 from vector-im/feature/general_perf
Feature/general perf
2019-07-11 15:52:00 +02:00
ganfra
f493ce44f2 RealmLiveEntity: passes the results and changeSet instead of filtering as it's more efficient 2019-07-11 15:30:01 +02:00
Benoit Marty
c4c5069ee5
Merge pull request #332 from vector-im/feature/login_warning
Improve login screen
2019-07-11 15:25:11 +02:00
Benoit Marty
9e3d29b7d7 Create a TimeOutInterceptor to set specific timeout on some request: login and sync (Fixes #170) 2019-07-11 15:16:25 +02:00
Benoit Marty
80a61cf6b5 Improve dependency download safe path 2019-07-11 14:03:20 +02:00
Benoit Marty
65e123d87f Split long lines 2019-07-11 13:32:28 +02:00
Valere
d0b145d031 Edit emote 2019-07-11 12:29:02 +02:00
ganfra
1b95336ad3 EventEntity|TimelineEventEntity : remove UUID as primary key and use auto-incremented Long 2019-07-11 10:25:30 +02:00
ganfra
f007fb04b8 Timeline: clean listeners 2019-07-11 10:25:30 +02:00
ganfra
141434e8f8 Try getting things off the main thread 2019-07-11 10:25:30 +02:00
ganfra
b8669d5ed2 Sync: use a single threaded executor to ensure we have only one sync at a time 2019-07-11 10:23:24 +02:00
Benoit Marty
7a08a11b19 Fix compilation of test 2019-07-10 18:17:03 +02:00
Valere
54b1d18812 Merge remote-tracking branch 'origin/feature/clean' into feature/clean 2019-07-10 18:07:03 +02:00
Valere
3aa30e5f15 Fix reply of reply 2019-07-10 18:06:44 +02:00
Benoit Marty
794fd650a4 Mutualize code, and also, when replying to an edited event, use the last text in the reply prefix content 2019-07-10 17:37:22 +02:00
Benoit Marty
06699eaefc Cleaner code 2019-07-10 14:40:08 +02:00
Benoit Marty
e5082f662c Fix actually done TODO 2019-07-10 14:19:59 +02:00
Benoit Marty
e6409d4c60 Create a common canReact() method 2019-07-10 12:10:55 +02:00
Benoit Marty
1918302297 Reply with formatted content 2019-07-10 11:29:47 +02:00
Benoit Marty
92e3a02389 Create data class instead of Pair 2019-07-10 10:34:32 +02:00
Benoit Marty
0a54801fcc Code clarity 2019-07-10 10:16:21 +02:00
Benoit Marty
228ee52563 Remove extra space in <mx-reply> 2019-07-10 10:07:45 +02:00
Benoit Marty
e6c74dc1fe Convert a Task to a ConfigurableTask without parameter 2019-07-09 18:41:08 +02:00
Benoit Marty
fe82ad2002 Format 2019-07-09 18:31:04 +02:00
Benoit Marty
f66739491a
Merge pull request #321 from vector-im/feature/workManager_clean
Fix bug on WorkManager: clean by tag
2019-07-09 18:30:07 +02:00
Benoit Marty
c5dc9d4a9a Fix test 2019-07-09 18:29:32 +02:00
Valere
8f858f8119 Fix / line too long 2019-07-09 18:20:00 +02:00
Benoit Marty
6e036c24b8 Make the test be runnable 2019-07-09 18:14:58 +02:00
Benoit Marty
5e832e07cd Code cleanup 2019-07-09 18:04:19 +02:00
Benoit Marty
e9700e04d8 Move method to JsonCanonicalizer and fix test compilation 2019-07-09 18:04:19 +02:00
Benoit Marty
c19b1f917f Javadoc 2019-07-09 18:04:19 +02:00
Benoit Marty
4281b5967a Create object for work constraint 2019-07-09 18:04:19 +02:00
Benoit Marty
aa743d8469 Ensure we do not cancel Work from other lib or SDK client 2019-07-09 18:04:19 +02:00
Valere
a09850b16c
Merge pull request #316 from vector-im/feature/initial_sync_progress
Feature/initial sync progress
2019-07-09 17:58:24 +02:00
Valere
6cb94dd4d6 Fine tune task weights + more measure 2019-07-09 17:42:53 +02:00
Benoit Marty
34ac987494 Cleanup 2019-07-09 16:36:46 +02:00
Benoit Marty
ffe0b9712c Convert file to Kotlin 2019-07-09 15:50:15 +02:00
Benoit Marty
d92c090c30 Code quality: HashMap / HashSet 2019-07-09 15:40:49 +02:00
Valere
1a4157a663 review 2019-07-09 15:38:44 +02:00
Valere
4aae1f78d8 moved new strings + @StringRes annotation 2019-07-09 15:38:44 +02:00
Valere
8159a52bd7 cleaning 2019-07-09 15:38:44 +02:00
Valere
95d83db90c WIP 2019-07-09 15:38:44 +02:00
Benoit Marty
e80473903e Code quality: import static 2019-07-09 15:35:27 +02:00
Benoit Marty
d08778c674 Code quality: equalTo 2019-07-09 15:33:31 +02:00
Benoit Marty
0919b9460d Code quality: split long lines 2019-07-09 15:26:32 +02:00
Benoit Marty
66a018c79e Code quality: trim() 2019-07-09 15:11:20 +02:00
Benoit Marty
9a4eb8e9a4 add getFileUrl extension 2019-07-09 15:03:21 +02:00
Benoit Marty
058e7153a1 Fix bug 2019-07-09 15:03:21 +02:00
Benoit Marty
b0c939866f Download file - typo 2019-07-09 15:03:21 +02:00
Benoit Marty
a07f8b615e Download file - WIP 2019-07-09 15:03:21 +02:00
Benoit Marty
12bd85e0a9 Decrypt video file 2019-07-09 15:02:31 +02:00
Benoit Marty
c13ab62187 Fix issue when sending video in encrypted room 2019-07-09 15:02:31 +02:00
Benoit Marty
ea77686746 Send file: cleanup 2019-07-09 15:02:31 +02:00
Benoit Marty
8a5612be3d Send file: improve UI feedback 2019-07-09 15:02:31 +02:00
Benoit Marty
d24ce27903 Add missing call to contentUploadStateTracker.setFailure 2019-07-09 15:02:31 +02:00
Benoit Marty
2099965508 Avoid returning Result.failure() from appendable worker. 2019-07-09 15:02:31 +02:00
Benoit Marty
829e8da8dc lastFailureMessage is val, not var 2019-07-09 15:02:31 +02:00
Benoit Marty
e149ee53de Fix bad mime type for encrypted thumbnail 2019-07-09 15:02:31 +02:00
Valere
61d7f23870 remove dead code 2019-07-09 15:00:37 +02:00
ganfra
b5650b2b8f Pagination : avoid breaking timeline when paginating twice from same token (race condition) 2019-07-09 14:44:59 +02:00
Valere
8777d13d8b Fix / view source, decrypted source was not correct 2019-07-09 14:22:40 +02:00
ganfra
dd07f5c2a6 TimelineEvent : update sender data when loading room members and prune event (+ remove RoomSummaryMapper param) 2019-07-08 15:32:24 +02:00
Valere
57bd103de8 Fix / decrypt room summary latest event 2019-07-08 14:58:49 +02:00
Valere
e4c52484b1 Fix / ensure equals check for encryption result 2019-07-08 14:57:02 +02:00
Valere
a30da07fd1 Fix / timeline auto refresh on new session 2019-07-08 14:12:46 +02:00
Valere
ee27d3e047 Fix / clear unknown session map before re-request decrypt 2019-07-08 12:49:22 +02:00
Valere
7096094224 wip crypto 2019-07-08 12:05:41 +02:00
Valere
94b4351e19 wip async crypto + persist 2019-07-08 11:18:27 +02:00
Valere
e50dd265d4 merge develop 2019-07-08 10:58:41 +02:00
Valere
4521ea14ee Merge branch 'develop' into feature/realm_entity_rework 2019-07-08 10:55:20 +02:00
Valere
98a7652403 Put back local echo 2019-07-05 19:13:34 +02:00
ganfra
78951b9155 Timeline event: handle displayName/avatar [WIP] 2019-07-05 19:07:33 +02:00
Benoit Marty
8c86a653b2
Merge pull request #309 from vector-im/feature/crypto_cleanup
Rework Crypto using Try
2019-07-05 19:03:59 +02:00
Valere
c503445092 Branch back relation summaries 2019-07-05 18:38:20 +02:00
Benoit Marty
205af8b122
Merge pull request #280 from Dominaezzz/kotlinify-1
Enhance CancelableBag
2019-07-05 18:34:28 +02:00
ganfra
79a704d240 Timeline : Uncomment liveChunk to make pagination working 2019-07-05 17:27:24 +02:00
Valere
f01e796271 Timeline is back 2019-07-05 17:00:13 +02:00
Benoit Marty
302d23ba96 Create a realm locker to fast up next Realm.getInstance calls 2019-07-05 16:28:15 +02:00
Benoit Marty
03050c3f25 Cleanup 2019-07-05 16:11:54 +02:00
ganfra
cbfd2af74b Start branching TimelineEventEntity 2019-07-05 16:07:12 +02:00
Benoit Marty
f3fab0dc08 Rename ErrorTypes 2019-07-05 15:52:37 +02:00
Benoit Marty
4a512d2425 Create enum for errorType and fix a few issues 2019-07-05 15:43:28 +02:00
Benoit Marty
87dec337d8 Rework Crypto using Try 2019-07-05 14:41:32 +02:00
ganfra
b37877746a Introduce TimelineEventEntity to begin with the rework 2019-07-05 14:39:15 +02:00
Dominic Fischer
b0e5612bdc Convert java-esque code to Kotlin
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-05 12:32:21 +01:00
ganfra
25b0cd0e4b Remove some work from UI thread 2019-07-04 19:02:37 +02:00
Benoit Marty
f2a52f0253
Merge pull request #297 from vector-im/feature/crypto_stabilization
Safely remove all usage of `!![`
2019-07-04 15:17:26 +02:00
Benoit Marty
baaf493cb4
Merge pull request #299 from vector-im/feature/dix_concurrent_sync
Fix / Push worker could launch concurrent syncs
2019-07-04 15:10:18 +02:00
Benoit Marty
6cbd6d3a33 Valere's review 2019-07-04 14:59:29 +02:00
Benoit Marty
c0f085cdf8 SyncTask now handles by itself the sync token 2019-07-04 14:46:59 +02:00
Valere
10bc2297d4 Fix / Push worker could launch concurrent syncs 2019-07-04 14:04:36 +02:00
Benoit Marty
8fa5e63b07 Fix issue: reply to e2e event does not contain the base message 2019-07-04 12:52:43 +02:00
Benoit Marty
9d0c50907c Fix issue when quoting event in e2e rooms (Fixes #295) 2019-07-04 12:39:59 +02:00
Benoit Marty
e5958983d8 Safely remove all usage of !![ 2019-07-04 11:44:09 +02:00
ganfra
a79a6443e7 Realm: update realm dependencie 2019-07-03 20:08:27 +02:00
ganfra
9ff24cbf2a Merge branch 'feature/fix_issues' into develop 2019-07-03 19:46:34 +02:00
Valere
4041e2e8ca code review 2019-07-03 18:40:42 +02:00
Valere
031c4e5746 Crash on loggout
https://github.com/matrix-org/riot-android-rageshakes/issues/5881
2019-07-03 18:40:04 +02:00
Valere
b4ea85fc76 Fix / Rageshake crashes + cleaning !!
https://github.com/matrix-org/riot-android-rageshakes/issues/5880
https://github.com/matrix-org/riot-android-rageshakes/issues/5877
https://github.com/matrix-org/riot-android-rageshakes/issues/5873
https://github.com/matrix-org/riot-android-rageshakes/issues/5871
2019-07-03 18:40:04 +02:00
Benoit Marty
9cdecced57
Merge pull request #291 from vector-im/feature/start_crypto_earlier
Start crypto manager before handling first sync events
2019-07-03 18:05:44 +02:00
Benoit Marty
60d46538de
Merge pull request #292 from vector-im/feature/sonar_fix
Feature sonar fix and convert remaining Java files to Kotlin
2019-07-03 18:03:23 +02:00
Benoit Marty
223295c2f1 Convert MXUsersDevicesMap to kotlin - Fix issue 2019-07-03 18:01:28 +02:00
Benoit Marty
f789fb275d Convert MXUsersDevicesMap to kotlin 2019-07-03 17:34:22 +02:00
Valere
a7c12aeb93 Start crypto manager before handling first sync events 2019-07-03 17:17:58 +02:00
Benoit Marty
0ca9a5f68b Convert MXKey to kotlin 2019-07-03 16:45:08 +02:00
Benoit Marty
7d5c31c510 Fix Javadoc issues 2019-07-03 15:52:53 +02:00
Benoit Marty
1ee1c31b9c Fix bugs detected by Sonar 2019-07-03 15:42:35 +02:00
Benoit Marty
e9eada77f9 Add comment to run sonar analysis and fix compilation issue 2019-07-03 15:42:35 +02:00
ganfra
93ce0cc5e9 Realm: avoid using monarchy thread for custom work 2019-07-03 14:48:45 +02:00
ganfra
eefd09d022 Dagger: don't create MatrixCoroutineDispatchers multiple time!! 2019-07-03 14:48:03 +02:00
ganfra
ef597cc67a RoomSummary: set unreadNotification to 0 by default 2019-07-03 14:47:33 +02:00
Valere
5d171e0240 Moved incoming key/verif to active session holder 2019-07-03 12:56:08 +02:00
Valere
39070820be
Merge pull request #283 from vector-im/feature/check_pushrule_on_sync_only
Check Push rule on sync only + fix bad room name in notif
2019-07-03 12:37:49 +02:00
Valere
1fdad38b9d Check Push rule on sync only + fix bad room name in notif 2019-07-03 11:59:45 +02:00
Benoit Marty
f41c0311fa Fix done TODO 2019-07-03 11:58:50 +02:00
Benoit Marty
a476ac71da Import translations from Riot 2019-07-03 10:20:07 +02:00
ganfra
bc2d321a84 Merge branch 'feature/Perf' into develop 2019-07-02 23:07:16 +02:00
Dominic Fischer
0f3a63e366 Enhance CancelableBag
Signed-off-by: Dominic Fischer <dominicfischer7@gmail.com>
2019-07-02 21:46:44 +01:00
ganfra
2f66321c2a RoomSummary: don't fetch last event by default as it takes some time 2019-07-02 19:59:01 +02:00
ganfra
5b102485bc Perf: timeline should reuse one background looper thread 2019-07-02 19:12:20 +02:00
Valere
ec5ec3375a Fix / sometime sent reaction is count twice
Now use eventId format to check if local echo instead of state
2019-07-02 18:05:14 +02:00