16 Commits

Author SHA1 Message Date
2145aff76f Keep a bit more logs 2023-11-05 10:01:26 +01:00
1199dd7613 Cache the result of rendering backlog items
It's so much faster when getting lots of updates, especially with the
'Added client for' log storm at startup.
2023-11-04 22:16:33 +01:00
46b703ba45 Make buffers return their items lazily from the end instead of materializing them 2023-11-04 20:14:51 +01:00
d5e5639ba7 Create room buffers when new rooms are returned by server sync 2023-11-04 20:06:44 +01:00
6f8c3a19b2 Trigger re-render when pushing to the log 2023-11-04 17:19:58 +01:00
58ab62d7d3 Format timeline events in a human-readable way 2023-11-04 15:18:26 +01:00
b4eeb8a6b8 Display repr of timeline items instead of their diffs' 2023-11-04 11:40:14 +01:00
e04c58fec2 Only re-render when an event happened
For now we don't even filter out invisible events, but it already cuts down
considerably on CPU usage.
2023-11-04 10:08:09 +01:00
91a1d9ced6 Backfill room history on startup 2023-11-03 11:35:22 +01:00
fe676cacda Make buffers fill from the bottom, and render each paragraph individually
The goal of rendering paragraph individually is to eventually avoid
redrawing everything every time there is a change
2023-11-02 21:45:40 +01:00
fda09e0127 Poll room updates and display them 2023-11-02 12:01:15 +01:00
e0bc599ce5 Prematurely optimize RoomBuffer's memory usage 2023-11-02 09:20:52 +01:00
1c13d2c784 Make the log buffer show logs 2023-11-01 18:57:25 +01:00
b81906c318 Add active buffer 2023-11-01 14:33:20 +01:00
41bf892e74 rustfmt 2023-11-01 14:13:04 +01:00
0f97aad2e8 Minimal buflist with just the room ids 2023-11-01 11:12:31 +01:00