Bruno Windels
65660a1e3b
remove double jsdoc
2020-09-08 15:06:44 +02:00
Bruno Windels
5e65eb10ef
docs
2020-09-08 14:39:33 +02:00
Bruno Windels
1aa044667c
try sending out pending room keys after first sync
2020-09-08 14:39:07 +02:00
Bruno Windels
31d4b6f75d
send room keys to newly joined members in afterSyncCompleted stage
2020-09-08 14:38:27 +02:00
Bruno Windels
bbaf3a5605
write needsRoomKey flag when new members joins to tracked e2ee room
2020-09-08 14:22:11 +02:00
Bruno Windels
4cf3b3569d
storage method takes EventKey actually
2020-09-08 10:51:28 +02:00
Bruno Windels
c32ac2c764
use decryption result to show message verification status in timeline
2020-09-08 10:50:39 +02:00
Bruno Windels
9137d5dcbb
make decryption algorithms return DecryptionResult
...
which contains curve25519 key and claimed ed25519 key as well as payload
2020-09-08 10:48:11 +02:00
Bruno Windels
e06cb1eb5f
fix param order
2020-09-04 16:29:20 +02:00
Bruno Windels
1af118a443
don't assume we have a timeline
2020-09-04 16:27:39 +02:00
Bruno Windels
62bcb27784
implement decryption retrying and decrypting of gap/load entries
...
turns out we do have to always check for replay attacks because
failing to decrypt doesn't prevent an item from being stored,
so if you reload and then load you might be decrypting it
for the first time
2020-09-04 15:29:58 +02:00
Bruno Windels
fe9245dd04
first draft of retrying decryption when receiving room keys
2020-09-04 12:10:12 +02:00
Bruno Windels
502ba5deea
first draft of decryption in Room and RoomEncryption
2020-09-04 12:09:19 +02:00
Bruno Windels
c5efa582b1
check algorithm
2020-09-03 17:51:00 +02:00
Bruno Windels
b1226d9220
add infrastructure to encrypt while sending
2020-09-03 15:36:48 +02:00
Bruno Windels
5cafef96f5
add RoomEncryption to room
2020-09-03 15:36:17 +02:00
Bruno Windels
007333628a
add todo for /sync <-> /members race
2020-08-31 16:10:18 +02:00
Bruno Windels
8b358379e8
first draft of device tracker
...
mainly missing race protection with /sync and actually running the code
2020-08-31 14:12:12 +02:00
Bruno Windels
8482bc95ec
pass memberchanges around instead of members
...
so we can easily tell how their membership changes, (e.g. join -> left)
which we'll need for device tracking.
Not adding this to RoomMember because RoomMember also needs to be
able to represent a member loaded from storage which doesn't contain
this error. A MemberChange exists only within a sync.
2020-08-31 09:50:57 +02:00
Bruno Windels
164384f312
forgot memberlist member
2020-08-31 08:54:27 +02:00
Bruno Windels
8da00f9a03
add isTrackingMembers flag to know if EncryptionUsers have been written
...
for this room
2020-08-31 08:53:47 +02:00
Bruno Windels
d813e6d932
store encryption event content rather than just flag in room summary
2020-08-31 08:53:10 +02:00
Bruno Windels
6a9cbf7f33
store and sort by m.lowpriority tag
2020-08-27 20:52:51 +02:00
Bruno Windels
a64d49a8a2
prevent an empty array being passed to Heroes
2020-08-21 19:03:21 +02:00
Bruno Windels
e5cdf061cb
create, update and remove heroes as they come from sync
2020-08-21 18:11:07 +02:00
Bruno Windels
831f4188f7
also expose highlight count
2020-08-21 15:50:32 +02:00
Bruno Windels
0d8ff34c55
don't fail to clear unread state when offline
...
also update UI before network request
2020-08-21 15:23:25 +02:00
Bruno Windels
2bfbb41ee7
send receipt to server when clearing unread state so notif count clears
2020-08-21 15:16:57 +02:00
Bruno Windels
d3ea8c747a
ignore own messages for unread state, and don't set unread while open
2020-08-21 14:26:51 +02:00
Bruno Windels
2742162c8e
only clear unread if needed
2020-08-21 14:11:42 +02:00
Bruno Windels
4fb3010676
only set unread for incremental syncs
2020-08-21 13:45:38 +02:00
Bruno Windels
7458465ef6
expose props on Room
2020-08-21 11:56:45 +02:00
Bruno Windels
739d74bf9c
add method to clear unread state
2020-08-21 11:56:36 +02:00
Bruno Windels
00718c582a
render avatar img in room list
2020-08-20 17:32:55 +02:00
Bruno Windels
5d0ee21267
move mxcUrl functions to media repo class
2020-08-20 15:40:43 +02:00
Bruno Windels
514d1d9579
first draft of adding profile info while filling gap
2020-08-20 14:39:03 +02:00
Bruno Windels
a90cebcabb
document access levels
2020-08-19 16:58:28 +02:00
Bruno Windels
113c9e13b3
fix typo
2020-08-19 16:58:19 +02:00
Bruno Windels
4144b0b281
move memberlist load code out of Room
2020-08-19 16:44:09 +02:00
Bruno Windels
463b9b745e
base impl of member list
2020-08-19 16:29:54 +02:00
Bruno Windels
f84c9d51b4
store last pagination token
2020-08-19 16:29:08 +02:00
Bruno Windels
d08297d1e0
move RoomMembers to own dir
2020-08-19 16:28:09 +02:00
Bruno Windels
6abdcd6b58
finish draft of member list loading method
2020-08-19 16:13:47 +02:00
Bruno Windels
bfc5eb3ee5
return changed members from sync writer
...
we will use it to handle race between /sync and /members
and to update the member list if it loaded
2020-08-19 16:12:49 +02:00
Bruno Windels
9ff4f3839c
Merge branch 'master' into bwindels/memberlist
2020-08-19 12:13:38 +02:00
Bruno Windels
37597e2acb
mark fragment in storage when start of timeline is reached
...
so we don't keep looping to fetch more messages
when scrolled all the way up
2020-08-17 17:41:10 +02:00
Bruno Windels
306309c4f8
wrap error and expose room id
...
this makes it easier to track down a (storage) error to a room
2020-08-17 10:48:00 +02:00
Bruno Windels
00a85697ab
add license header in all source files
2020-08-05 18:38:55 +02:00
Bruno Windels
f5d3092031
WIP
2020-06-26 23:26:24 +02:00
Bruno Windels
7f221cda65
show images intimeline
2020-05-09 20:02:08 +02:00
Bruno Windels
f9c0b4b53e
add logging in case #45 would happen again
2020-05-07 19:14:30 +02:00
Bruno Windels
a097929dbd
rename lowercase filenames of classes to camelcase like class
2020-04-20 21:41:10 +02:00