Commit graph

61 commits

Author SHA1 Message Date
Nicolas Werner
3ae5838230
Add a way to compact the database
Can also be used to fix some corruption.
2023-10-21 19:48:32 +02:00
Nicolas Werner
96f791daf1
Get rid of year in license headers
See also:
https://daniel.haxx.se/blog/2023/01/08/copyright-without-years/
https://hynek.me/til/copyright-years/
2023-02-21 23:48:49 +01:00
Nicolas Werner
3a6a905429
A whole new year full of excitement and possibilities! 2023-01-02 04:25:33 +01:00
Nicolas Werner
37009906bb
Evaluate push rules locally 2022-10-13 17:55:07 +02:00
Hiers
8071b192b8
Line to indicate first unread message (#1147)
* First draft of unread line feature.

* Minor visual fix.

* Removed unnecessary ternary operator.

* Extended unread line functionality to work on minimised window or focusing another window.

* Fix for unread line not showing when last read message is hidden.

* Minor performance improvement. Fix for misbehaving event2order DB at application start.

* Fix for possible performance issues when user has joined a large number of rooms.

* Fix for breaking macos and clazy builds.

* Changed on windows focus function to refresh unread line if room is unread.

* Unread line is removed when user sends a message.

* Linting.

* Fixed unread line to work in standalone room windows.

* Switch isRoomUnread for index 0.

* Merged try/catch blocks.

* Fix for crash on opening a room invite.

* Call fullyReadEventId function when used instead of storing it and passing it through.

* Function that was meant to sync the unread line was relying on an async function, oops.

* Linting again.

* More linting...

* Minor changes.
2022-09-11 23:05:20 +00:00
Nicolas Werner
61404641d9
Update year in copyright notice to shut up lint job 2022-01-01 04:57:53 +01:00
Nicolas Werner
9a9dbda571
Update presence dynamically and reduce allocations 2021-12-30 04:54:03 +01: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
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
12ce7686ce
Show some spaces in the community sidebar 2021-06-25 11:34:17 +02:00
Nicolas Werner
c290b0747f
Reenable invites 2021-05-24 14:04:07 +02:00
Nicolas Werner
ab0baf5d9e
Only show actions, when you have permissions to do them 2021-05-02 18:06:56 +02:00
Nicolas Werner
e5d75c814b
Clean up notification code a bit 2021-03-17 19:18:07 +01:00
Nicolas Werner
a6f0d2ea7d
Update license headers 2021-03-05 01:04:07 +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
7b46aa2a6e Store secrets in keychain 2020-12-16 22:10:09 +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
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
Nicolas Werner
12fff7408e Optimize build 2020-10-27 17:45:28 +01:00
Nicolas Werner
66445c507c Trade CPU usage for 30MB of members in RAM 2020-10-22 20:49:15 +02:00
Nicolas Werner
aa9b453f81 Store timestamp with olm sessions 2020-10-20 13:46:05 +02:00
Nicolas Werner
7b6fab3373 Calculate verification status from cross-signing sigs and update dynamically 2020-10-08 00:20:12 +02:00
Nicolas Werner
2a79cd2b6b Don't fail on missing key for a device and /rotate-megolm-session command 2020-10-03 18:38:28 +02:00
Nicolas Werner
94690ebd4c Clean up verification and key cache a bit 2020-10-02 01:14:42 +02:00
CH Chethan Reddy
a2979c2df1 Updating keys of outdated encrypted users 2020-07-30 22:10:27 +05:30
CH Chethan Reddy
ac1fbbb69f Some issue with UserProfile 2020-07-30 22:10:27 +05:30
CH Chethan Reddy
6fae36abc4 [WIP] Add Caching for users 2020-07-30 22:10:27 +05:30
Nicolas Werner
96f4169be9 Show presence and set custom status messages 2020-06-08 01:59:05 +02:00
Nicolas Werner
dad2de7ba2 Add support for db migrations 2020-05-02 16:44:50 +02:00
Nicolas Werner
e6fcccc8bd Don't store pending receipts in cache
We don't get notified for every message. Sometimes we only get a read
receipt for the newest message, which means old read receipts accumulate
in the database. This least to some considerable CPU overhead, when
checking if the timeline should be notified for new read receipts.
Instead just always notify, since that has far less overhead in the
worst case and doesn't need complicated cache cleanup.

The old pending_receipts db is not removed for now. It should still have
minimal storage overhead and we don't have a good mechanism for cache
format upgrades atm.
2020-04-30 22:42:56 +02:00
Nicolas Werner
6bdc75d073 Reset user colors on theme change (in qml timeline) 2020-02-20 20:51:07 +01:00
Nicolas Werner
127fb9370b Remove metatypes from headers 2020-01-31 16:08:30 +01:00
Nicolas Werner
d10276253f Fix include of lmdb++ with hunter 2020-01-26 16:38:31 +01:00
Nicolas Werner
5fc1f3bd67 Reduce overhead of Cache.h 2019-12-15 02:56:04 +01:00
Nicolas Werner
13df852479 Reduce some include of Cache.h since it needs 11s on average 2019-12-14 23:40:32 +01:00
Nicolas Werner
659e36b113 Update to c++17 2019-12-14 18:59:38 +01:00
Nicolas Werner
bde71a6cbc fixup bad room list translation commit 2019-11-23 20:06:15 +01:00
Nicolas Werner
52056a79fa Try to reduce memory usage by reusing avatar pixmaps 2019-08-26 08:51:56 +02:00
Joseph Donofry
89015b9f18
Fix SIGNAL SLOT issue on mtx types 2019-08-19 20:44:58 -04:00
Joseph Donofry
52a2621776
Fix issues with caching and loading of mentions.
Mentions are now loaded from the cache instead of
directly from the web request.  Mentions are also
properly saved to the cache now (instead of as empty
strings).  Still lots of tweaks left on this feature.
2019-08-12 22:09:40 -04:00
Joseph Donofry
7c7889a04d
Fix linting issues w/ the last commit 2019-08-09 23:36:45 -04:00
Joseph Donofry
3f563e1e6e
Cache User Mentions
Cache user mentions when they are retrieved from the server.
This logic currently isn't being utilized by the UI.  Additionally,
the app should use a 'since' value to only get mentions newer
than those stored in the DB, to avoid excessive web requests.

This will be implemented in a future commit.
2019-08-09 23:34:44 -04:00
Joseph Donofry
41dc420edd
Fix linting issues 2019-08-06 08:16:19 -04:00
Joseph Donofry
dbdaf35907
Cache user mentions 2019-08-05 23:00:07 -04:00
Nicolas Werner
713f9dbe89 Show room version in settings 2019-07-04 01:26:16 +02:00