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
miruka
5ea339ea33
Add keybinds for message removal
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
vSLG
b3f1075507
Add redacting event via context menu
2020-04-03 07:53:36 -04:00
miruka
f838bdf96d
focusRoomAtIndex binds: default to cmd+num on OSX
2020-04-03 07:53:36 -04:00
miruka
6e63569ad7
Add leaveRoom and forgetRoom keybinds
2020-04-03 07:53:36 -04:00
miruka
2a648d7f59
Add invite to room keybind
2020-04-03 07:53:36 -04:00
miruka
22be0bf5f0
MIRAGE_CONFIG_DIR and MIRAGE_DATA_DIR env vars
...
Allow overriding the default path where config files and user data are
found
2020-04-03 07:53:36 -04:00
miruka
eafd65d490
Fix compact mode being enabled by default
2020-03-28 11:04:43 -04:00
miruka
4185a30a6e
theme_parser: translate hard tabs to spaces
2020-03-28 07:48:27 -04:00
miruka
311a53f8f4
"Unselect" → "Deselect"
2020-03-27 07:06:38 -04:00
miruka
4c76ffd88b
Bump version to v0.4.2
2020-03-27 05:40:23 -04:00
miruka
936c49127d
Add keyboard controls for message focus/selection
2020-03-27 04:49:01 -04:00
miruka
6ca10e1f2b
Customizable unselectAllMessage keybind
2020-03-27 03:53:25 -04:00
miruka
684ddd364c
Don't ignore case when linkifying display names
2020-03-24 04:12:09 -04:00
miruka
3dc81700c1
Correct mailto: linkifying in some special cases
...
adresses where the host ends with a digit or where the host is only one
character
2020-03-24 04:08:00 -04:00
miruka
0e191f11d0
Member ev. processing: don't assume any key exists
2020-03-24 03:56:31 -04:00
miruka
be43f68059
Support $id:server message ID mentions
2020-03-23 17:17:15 -04:00
miruka
bed0dbf998
Add setting to ignore unknown events
2020-03-23 16:58:31 -04:00
miruka
bd53993b90
Ignore mention links with no text
2020-03-23 16:34:51 -04:00
miruka
2e6488e6f9
Bump version to v0.4.1
...
Changelogs:
Added:
- `hideMembershipEvents` setting in config file, controls whether
events such as "x joined the room" are shown in the timeline
- `hideProfileChangeEvents` setting in config file, controls whether
display name and avatar change events are shown in the timeline
- Compact mode to make accounts, rooms, messages and room members
take only one line as well as reducing vertical spacing between them.
Set by the new `compactMode` setting in config file, and can also
be toggled with the `keys.toggleCompactMode` keybind which defaults
to Alt+Ctrl+C
- `keys.focusRoomAtIndex` in config file, a
`{"<index>": "<keybind>"}` mapping which by default binds
Alt+1-9 and Alt-0 to focus room 1 to 10 in the current account
- User ID, display names, room ID and room aliases are now
automatically transformed to matrix.to links and will be rendered
as mentions by clients.
In Mirage, this results in user ID/names being colored with the
same color seen when they send messages
- Track the number of times your user was mentioned in rooms.
The visual counter is not yet displayed, since there currently is
no way to mark messages as read and make the counter go down
Fixed:
- Python exceptions occuring in the asyncio loop not being printed
in the terminal
- Extra newline shown after code blocks in messages
- Constant CPU usage due to button loading animations still being
rendered while uneeded and invisible
Theme changes:
- Added `controls.avatar.compactSize` property
- Added `.mention` class styling to `chat.message.styleSheet`
2020-03-23 15:06:57 -04:00
miruka
38e57d2ff9
Color user mentions in local echoes too
2020-03-23 14:23:32 -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
8e7cd7bde9
Add data-mention attributes to mention links
2020-03-23 15:23:01 -04:00
miruka
3084745522
Remove extra newline from <pre> elements
2020-03-23 15:11:29 -04:00
miruka
a20cfcffe5
Add special CSS classes to mention links
2020-03-23 15:02:31 -04:00
miruka
ef2504ecae
Visual unread mentions counter
2020-03-22 23:55:48 -04:00
miruka
367fff8f4a
Fix mentions incorrectly linked for outgoing html
2020-03-22 23:00:30 -04:00
miruka
8d5bc45ceb
Safer linkifying for user display names
2020-03-22 20:58:05 -04:00
miruka
8fd7ce4e14
Safer linkifying for user ID, room ID, room alias
...
Don't replace anything in already existing links or <code>.
2020-03-22 19:40:43 -04:00
miruka
2fbfac5e0d
Proper user ID, name, room ID, alias linkifying
2020-03-22 17:38:28 -04:00
miruka
f858e505a6
Linkify typed usernames/id in markdown
2020-03-22 16:21:29 -04:00
miruka
9f52fa86fa
Add Alt+1-0 keybinds to switch to a room at index
2020-03-22 14:08:27 -04:00
miruka
53dfd08131
Add toggleCompactMode keybind, re-rename setting
2020-03-22 13:30:03 -04:00
miruka
18c16ca486
Rename compact mode setting → compactModeByDefault
2020-03-22 13:24:38 -04:00
miruka
5d513f84fa
Add compact mode for sidepanes + setting
2020-03-22 12:50:51 -04:00
miruka
c6390238a9
Add settings to hide membership and profile events
2020-03-22 12:04:43 -04:00
miruka
f13327b073
Config files loaded data accessible from Python
2020-03-22 12:01:22 -04:00
miruka
f54075b7e0
Improve default device name
...
The number returned by platform.version() is only meaningful in a
long-time scenario on Windows. Also make the function clearer.
2020-03-21 23:39:57 -04:00
miruka
2dd275c618
Update minimum Pillow requirement to 7.0.0
...
- Includes fix for security issue CVE-2019-16865 before 6.2.0
- Default rescale algorithm is now bilinear, or nearest for palette
images. No need to pass lanczos on our own.
2020-03-21 18:56:47 -04:00
miruka
d0a19852b7
generate_thumbnail: Catch+log any kind of error
2020-03-20 13:51:32 -04:00
miruka
4ab25ada43
AppImage improvements and fixes
...
- No need to build manually the olm python 3 bindings, pip does it
- make clean in mirage dir if possible, since having build/ files from a
compiling that happened from another distro can make the process fail
- Save linuxdeployqt and appimagetools outside of the mirage repo
- Lint the AppDir with the script from pkg2appimage
- From python, restore LD_LIBRARY_PATH, PYTHONHOME and PYTHONUSERBASE to
their original values. The AppRun laucher overwrites them to properly
launch the program, but it affects external programs too launched e.g.
when user clicks a link.
2020-03-18 19:12:38 -04:00
miruka
8692aa4a26
Change some default keybinds to make more sense
...
toggleFocusMainPane: Alt+S → Alt+F
clearRoomFilter: Alt+Shift+S → Alt+Shift+F
addNewAccount: Alt+Shift+N → Alt+Shift+A
addNewChat: Alt+N → Alt+C
sendFile: Alt+F → Alt+S
sendFileFromPathInClipboard: Alt+Shift+F → Alt+Shift+S
2020-03-17 17:11:10 -04:00
miruka
3568abb9af
Rename keybind focusMainPane → toggleFocusMainPane
2020-03-17 16:55:16 -04:00
miruka
53bace3915
Add keybind to toggle room pane focus
2020-03-17 16:52:14 -04:00
miruka
b092cc11eb
Add room header buttons to access sidepanes
2020-03-17 16:52:11 -04:00
miruka
5392016dab
Add setting controlling when panes should collapse
2020-03-17 15:38:54 -04:00
miruka
e4d47b9b9c
Ensure we don't atomically write an empty file
2020-03-17 12:09:08 -04:00
miruka
c969a98f30
Clear the last event date when clearing room msgs
2020-03-16 12:36:39 -04:00
miruka
992719554f
Log the involved user id in sync failures
2020-03-16 00:31:31 -04:00
miruka
cada86a05f
Log server sync errors as warnings instead
2020-03-15 19:08:12 -04:00
miruka
faaa5933d4
Fix local echo
2020-03-15 19:08:12 -04:00
miruka
8a99ccd976
Make retry_decrypt_events() work for good
2020-03-15 19:08:12 -04:00
miruka
adbe2d88ee
Fix dict changing size problem in retry_decrypt_..
...
Also add a copy() method to models, and make them able
to not have a sync_id (in which case they won't send pyotherside
events).
2020-03-15 19:08:12 -04:00
miruka
73d54b5788
Don't show CancelledError when logging out early
2020-03-15 19:08:12 -04:00
miruka
25101578cc
Fix retry_decrypting_events()
2020-03-15 19:08:12 -04:00
miruka
4d2345f4b9
Fix JsonDataFile default file loading
2020-03-15 10:26:53 -04:00
miruka
f507523af6
Fix default theme retrieval mess
2020-03-14 22:20:41 -04:00
miruka
cc3bb3c4fd
Fix utils.py import for Python 3.6
2020-03-14 17:32:05 -04:00
miruka
190eb58187
Write user files and media atomically
2020-03-13 04:36:22 -04:00
miruka
9d3e2dbfc4
Fix quotes in room subtitles
2020-03-13 03:55:04 -04:00
miruka
7e5896f52b
Fix MediaCache asyncio Semaphore early import bug
2020-03-13 02:46:21 -04:00
miruka
ca53e18e24
Add main pane top bar, improve readability
2020-03-12 22:16:33 -04:00
miruka
a6315f7829
Fix default theme path with QRC
2020-03-12 16:46:44 -04:00
miruka
77d877047b
Update docstrings
2020-03-12 14:41:00 -04:00
miruka
9bad0132d6
Make upload cancelling instant without visual hack
2020-03-12 13:28:30 -04:00
miruka
e8d4823227
Unset parent_model when deleting item in model
2020-03-12 13:28:30 -04:00
miruka
59296dd22c
Change name and bump version
2020-03-10 10:41:27 -04:00
miruka
298ab30672
Read theme in app dir if doesn't exist in user dir
2020-03-10 09:51:51 -04:00
miruka
264c2ab16b
Rename themes
2020-03-10 09:48:51 -04:00
miruka
49966e06ad
Fix Transfer.time_left that could be None
2020-03-09 17:36:47 -04:00
miruka
f9f558cd34
Fix Thumbnail.from_bytes()
2020-03-09 17:33:07 -04:00
miruka
24180fc346
GUI-report important errors that occur during sync
...
Important = "isn't a server 5xx error"
2020-03-09 13:08:09 -04:00
miruka
46f3f15694
Fix cached thumbnails extensions
2020-03-09 12:10:04 -04:00
miruka
7ee83c5fe4
Downloaded files: include title + ext in filename
2020-03-09 11:46:08 -04:00
miruka
048c1ddabf
Reject files too large before attempting to upload
2020-03-09 10:23:08 -04:00
miruka
382235875c
Upload thumbnails with the correct extension
2020-03-09 10:10:21 -04:00
miruka
2307d5f1b2
Fix thumbnail uploading for SVG files
2020-03-09 10:03:22 -04:00
miruka
61cc87cf18
Show max file size on upload button tooltip
2020-03-09 09:57:53 -04:00