Commit Graph

86 Commits

Author SHA1 Message Date
miruka
63af4be1e2 Defer fetching user profiles for events
Previously, events for which the sender, target (state_key) or remover
was missing from the room members would have their profile fetched
from network when registering the event into models.

This could cause very slow past events loading times for rooms, since
the event registering function (which contained the profile retrieval
directives) is run sequentially event-by-event.

Missing profiles are now lazy-loaded when events come into the
user's view in the QML timeline.
2020-05-20 03:42:40 -04:00
miruka
ef9b880152 Register room members only when needed 2020-05-17 15:29:23 -04:00
miruka
f23a83b0d5 NioCallbacks: add self.models/user_id aliases 2020-05-17 13:57:09 -04:00
miruka
6536f89507 Fix missing rooms and wrong avatars in initialsync 2020-05-15 20:56:23 -04:00
miruka
a4c33f8edb Ensure first event for each rooms is a visible one
Dependening on the user's config, request for the first sync that
profile changes, membership changes or unknown events be filtered out.
This ensures we have something to show as the room subtitle (last
message) in the UI.
2020-05-15 20:56:23 -04:00
miruka
3a77a0288f Use user ID for unknown typing users in room 2020-05-15 20:56:23 -04:00
miruka
9e07612249 Remove "room load until there's non-profile event" 2020-05-15 20:56:23 -04:00
miruka
2a0a3765fc Add kick to room member context menu 2020-05-15 20:56:23 -04:00
miruka
0ba8c6eecf Make all events able to increment unread/mentions 2020-05-15 20:56:23 -04:00
miruka
568d4fddce Don't increment room unreads for our own events 2020-05-15 20:56:23 -04:00
miruka
e98a539433 Don't increment room unreads for past events 2020-05-15 20:56:23 -04:00
Emi Simpson
6ee20a2717 Added limited local read/unread tracking 2020-05-15 20:56:23 -04:00
miruka
0e04eafebd Redaction local echo for our other accounts 2020-04-03 07:53:36 -04:00
miruka
8af63a304f Redact local echo: same text as redaction event 2020-04-03 07:53:36 -04:00
vSLG
af861ac13a Add redact echo before we receive RedactionEvent 2020-04-03 07:53:36 -04:00
miruka
f8fe5d812b Imrpove redacted events text 2020-04-03 07:53:36 -04:00
miruka
05319af858 Redaction code adjustments + theme addition 2020-04-03 07:53:36 -04:00
vSLG
e60a7f6dac Make "Remove" option conditional in context menu
Refactor code in the backend so things can work
better
2020-04-03 07:53:36 -04:00
vSLG
fc878e7537 Fix event redaction and remove junk code 2020-04-03 07:53:36 -04:00
vSLG
db1afc980e Add RedactionEvent support on backend 2020-04-03 07:53:36 -04:00
miruka
0e191f11d0 Member ev. processing: don't assume any key exists 2020-03-24 03:56:31 -04:00
miruka
bed0dbf998 Add setting to ignore unknown events 2020-03-23 16:58:31 -04:00
miruka
4fdf531631 Fix mention-related KeyError in message callback 2020-03-23 13:43:30 -04:00
miruka
688f36b7f1 Event: add [(text, link)] mentions attributes 2020-03-23 15:39:14 -04:00
miruka
ef2504ecae Visual unread mentions counter 2020-03-22 23:55:48 -04:00
miruka
8d5bc45ceb Safer linkifying for user display names 2020-03-22 20:58:05 -04:00
miruka
c6390238a9 Add settings to hide membership and profile events 2020-03-22 12:04:43 -04:00
miruka
46f3f15694 Fix cached thumbnails extensions 2020-03-09 12:10:04 -04:00
miruka
b992db9bfe Use typing.TYPE_CHECKING to avoid inner imports 2020-02-12 05:56:18 -04:00
miruka
9990fecc74 Begin yet another model refactor
Use native ListModel which require a lot of changes, but should be
much faster than the old way which exponentially slowed down to a crawl.
Also fix some popup bugs (leave/forget).

Not working yet: side pane keyboard controls, proper highlight,
room & member filtering, local echo replacement
2020-01-06 03:41:14 -04:00
miruka
eff64fabd6 Catch any nio.ErrorResponse to raise MatrixErrors 2019-12-26 08:16:04 -04:00
miruka
44e5de02f8 font color → span mx color for outgoing HTML
Also remove HTML_PROCESSOR `filter_inline` and `from_markdown_inline`
methods. `filter` and `from_markdown` now take an `inline` argument.
2019-12-22 09:35:21 -04:00
miruka
fb1f9c62e5 Add SPDX ID LGPL v3+ license headers 2019-12-19 07:46:16 -04:00
miruka
934d6a79a2 Document nio_callbacks.py, small code improvements 2019-12-18 14:24:55 -04:00
miruka
d7045644f1 Rename and document html filtering stuff 2019-12-18 09:33:22 -04:00
miruka
2bdf21d528 Rename some filers and folder for clarity 2019-12-18 04:45:09 -04:00