miruka
0e49b5f972
Write-lock when refiltering
2020-05-15 20:56:23 -04:00
miruka
c502aa4245
Add model batch removal optimization for filtering
2020-05-15 20:56:23 -04:00
miruka
5432958121
Working python proxy/filter for room list
2020-05-15 20:56:23 -04:00
miruka
eee198b238
Add python proxy/filter models
2020-05-15 20:56:23 -04:00
miruka
ac0907fad7
ModelItem can only have one parent model again
2020-05-15 20:56:23 -04:00
miruka
2a772e5f54
Ensure waiting after sync failure before retrying
2020-05-15 20:56:23 -04:00
miruka
592a9fe8e7
Have id field on ModelItem base class
2020-05-15 20:56:23 -04:00
miruka
9f7d30f248
Add account total unread/mentions indicator
2020-05-15 20:56:23 -04:00
miruka
fcf88209f2
Single room list approach, account bar scrolls
2020-05-15 20:56:23 -04:00
miruka
393a56a50a
Model items can now have multiple parent models
2020-05-15 20:56:23 -04:00
miruka
34f98b48d1
Add "every room" button
2020-05-15 20:56:23 -04:00
miruka
65103eaaba
Add keybinds to switch accounts
2020-05-15 20:56:23 -04:00
miruka
7fb67259e7
load_all_room_members doc + ensure registering
2020-05-15 20:56:23 -04:00
miruka
ecb88864a9
Higher firstsync limit to avoid missing room name?
2020-05-15 20:56:23 -04:00
miruka
744c6f1b3f
Load all room members when showing a room to user
2020-05-15 20:56:23 -04:00
miruka
99d59bb49b
Use filtered model strictly when neccessary
2020-05-15 20:56:23 -04:00
miruka
01adcff77e
Reduce the number of room delegate errors
2020-05-15 20:56:23 -04:00
miruka
6536f89507
Fix missing rooms and wrong avatars in initialsync
2020-05-15 20:56:23 -04:00
miruka
fd8cf4ad8d
Optimize model field replacements
2020-05-15 20:56:23 -04:00
miruka
68e344ae21
Give a base class to model item pyotherside events
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
aba2fd1b4b
Improve sync & load_past_events filter usage
...
Limit to 1 message/room only for the first sync
2020-05-15 20:56:23 -04:00
miruka
eacd7f1f3e
Get only 1 event of each kind for rooms on start
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
1adbddc063
Enable member lazy-loading for /sync and /messages
2020-05-15 20:56:23 -04:00
miruka
2cc3f27247
Add Ban to member context menu
...
Also don't try to load past messages in rooms we've left/been
kicked/banned from.
2020-05-15 20:56:23 -04:00
miruka
2d231b7af1
Properly check power levels before allowing kick
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
4f8dc98d13
Sort mentioned/unread rooms by last event date
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
f3aa9f0c5f
Sort rooms with mentions, then unreads first
2020-05-15 20:56:23 -04:00
miruka
0a1834b763
Mark rooms as read on all our accounts
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
b2cfc27ce2
accounts.json: support new "enabled" key
...
Specifying false will cause Mirage to ignore an account and not
log it in on startup.
Defaults to true when adding new accounts or if not present.
2020-05-15 20:56:23 -04:00
miruka
80ac8896d8
Pass a filesize to AsyncClient.upload()
...
Fixes #37
2020-05-15 20:47:33 -04:00
Mikko Rasa
9a6c4b5b30
Fix asyncio event loop init in qml_bridge.py
...
Depending on Python version the file may be imported in a thread and
asyncio only implicitly creates an event loop in the main thread of the
process. Backend does things which need asyncio so we must ensure an
event loop exists before it is imported.
Fixes #15
2020-05-15 15:10:05 +03:00
miruka
4bae3cf90e
Fix AttributeError with matrix-nio 0.11+
2020-05-14 13:58:34 -04:00
miruka
8b8829af86
Use asyncio.Task.current_task for python 3.6
2020-04-26 13:49:44 -04:00
miruka
4961042bde
Fix error on <a> tags without a href attribute
2020-04-07 09:57:32 -04:00
miruka
e0e33649a2
Stricter user/room/message ID mention parsing
...
Fixes issues like this entire string being linkified:
"! foo:example.org"
2020-04-06 08:30:47 -04:00
miruka
aa4cd5bd2c
Bump version to v0.4.3
2020-04-03 07:56:42 -04:00
miruka
b48e663007
Cancel sending events when removing local echoes
2020-04-03 07:53:36 -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
6d270029ad
Remove message keybind: don't bind ctrl+del
...
Ctrl+Del has a special function for deleting words in text, don't
override that
2020-04-03 07:53:36 -04:00