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
2cbedaa892
HLoader as room delegates test
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
d71dc91a23
Change debug logging color to blue
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
bdb9a650d9
Don't color whole line for logging
2020-05-15 20:56:23 -04:00
miruka
89824326e4
Better QML logging & hide Qt 5.14 warnings
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
74e35bd128
Fix space taken by invisible unread indicator
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
4f374081a7
Add indicator properties to Glass theme
2020-05-15 20:56:23 -04:00
miruka
20ff6fe02a
Fix account delegate buttons spacing
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
c787ff6f41
Dedicated theming for unread indicator
...
Also make default indicator background colors darker to be more readable
2020-05-15 20:56:23 -04:00
miruka
cb1a5865cc
Fix unread indicator "appear" animation
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
3e10a6d530
Don't show popup when focusing unredactable event
2020-04-03 12:58:15 -04:00
miruka
aa4cd5bd2c
Bump version to v0.4.3
2020-04-03 07:56:42 -04:00
miruka
5f38788434
Focus reason field by default in RedactPopup
2020-04-03 07:53:36 -04:00
miruka
1e049a0159
Unselect before unfocusing messages with keybind
2020-04-03 07:53:36 -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
5cb013838b
Be able to redact our other account's events
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
miruka
d991d04a8c
Fix copying event when no selection or focused
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
38cc0b1bc7
Ensure last event to delete is ours
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
379a7232df
Add useless thing to console
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
554f5d6013
Fix need to press Esc twice to exit popups/menus
2020-04-03 07:53:36 -04:00
miruka
e33c202376
panes toggleFocus(): more reliable focus detection
2020-04-03 07:53:36 -04:00
miruka
70f67f01ac
DebugConsole: don't reset target on toggle()
2020-04-03 07:53:36 -04:00
miruka
4602366b9c
debugConsole: add toggle() conveniance function
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
5ad042f44b
Properly force default QML style
...
The "mysterious segfault" was caused by KDE and its components hijacking
the base QtQuick Controls.
Use a more reliable method that changing env variables to force
QML to use the fusion or default style, which has the base controls we
expect.
2020-04-03 07:53:36 -04:00
miruka
ad937573cf
Rewrite HTile and adapt components using it
...
Rewrite HTile in a more standard way, hopefully fixing the
mysterious segfault on some systems
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
790229e188
Make DebugConsole keyboard-scrollable again
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
1038678a2f
Refactor global shortcuts, simplify debug consoles
...
- Move out all shortcuts from their central file to the component they
actually belong to
- Get rid of DebugConsoleLoader and the multiple consoles handling mess,
have only one global console
2020-04-03 07:53:36 -04:00
miruka
6850ef26f5
Show details when login fails with unknown error
2020-03-29 11:48:04 -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
c64179fcbd
Fix "AbstractButton" problem with Qt 5.14
2020-03-27 10:36:50 -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
ff8fd01eb1
Fix copying selected non-message events
2020-03-27 05:38:29 -04:00
miruka
c03bf32a7b
Theme color for eventList highlight
2020-03-27 05:09:49 -04:00
miruka
af6cdc9013
Rename HListView checking-related functions
2020-03-27 05:05:25 -04:00
miruka
3f69710813
Allow copying text from non-message events
2020-03-27 04:58:49 -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
ba86414ddf
Implement shift+click/A-B message selection
2020-03-26 23:24:37 -04:00
miruka
e696c16fc8
Remove old drag-scrolling hack code
2020-03-26 22:22:07 -04:00
miruka
4a780e20f4
Make HMenu modal
...
Prevents accidentally triggering TapHandlers when clicking outside of
the menu to exit it.
2020-03-26 22:00:35 -04:00
miruka
43c018d0a4
Improve "Copy text" text and availability
2020-03-26 22:00:00 -04:00
miruka
18f53829d9
Make composer/eventList ctrl-c work again
2020-03-26 22:00:00 -04:00
miruka
a61f1d5d04
Make selection look better
2020-03-26 22:00:00 -04:00
miruka
2d471b70f5
Single message text selection for mouses
2020-03-26 22:00:00 -04:00
miruka
3852357614
Start implementing new message selection system
2020-03-26 22:00:00 -04:00
miruka
710dba09ec
Remove message text selection hack
2020-03-26 22:00:00 -04:00
miruka
f148837fae
Remove Invite/LeftBanner avatar radius
2020-03-26 21:59:33 -04:00
miruka
ca92abe689
Merge branch 'dev'
2020-03-24 16:02:23 -04:00
Rinigus
d17c6334da
Add pen as an input device to the right click handler
2020-03-24 19:52:48 +02:00
miruka
379a851a62
alertOnMessageForMsec: correctly handle 0 value
...
If 0: don't show any alert
If -1: show alert indefinitly until user focuses the window
2020-03-24 11:31:32 -04:00
Rinigus
5058e3c13e
Fix activation of right-click on touch devices
2020-03-24 16:43:31 +02: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
d34e2ab2b6
Render room id/alias mentions bold by default
2020-03-23 16:53:11 -04:00
miruka
831dca3723
EventContent: avoid some false name detection
2020-03-23 16:50:12 -04:00
miruka
bd53993b90
Ignore mention links with no text
2020-03-23 16:34:51 -04:00
miruka
469992b650
Fix avatar size for one line events like m.emote
2020-03-23 16:10:13 -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
db1cd13977
Glass.qpl: add .mention to styleSheet
2020-03-23 14:32:43 -04:00
miruka
38e57d2ff9
Color user mentions in local echoes too
2020-03-23 14:23:32 -04:00
miruka
b11bd8331b
Fix constant CPU usage due to HButtonContent
...
Unload the animated HBusyIndicator when not needed
2020-03-23 14:04:00 -04:00
miruka
919edb52ad
Fix /me messages having names on their own lines
2020-03-23 13:49:19 -04:00
miruka
4fdf531631
Fix mention-related KeyError in message callback
2020-03-23 13:43:30 -04:00
miruka
3c64b33cb7
Color user mentions
2020-03-23 13:30:40 -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
710668da5d
Disable unread mention counter *for now*
...
There's currently no way to make it go down, read room markers need to
be implemented first.
2020-03-23 00:50:58 -04:00
miruka
0682990666
Fix compact mode msg names on their own lines
2020-03-23 00:48:39 -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
b1144572aa
Fix loop exceptions not printed in terminal
2020-03-22 20:58:24 -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
d29b393ad2
Less vertical spacing between msgs in compact mode
2020-03-22 13:20:16 -04:00
miruka
ce7c986e5b
Compact mode for messages
2020-03-22 13:05:35 -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
5b5fda4477
Update github links
2020-03-21 15:20:57 -04:00
miruka
412d92dc25
Background: remove top left black shadow
2020-03-21 15:07:41 -04:00
miruka
73f14cac8e
Fix room pane header buttons onClicked
2020-03-21 15:02:37 -04:00
miruka
373ce6b925
Make EventContent.contentText not readonly
...
For debugging (really)
2020-03-21 14:56:44 -04:00
miruka
ac85935236
Animate avatar placeholder colors
2020-03-21 14:56:44 -04:00
miruka
e67624020b
Default background: less blur, redone screenshots
2020-03-21 14:56:36 -04:00
miruka
6662628b4e
Really cancel key import when clicking "Cancel"
2020-03-21 12:43:16 -04:00
miruka
cb020ad479
Center account-room list to highlight on startup
2020-03-21 10:21:32 -04:00
miruka
d0a19852b7
generate_thumbnail: Catch+log any kind of error
2020-03-20 13:51:32 -04:00
miruka
ee6ac18671
Show pages headers to go back to pane when needed
2020-03-19 20:33:46 -04:00
miruka
27ee961c52
Remove dead debug TapHandler in AccountRoomsList
2020-03-19 19:14:47 -04:00
miruka
2511a03045
Fix event debug returning wrong event json
2020-03-19 18:49:33 -04:00
miruka
03251f019e
Really fix icon-only buttons alignment
2020-03-19 11:37:05 -04:00
miruka
6ece4624ca
Increase required width to show all events on left
2020-03-19 11:14:28 -04:00
miruka
b6b2e35221
Fix invite to room button alignment
2020-03-19 11:14:28 -04:00
miruka
aaf34a9312
Better example placeholder text for composer alias
2020-03-19 11:14:28 -04:00
miruka
ba955008fc
Improve main pane list reactions to mouse events
2020-03-19 11:14:28 -04:00
miruka
e86c5d7163
Fix "loading past messages" busy indicator width
2020-03-19 11:14:28 -04:00
miruka
60fc2ccffc
Replace console icon by reload config
2020-03-19 11:14:28 -04:00
miruka
e5c3afa219
Remove gray line at the bottom of tabs
2020-03-19 11:14:28 -04:00