Nicolas Werner
550c80525a
Move voip and encryption stuff into their own directories
2021-10-17 17:18:14 +02:00
Nicolas Werner
ad1e6c8298
Support bootstrapping crosssigning
...
Showing the bootstrap state and showing there are unverified devices is
still missing.
2021-10-09 05:01:53 +02:00
Thulinma
456a41bcdf
Added support for refreshing the device list, marking current device with a checkmark instead of a lock
2021-10-06 22:52:19 +02:00
Nicolas Werner
cfca7157b9
Change indentation to 4 spaces
2021-09-18 00:45:50 +02:00
DeepBlueV7.X
8e2f1e9dce
Merge pull request #416 from LorenDB/jdenticon
...
Add jdenticon support
2021-09-13 21:31:29 +00:00
Nicolas Werner
1b82b8242b
Keep identities for users cached
...
There is not really a reason to stop tracking them, just because the
server says so. We might still want to show a users profile, etc.
2021-09-13 14:31:22 +02:00
Loren Burkholder
b9255803fb
Streamline getting other user id from invited direct chat
2021-09-11 19:45:01 -04:00
Loren Burkholder
fb53fc86b6
Fix invites crashing the whole app
2021-09-11 19:35:31 -04:00
Nicolas Werner
80fa3e801f
Fix duplicate check possibly leaving large gaps if initial state was not in timeline
2021-09-06 01:41:23 +02:00
Thulinma
2525579610
Fixed duplicate messages appearing in timeline if server sent them
2021-09-05 23:00:29 +02:00
Nicolas Werner
99f3296a64
Make error case with unverified master key more descriptive
2021-09-03 15:08:16 +02:00
Nicolas Werner
98533f01d9
Fix session always being rotated if 'verified only' is active
2021-08-31 16:40:31 +02:00
Nicolas Werner
529c93503d
Remove useless ;
2021-08-31 04:13:51 +02:00
Nicolas Werner
c80e253a24
Stop encrypting all sessions with secret
2021-08-31 04:06:51 +02:00
Nicolas Werner
79ecad5a09
Require a working secrets storage
2021-08-31 01:51:03 +02:00
Nicolas Werner
2cabd107bf
Useless capture
2021-08-22 15:09:27 +02:00
Nicolas Werner
055f0d6709
Even if you just change the log level, ensure that this compiles before pushing...
2021-08-22 14:56:44 +02:00
Nicolas Werner
63998a217a
Add db migration that clears the cache
...
This fixes spaces or stickers not showing up for old databases as well
as the wrong format of the state_keys db.
2021-08-22 14:45:57 +02:00
Nicolas Werner
56db0dbc7d
Allow downloading keys from key backup
2021-08-17 03:24:12 +02:00
Nicolas Werner
69e65cef2f
Fix shadowing
2021-08-14 02:52:43 +02:00
Nicolas Werner
110fef5c68
Request keys when opening a room for the first time
2021-08-14 02:41:34 +02:00
Nicolas Werner
13633c7644
Ensure device signatures always get verified on device update
2021-08-14 02:06:48 +02:00
Nicolas Werner
9bad584931
Show verification status in memberlist
2021-08-13 23:58:26 +02:00
Nicolas Werner
18ea01e198
Show if there are unverified devices in a room
...
Also fixes some issues where nested transactions will poison the
verification cache.
2021-08-13 23:19:54 +02:00
Nicolas Werner
dbea031a86
Fix potential crash when trying to read room info too early
2021-08-11 00:21:24 +02:00
Nicolas Werner
71290e208d
Enable insecure fallback for secret storage
2021-08-08 18:57:38 +02:00
Nicolas Werner
ad57a336dc
Breaking: Change secret names and fix bug when storing secrets
2021-08-08 18:38:05 +02:00
Nicolas Werner
b73bd2859c
Protect against replay attacks
2021-08-07 23:54:35 +02:00
Nicolas Werner
e5a6b2b6ef
Allow creating new packs
2021-08-06 04:31:53 +02:00
Nicolas Werner
a57a15a2e0
Basic sticker pack editor
2021-08-06 04:31:53 +02:00
Nicolas Werner
25e7a985b8
Add option to only send encrypted messages to verified devices
...
fixes #636
2021-08-01 00:59:46 +02:00
Nicolas Werner
760f675792
Ensure the encrypted rooms db is always created
2021-07-31 17:59:03 +02:00
Nicolas Werner
570d00b000
Fix crash when storing secrets
...
Nested QEventLoops are scary. Ultimately we shouldn't use them, but I
have no better solution right now.
fixes #656
2021-07-25 17:07:10 +02:00
Nicolas Werner
eafbab6ae1
Add menu to enable or disable stickers globally
2021-07-23 17:43:17 +02:00
Nicolas Werner
56b44a85b5
Fix unused state key when iterating room stickers
2021-07-19 03:29:48 +02:00
Nicolas Werner
9d5ba4f681
Move sticker parsing and enable room stickers
2021-07-19 03:02:30 +02:00
Nicolas Werner
8a1666bc88
Basic sticker support
2021-07-19 01:28:07 +02:00
Nicolas Werner
3f0aa13cb6
Share historical keys
...
We share all keys with our devices and ones created by us to other
users.
2021-07-17 02:14:44 +02:00
Nicolas Werner
9fadd14871
Store megolm session data in separate database
2021-07-17 01:27:37 +02:00
Nicolas Werner
d81e3f94e7
Try to fix crash in setCurrentIndex
...
fixes #607
2021-07-13 02:45:03 +02:00
Nicolas Werner
b064eb34aa
Fix lint
2021-07-10 16:14:24 +02:00
Nicolas Werner
c755d54243
Remove db bottleneck by caching ro txn for 100 requests
2021-07-10 16:12:38 +02:00
Nicolas Werner
f23fd5f822
Fix a few embarrassing bugs with device list updates
2021-07-06 11:39:29 +02:00
Nicolas Werner
5b016cbc68
Remove dead code to calculate last message
2021-07-01 12:45:47 +02:00
Nicolas Werner
884fb74d2d
Add a basic 'Space page'
2021-06-25 11:34:19 +02:00
Nicolas Werner
6bfa6c4c79
Allow filtering by space
2021-06-25 11:34:18 +02:00
Nicolas Werner
12ce7686ce
Show some spaces in the community sidebar
2021-06-25 11:34:17 +02:00
Alexander Bantyev
9f798e76ed
Allow editing unsent messages
...
As of 0db4d71ec2
(Prevent edits of
unsent messages), messages that are edits of (or replies to) unsent
messages were not allowed. This change was made because otherwise
the edits were discarded due to use of txnid rather than mxid in the
"m.relates_to" object. Remove this restriction and fix the issue by
replacing txnid with mxid in all related events when the message is
sent (and we obtain mxid from the server).
2021-06-18 16:38:55 +03:00
Nicolas Werner
e6878ee298
Don't read avatarUrl from local profile, if no global avatar is set
2021-06-12 16:05:45 +02:00
Nicolas Werner
d8c0d4874b
Render community items
2021-06-11 13:12:43 +02:00
Nicolas Werner
c290b0747f
Reenable invites
2021-05-24 14:04:07 +02:00
Nicolas Werner
f2bc184550
Fix device list not showing up and UserProfile blocking the window
2021-05-22 14:31:38 +02:00
Nicolas Werner
567fe81ad7
Basic header and footer of room list
2021-05-15 13:05:55 +02:00
Nicolas Werner
2df4c532ed
Add TOFU (Trust On First Use) mode to encryption
2021-05-07 17:01:57 +02:00
Nicolas Werner
0d0709ccd3
Show verification status next to messages
2021-05-07 17:01:57 +02:00
Nicolas Werner
1936749ff5
Fix keys not being reshared to the same devices, that already got them, if the message got lost
2021-04-20 19:52:23 +02:00
Nicolas Werner
20c1ca2aae
Fix a a session with a higher minimum index being able to overwrite an older one
2021-04-20 14:19:07 +02:00
Nicolas Werner
1b0af04cc8
Prevent warning on empty user requests
2021-04-18 21:53:36 +02:00
Nicolas Werner
8108d98fa7
Store state events with state keys
2021-04-13 14:36:37 +02:00
Nicolas Werner
c8a547630b
Fix a weird edge case with persisted empty event ids
...
No idea, how that happened and where it came from
2021-04-08 12:56:31 +02:00
Nicolas Werner
e5d75c814b
Clean up notification code a bit
2021-03-17 19:18:07 +01:00
Nicolas Werner
86766b739d
Store all state events
2021-03-15 17:11:02 +01:00
Nicolas Werner
569ea5b5f4
Rotate session keys properly
2021-03-15 16:24:01 +01:00
Nicolas Werner
6ad4065de4
Fix a few db access crashes
2021-03-12 17:14:18 +01:00
DeepBlueV7.X
56c44d0454
Merge pull request #505 from Nheko-Reborn/license-headers
...
License headers
2021-03-05 01:04:36 +00:00
Joseph Donofry
4b12b53133
Fix linting
2021-03-04 19:11:08 -05:00
Nicolas Werner
a6f0d2ea7d
Update license headers
2021-03-05 01:04:07 +01:00
Joseph Donofry
87bf761dc2
Properly format matrix errors in spdlog statements
2021-03-04 18:56:25 -05:00
Nicolas Werner
d28a620f42
Add comment to mark db keys as such
2021-03-03 00:08:33 +01:00
Nicolas Werner
1b0abe97f9
Update to new lmdbxx version
2021-03-03 00:01:17 +01:00
Nicolas Werner
1f373479b8
Fix unaligned reads
2021-02-25 15:15:59 +01:00
Nicolas Werner
6d678a108f
Use fully read marker and fix stuck read marker with edits
2021-02-10 02:37:47 +01:00
Nicolas Werner
bdb6e6b79e
Fix stuck notifications because of edits
...
Does not fix the read status yet, for that we need to compare read
receipts for all events after the last visible event.
2021-02-10 01:03:20 +01:00
Nicolas Werner
d6504812c7
Render edits
2021-02-09 20:22:02 +01:00
Nicolas Werner
2e77a1554f
Switch to new relations format
2021-02-09 20:22:02 +01:00
Nicolas Werner
0b5269bfc0
Reload the timeline after key import
2021-01-25 17:06:27 +01:00
Nicolas Werner
6313ecb7d4
Treat empty secrets as no secret
2021-01-25 15:28:35 +01:00
rnhmjoj
0e628290af
Write database to the DataLocation
2021-01-24 00:40:19 +01:00
Nicolas Werner
1c98426536
Fix tags
2021-01-22 03:18:36 +01:00
Nicolas Werner
5105d2cb96
Fix crash when persisting null relations
2021-01-19 14:21:04 +01:00
Nicolas Werner
2a19783f99
Fix timeline becoming corrupted on backfill
...
Fixes #273
2021-01-12 00:02:18 +01:00
Nicolas Werner
39f9b7d90a
Handle matrix scheme
...
Link opening only works on Linux for now.
See https://github.com/matrix-org/matrix-doc/pull/2312
2021-01-10 22:41:56 +01:00
Nicolas Werner
3a41bb9fff
Fix typing notifications flickering sometimes
2021-01-05 22:38:21 +01:00
Nicolas Werner
391b1b3285
Fix #359
...
Actually store the login details under the selected profile
2020-12-27 22:56:54 +01:00
Nicolas Werner
525b319a94
lint
2020-12-25 19:20:25 +01:00
DeepBlueV7.X
ea5f6ca0f4
Merge pull request #358 from Nheko-Reborn/windows-fixes
...
Windows fixes
2020-12-25 05:59:18 +01:00
Nicolas Werner
904cafcd39
lint
2020-12-25 04:11:47 +01:00
Loren Burkholder
af52ceb387
Remove unused variable
2020-12-24 21:16:46 -05:00
LorenDB
53f45bdb1c
Switch profile code to a more flexible method
...
This introduces a new version of SingleApplication as well.
2020-12-24 21:16:46 -05:00
Nicolas Werner
01e38d12ed
Fix some compiler warnings
2020-12-25 00:08:06 +00:00
Nicolas Werner
15d8eb2b8b
Update deps for keychain
2020-12-18 03:53:57 +01:00
Nicolas Werner
7b46aa2a6e
Store secrets in keychain
2020-12-16 22:10:09 +01:00
Nicolas Werner
65a4c85ed4
Don't sync db on every sync
...
This fixes some lag, when Nheko is running, which could affect Nheko and
even other applications by excessively calling fsync. This should be
fine, since all filesystems seem to guarantee order and in most cases,
the modified pages are still written. In the worst case we should only
lose the last /sync results or similar.
2020-12-13 01:29:35 +01:00
Nicolas Werner
2ce129e6b6
Properly share and rotate sessions on member and device changes
2020-11-30 01:54:53 +01:00
Nicolas Werner
2290ebcf78
Remove outbound session storage
2020-11-30 01:54:53 +01:00
Nicolas Werner
c24f9a22a5
Load sessions lazily from db
2020-11-30 01:54:53 +01:00
Nicolas Werner
90cae987fd
Bump max dbs
2020-11-26 00:19:09 +01:00
Nicolas Werner
c31b9e2793
Fix race when reading members from db
2020-11-25 23:54:25 +01:00
Nicolas Werner
7cda502edd
Add some db logging and clean up avatar urls a bit
2020-11-25 23:54:25 +01:00
Nicolas Werner
bc93f24a22
Remove redundant user search suggestion code
2020-11-25 19:05:12 +01:00