miruka
46ff911bfa
Add FindSomeone page
2019-11-09 14:20:53 -04:00
miruka
0aedc1a7d0
Prevent "failed to convert null" qt warning
2019-11-09 13:41:12 -04:00
miruka
b34387ad79
Implement enabling encryption when creating room
2019-11-09 13:38:21 -04:00
miruka
e7283f48f1
Create/JoinRoom: fix clickButtonOnEnter
2019-11-09 11:18:49 -04:00
miruka
35a4030cc0
Hide previous errors when clicking accept buttons
2019-11-09 11:15:24 -04:00
miruka
02888eb63d
Change join/create room button icons
2019-11-09 11:10:25 -04:00
miruka
66fe230044
JoinRoom: enable join button if field is not empty
2019-11-09 10:48:48 -04:00
miruka
fa25c101ff
Fix HRepeater childrenImplicitWidth property
2019-11-09 10:48:05 -04:00
miruka
5d4b699104
CreateRoom: show message if creation fails
2019-11-09 10:39:43 -04:00
miruka
c34676e5a0
Turn JoinRoom field red on error
2019-11-09 10:34:54 -04:00
miruka
e95a23ef90
Handle JoinRoom errors, error clases overhaul
2019-11-09 10:20:16 -04:00
miruka
dbcca17192
Add JoinRoom page
2019-11-09 09:52:16 -04:00
miruka
a9a99e4a65
Add ctrl+tab keybind to go to last page
2019-11-08 16:01:09 -04:00
miruka
b53acb3113
Implement pageLoader history + CreateRoom cancel
2019-11-08 15:56:20 -04:00
miruka
ad34d2d171
Implement room creation functions
2019-11-08 15:32:12 -04:00
miruka
bfbeb83ce5
Size CreateRoom box correctly if window too small
2019-11-08 10:31:07 -04:00
miruka
37e6ced259
Readd nio_callbacks.py
2019-11-08 10:20:48 -04:00
miruka
0ebbbc4a27
HCheckBox: fix bad default subtitle text value
2019-11-08 10:17:23 -04:00
miruka
2f20361f5c
AddChat: make SwipeView non-interactive
...
Prevent accidentally switching tab by pressing left/right arrow (?)
2019-11-08 10:17:23 -04:00
miruka
8742b7803c
Tabs theme, even/odd color, no gaps between tabs
2019-11-08 10:17:23 -04:00
miruka
8c111904a5
AddChat: move create room tab to last position
2019-11-08 10:17:23 -04:00
miruka
11c8af7c19
Show the creator or future room's avatar
2019-11-08 10:17:23 -04:00
miruka
d6fd518334
Add HTabButton component
2019-11-08 10:17:23 -04:00
miruka
7bed1eca30
AddChat page
2019-11-08 10:17:23 -04:00
miruka
45951554a5
Add "+" button to account delegates
2019-11-08 10:17:23 -04:00
miruka
83ff9bf61d
Put all nio callbacks in a new separate class
2019-11-08 10:17:23 -04:00
miruka
693ae1c78e
Put all nio callbacks in a new separate class
2019-11-08 10:13:50 -04:00
miruka
eee2162575
Serialize Path objects to QML
...
- media_cache.get_(thumbnail/media) now return a Path instead of str
- When converted to strings in the serialization, the "file://" prefix
is prepended. This fixes problems when the app is built in release
mode with QRC resources.
2019-11-07 04:02:41 -04:00
miruka
a8f4a00e5e
Remove old broken __main__.py
2019-11-07 03:53:59 -04:00
miruka
acd69108e8
Common func for ModelItem/POSEvent value serializ
2019-11-07 03:43:05 -04:00
miruka
4a6f634f7a
Allow picking multiple files to upload
2019-11-06 17:13:15 -04:00
miruka
6953239bc3
Add shortcut to send file from path in clipboard
2019-11-06 17:03:34 -04:00
miruka
25a86bc484
Add shortcut to send file
2019-11-06 16:45:33 -04:00
miruka
5c6b6ef68a
Have a dedicated SendFilePicker component
2019-11-06 16:45:30 -04:00
miruka
c6bb41573f
Add uploadsBar section to theme
2019-11-06 16:14:48 -04:00
miruka
67cffa854d
EventImage: fix empty bubble in the corner
2019-11-06 16:11:12 -04:00
miruka
3acd3ba66a
Show broken image icon when image fails to load
2019-11-06 16:09:32 -04:00
miruka
8383b6d3e4
Add radial progress bars to images
2019-11-06 15:47:18 -04:00
miruka
96839ea69a
Add forked RadialBar module
2019-11-06 15:30:51 -04:00
miruka
8eca875499
Use new HCircleProgressBar for HBusyIndicator
2019-11-06 14:30:31 -04:00
miruka
f9fd8055f2
Add HCircleProgressBar
2019-11-06 13:49:48 -04:00
miruka
3cbbd6042b
Show upload file size instead of index/upcount
2019-11-06 11:03:08 -04:00
miruka
28dd35fc1b
Indeterminate progress bar styling
2019-11-06 10:08:55 -04:00
miruka
6cdd6de1b3
Show local echo icon on pure media events
2019-11-06 09:48:27 -04:00
miruka
18e184d1f0
Cache local media on upload, fix media local echo
2019-11-06 09:43:05 -04:00
miruka
1de82492dd
media_cache: remove leftover pdb call
2019-11-06 09:03:50 -04:00
miruka
de41e859be
Fix picking same file twice not working
2019-11-06 08:55:47 -04:00
miruka
487446046f
Fix upload avatar overlay shown after picking one
2019-11-06 08:52:23 -04:00
miruka
4b47b0f7ec
Remove useless UploadStatus.Success
2019-11-06 07:52:43 -04:00
miruka
4c15b7dc62
Fix SVG uploads, fix entire Upload model deleted
2019-11-06 07:50:31 -04:00
miruka
ace79a169c
UploadsBar: fix qsTr.arg(arg1, arg2) call
2019-11-06 07:45:28 -04:00
miruka
e45f2c9d2d
Fix thumbnail API error when QML gives float sizes
2019-11-06 06:51:55 -04:00
miruka
93a4015369
EventImage: set prop correctly if no thumbnail
...
Fix cases where a m.image event doesn't have a thumbnail but we tried to
download one anyway, resulting in a DownloadFailed exception.
2019-11-06 06:34:52 -04:00
miruka
92d3390106
Fix CryptDict redefined in media_cache.py
2019-11-06 06:30:17 -04:00
miruka
078cf61b7e
Show an uploads bar in chats when uploading files
2019-11-06 06:28:48 -04:00
miruka
91064fc625
Fix error when using upload button more than once
2019-11-05 18:30:51 -04:00
miruka
8f3df28b9d
ModelItem: serialize enum members to their values
2019-11-05 18:03:48 -04:00
miruka
7408322fbe
Fix/improve image sizes
2019-11-05 09:19:48 -04:00
miruka
82104266fe
Encrypt uploads in a thread
2019-11-04 15:18:01 -04:00
miruka
3c1d926188
Open decrypted file in browser for crypt images
2019-11-04 14:57:56 -04:00
miruka
ea0cda6aa8
HMxcImage: Fix "invalid write to property httpUrl"
2019-11-04 14:55:26 -04:00
miruka
6586403985
Event/RoomDelegate: consider RoomEncrypted- events
2019-11-04 14:45:20 -04:00
miruka
2d682516e8
Support encrypted file reading & caching
...
Also don't convert palette images to JPEG when creating thumbnails.
2019-11-04 14:37:48 -04:00
miruka
bf9ced1acd
Don't cache local GIFs in memory
2019-11-04 10:53:13 -04:00
miruka
de8d0b5823
Fix image events opened/copied url
2019-11-04 10:46:06 -04:00
miruka
ca09effd6e
Download and show full picture for m.image GIFs
2019-11-04 10:29:41 -04:00
miruka
02c6ec4500
Implement Media download
2019-11-04 10:29:18 -04:00
miruka
484eefe86d
Fix image URL preview, add Thumbnail.create()
...
- Make HMxcImage's mxc property work with http too (temporary quick
solution)
- Thumbnail objects can now be initialized with existing bytes and not
have to download anything.
2019-11-04 07:00:28 -04:00
miruka
337603595a
Backend: separate wait_until_(any_?)client_exists()
2019-11-04 06:56:26 -04:00
miruka
e1600389fc
Upload 800x600 thumbnails instead of 512x512
...
Maximum thumbnail size, match Riot's behavior.
2019-11-03 14:08:29 -04:00
miruka
2f19ff493b
Rewrite media caching (old image provider)
...
- Doesn't use pyotherside's image provider feature, for more flexibility
and simplicity
- Suitable for supporting matrix media events and more later
- Avoid a lot of duplicate files that the old cache created due to
server not returning what we expect, mistakes in Python/QML code, etc
- Changed file structure
(e.g. thumbnails/32x32/<mxc id> instead of
thumbnails/<mxc id>.32.32.crop)
- Backend.wait_until_account_exist: start issuing warnings if the
function runs for more than 10s, which means in most case a bad user
ID was passed
- New HMxcImage QML component, used in H(User/Room)Avatar
2019-11-03 13:48:12 -04:00
miruka
55d4035f60
DebugConsole: show "t = ..." instead of "target ="
2019-11-03 13:47:33 -04:00
miruka
b9fbd36661
Restart sync if exception occurs
2019-10-30 11:15:35 -04:00
miruka
ce2a7f1018
Support encrypting uploads
...
For files and thumbnails.
Also fix the PIL thumbnail() bad argument function call.
2019-10-30 10:34:20 -04:00
miruka
b6609c5435
DebugConsole: remove debug print
2019-10-30 09:26:02 -04:00
miruka
ba527abedc
Add bubbles on top of EventImage to show name-date
2019-10-30 09:25:49 -04:00
miruka
2e4a7904d5
Play m.image events GIFs, rename some properties
2019-10-30 06:47:59 -04:00
miruka
b11c9d5675
Use lanczos filter and optimize saved thumbnail
2019-10-30 05:47:22 -04:00
miruka
adeec71fac
Log warning when thumbnailing fails
2019-10-30 05:36:54 -04:00
miruka
48bcc91582
Never upscale images when thumbnailing
2019-10-30 05:34:32 -04:00
miruka
412a86762e
Generate thumbnail when uploading images
2019-10-29 16:42:56 -04:00
miruka
7a5a1fc650
Print python exception tracebacks
2019-10-29 13:34:55 -04:00
miruka
001d6eff71
Initial upload implementation
2019-10-28 15:27:36 -04:00
miruka
820cc68373
Rename MatrixClient.send_markdown() to send_text
...
Because it deals with text command parsing too
2019-10-28 13:51:46 -04:00
miruka
662b60d7a8
Separate _function for local echoing
2019-10-28 13:49:55 -04:00
miruka
09a50f8bc7
Separate _function for general message sending
2019-10-28 13:34:59 -04:00
miruka
6eb3a378bc
Proper upload exceptions, handle in QML set avatar
2019-10-28 08:06:22 -04:00
miruka
5894481dc5
Python exceptions can now be handled via QML
...
callCoro/callBackendCoro can now take onSuccess(result) and
onError(type, args, errorObject) callbacks.
2019-10-28 06:26:02 -04:00
miruka
fe4eff62c5
Add basic loading indicator to images
2019-10-27 16:35:58 -04:00
miruka
a67d611958
Composer: add an upload button + file dialog
...
Upload not working yet
2019-10-27 15:12:57 -04:00
miruka
8c41142b43
HFileDialogOpener: provide better default title
2019-10-27 15:07:58 -04:00
miruka
eb582424b9
Ensure typing bar is invisible when reduced
2019-10-27 14:51:46 -04:00
miruka
040bfe37f8
Improve/fix EventImage size handling
2019-10-27 13:32:22 -04:00
miruka
bf4517b146
Disable non-image media support for now
2019-10-27 12:10:44 -04:00
miruka
07e6d74b91
Fix HTML escaping for markdown parsing
...
Use mistune's escape option instead of `html.escape()` which messes up
links.
2019-10-27 12:06:19 -04:00
miruka
3bc185f4e6
Change X11 selection only if any text selected
2019-10-25 09:02:21 -04:00
miruka
30ebb7c88e
Support X11 selection mechanism for messages
2019-10-25 08:49:19 -04:00
miruka
6aac5a9edb
Replace QML clipboard hack by proper new Clipboard
2019-10-25 08:42:04 -04:00
miruka
30823a9bf5
Add C++ Clipboard class accessible from QML
2019-10-25 08:36:24 -04:00
miruka
7090ff601f
Don't have local echoes stay fixed at the bottom
2019-10-24 10:28:07 -04:00
miruka
986e39cdc2
Fix quotes rendering in inline filtered html
...
Before:
a
>x
b
>z
This message would have been shown all gray in the client due to it not
beginning with a >. Now, the colors are properly shown for both quotes
and the non-quote text in between.
2019-10-24 09:43:40 -04:00
miruka
39b4706c75
Have return symbols in inline filtered html
...
Before: "foo\nbar" was rendered as "foobar"
Now: "foo\nbar" is rendered as "foo ⏎ bar" (U+23CE unicode).
2019-10-24 09:08:10 -04:00
miruka
756edc90dd
JS: use slice() instead of splice()
...
slice() does the same as splice() without the unintended effect of
transforming the array.
2019-10-24 08:09:33 -04:00
miruka
5522de5165
html_filter: don't remove \n in <pre> content
2019-10-24 08:06:50 -04:00
miruka
c4b05befa4
html_filter: html escape markdown before filtering
...
Fixes the problem where a user sends e.g. "hi <test>" and the "<test>" is
removed because it's seen as a bad html tag.
2019-10-24 07:27:13 -04:00
miruka
652cd059c4
Prevent makeObject callback from running twice
2019-10-22 03:40:09 -04:00
miruka
8416eb33e3
main.cpp: remove useless includes
2019-09-26 17:46:55 -04:00
miruka
579ec94094
Don't vertically center message avatars
2019-09-19 19:36:09 -04:00
miruka
9de34d4d3f
Fix own medias in events positions
2019-09-19 19:28:28 -04:00
miruka
a3d2fc9b98
Fix debug console history when editing entry text
2019-09-19 18:43:25 -04:00
miruka
d9addff8ef
Put message debug thing in EventContent
2019-09-19 18:39:45 -04:00
miruka
c1a27328d9
Add up/down history browsing to DebugConsole
2019-09-19 18:29:10 -04:00
miruka
7b482de727
DebugConsole must now be created from components
...
Remove the default console from UI.qml and add a utils.js function
to create one quickly.
Using this function from the component we actually want to debug gives
the console full access to that component's scope, children IDs, etc.
2019-09-19 16:47:35 -04:00
miruka
d20ab5a348
Refactor EventContent
...
Use proper layouts and get rid of multiple annoyances/bugs like
text-wrapping randomly happening in the middle of words, background
rectangles being too large, a certain binding loop, etc
2019-09-19 15:49:29 -04:00
miruka
4c4d747ecf
Add AudioPlayer & EventAudio
2019-09-17 23:23:47 -04:00
miruka
f19d337817
Move hover preview height from settings to theme
2019-09-17 16:39:45 -04:00
miruka
692749e72f
Support video events, new media player
2019-09-17 16:30:04 -04:00
miruka
76ffdfd28a
Fix HTile left/right click handling
2019-09-14 18:52:43 -04:00
miruka
c6395ff940
EventDelegate context menu, EventFile click
...
Improve/extend choosing the cursor shape, how context menu handles the
current hovered thing, and open link on EventFile click
2019-09-14 18:33:32 -04:00
miruka
a80f294610
Add EventFile (unfunctional for now)
2019-09-14 17:49:25 -04:00
miruka
38e781c9f7
Fix HButton/HTile focus and click
2019-09-14 17:39:17 -04:00
miruka
784cb3b19c
Split HTileDelegate into HTile and HTileDelegate
2019-09-14 16:05:57 -04:00
miruka
fe087ba724
Expose new CppUtils class with formattedBytes()
2019-09-14 15:42:24 -04:00
miruka
69aea0e37f
EventImage: open/copy original image on clicks
2019-09-14 01:06:53 -04:00
miruka
45b6714bcb
Hide EventContent contentLabel if no text
2019-09-14 00:56:38 -04:00
miruka
451038641e
Display RoomMessageImage events
2019-09-14 00:46:54 -04:00
miruka
0db34cc3c8
Add EventMediaLoader
...
Handles loading of URL previews and will handle all
matrix media messages types.
2019-09-14 00:36:19 -04:00
miruka
8ad13b033d
Event: optional (inline_)content, auto-gen inline
2019-09-13 23:02:11 -04:00
miruka
a5095274ba
MatrixClient: RoomMessageMedia support
2019-09-13 22:48:33 -04:00
miruka
a2ab7b3090
Add event callback for RoomUnknownMessage
2019-09-13 19:58:45 -04:00
miruka
d3a02deb46
Update version to 0.2.3
2019-09-12 20:59:12 -04:00
miruka
8334f88418
Reduce mouse wheel speed in eventList
2019-09-12 20:54:25 -04:00
miruka
f6b2c59fdc
Remove quadruple click message selection
...
A tripple click is too easily detected as a quadruple when the user
actually did a triple.
2019-09-12 20:17:43 -04:00
miruka
7f29716a61
Fix message times being on a separate line
2019-09-12 20:14:02 -04:00
miruka
ebf6d36c01
Transparent black for hovered avatar background
...
Also add theme property to change it.
2019-09-12 20:04:46 -04:00
miruka
fcdd960779
Fix avatar tooltips
2019-09-12 19:54:31 -04:00
miruka
7313d6cf1d
Remove debug print in HImage
2019-09-12 17:39:28 -04:00
miruka
0b60b2b5bc
Add autoplay GIF setting
2019-09-12 17:32:48 -04:00
miruka
1f58cfeae8
Add GIF pause overlay
2019-09-12 17:27:26 -04:00
miruka
5192fe8b55
Click to play/pause animated image
2019-09-12 16:25:05 -04:00
miruka
125d1e24aa
Support GIFs
2019-09-12 16:16:35 -04:00
miruka
f8811f4e0c
Disable underscore emphasis syntaxes for markdown
2019-09-11 17:25:50 -04:00
miruka
5676a369b2
MemberDelegate: fix missing right padding
2019-09-11 16:49:40 -04:00
miruka
2e3d21aa31
HToolTip: fix binding loop
2019-09-11 16:47:13 -04:00
miruka
0e6b6c830d
Support inline HTML/links for room topic
2019-09-11 16:01:37 -04:00
miruka
e53f6ed292
Fix selection disappearing after delegates unload
...
Make delegates update their selection when they're loaded again.
2019-09-11 15:49:00 -04:00
miruka
d998b471f0
Fix text selection start drag delay
2019-09-11 15:25:57 -04:00
miruka
51e544ddf1
Fix triple click not selecting last message char
2019-09-11 01:55:07 -04:00
miruka
72bcb9bbe3
Update version to v0.2.2
2019-09-10 22:07:41 -04:00
miruka
60663ed040
Leave non-image links out from Event.previe_links
...
normal links preview isn't implemented yet, which caused any message
with a link to take at least 256px due to the preview repeater.
2019-09-10 22:07:06 -04:00
miruka
7211dd8fda
Fix account settings name field getting reset
2019-09-10 21:58:28 -04:00
miruka
7797b0e1eb
HtmlFilter: Remove excess newlines
...
To avoid additional blank lines with HTML/CSS using `white-space: pre`
2019-09-10 21:22:42 -04:00
miruka
b3135601ed
Stop supporting starting without pyotherside
2019-09-10 20:49:01 -04:00
miruka
d6b8fae30a
matrix_client: leave room before forgetting it
2019-09-10 01:34:01 -04:00
miruka
988ab94772
Fix ForgetRoomPopup destruction/callback
2019-09-09 20:56:10 -04:00
miruka
3e01eeef71
LeftBanner: use ForgotRoomPopup
2019-09-09 20:24:29 -04:00
miruka
b7b309ad4c
SignIn: increase box width again
...
To avoid the Login button loading icon from making the button grid
switch to column mode.
2019-09-09 14:50:45 -04:00
miruka
82f0c273e7
LogoutPopup: implement export keys button callback
2019-09-09 14:49:54 -04:00
miruka
7c0bed79a9
ImportKeys/ExportKeys separate dialog componants
2019-09-09 14:42:58 -04:00
miruka
15add6d91c
Confirm account logout and propose exporting keys
...
Key export button callback not implemented yet.
2019-09-09 12:58:13 -04:00
miruka
85bdbcf5be
Move HBox stuff from HPopup to BoxPopup
2019-09-09 12:50:00 -04:00
miruka
38781502c6
HBox: make buttons a column if not enough width
2019-09-09 12:37:01 -04:00
miruka
a3b56519f7
ForgetRoomPopup: improve texts
2019-09-09 12:35:19 -04:00
miruka
2f7fbd2621
Profile: fix eliding, increase wide width needed
2019-09-09 11:35:46 -04:00
miruka
81f54641ba
SignIn: increase box width to avoid eliding
2019-09-09 11:24:42 -04:00
miruka
035ab1add6
HMenu: Fix width calculation (padding)
2019-09-09 11:21:49 -04:00
miruka
d7fc0ad0b8
HButtonContent: Enable label eliding
2019-09-09 11:20:59 -04:00
miruka
4ffa3470c7
Confirm forgetting room with popup
2019-09-09 09:24:45 -04:00
miruka
88042cd111
Confirm leaving room with popup
2019-09-09 09:12:51 -04:00
miruka
c38cc9d3df
Move popups to their own folder
2019-09-09 08:57:38 -04:00
miruka
6b26aa6d0b
load_past_events: Catch RoomMessagesError
2019-09-09 08:26:09 -04:00
miruka
3ef32b4c04
Use verb when possible instead of "OK" for buttons
2019-09-09 08:20:24 -04:00
miruka
9f8ac6ca9f
Auto-focus OK only for ClearMessagesPopup
2019-09-09 08:16:05 -04:00
miruka
7f995c749f
HPasswordPopup: enable OK if password not empty
2019-09-09 07:49:07 -04:00
miruka
e5893c5569
HBox: Add arrow keys navigation
...
Also rename enterButtonTarget to clickButtonOnEnter
2019-09-09 07:41:48 -04:00
miruka
7f89604789
button/checkbox: highlight on activeFocus
...
Not just tab-induced focus.
2019-09-09 07:19:06 -04:00
miruka
af17151c11
Fix shortcut focus issue?
2019-09-09 06:47:36 -04:00
miruka
6f7695ad22
HBoxPopup: split text into summary and details
2019-09-09 06:32:29 -04:00
miruka
9286f54cd5
Rename HOkCancelPopup to HBoxPopup
2019-09-09 06:25:08 -04:00
miruka
2611e86517
Confirmation popup to clear messages
2019-09-09 06:23:46 -04:00
miruka
f40e853078
Word-wrap name label for messages
2019-09-08 21:56:15 -04:00
miruka
d547df62fb
Fix HPasswordPopup valid/wrong icon color
2019-09-08 12:19:40 -04:00
miruka
aae26672de
Split HPasswordPopup into HPopup, HOkCancelPopup
2019-09-08 12:17:42 -04:00
miruka
aefb314999
Fix exporting key to a path that doesn't exist yet
2019-09-08 12:17:08 -04:00
miruka
df753b5262
Say "change profile picture" if avatar already set
2019-09-08 11:53:01 -04:00
miruka
e93c251624
Add clear messages shortcut
2019-09-08 11:51:03 -04:00
miruka
db0de237e6
Add message context menu entry to clear events
2019-09-08 11:40:39 -04:00
miruka
405573bb2d
Fix room subtitle quotes: second+ quote not green
2019-09-08 10:48:58 -04:00
miruka
916f6d8327
Update version to v0.2.1
2019-09-07 23:14:31 -04:00
miruka
a87f98fae0
Add key exporting to account settings
2019-09-07 19:17:32 -04:00
miruka
11486ab51d
Add homeserver URL field to login screen
2019-09-07 17:24:58 -04:00
miruka
8113ba468d
HTextField: remove ugly _tf property
2019-09-07 17:02:09 -04:00
miruka
31e1daa046
Set placeholder text color for text field and area
2019-09-07 17:00:12 -04:00
miruka
c5bd5a1eb1
Add transparency to typing members bar
2019-09-07 16:55:07 -04:00
miruka
134543728e
Add escape to exit and clear room filter field
2019-09-07 16:48:23 -04:00
miruka
a15fba92cb
Add clearRoomFilterOnEnter setting, default true
2019-09-07 16:39:14 -04:00
miruka
a731013a8c
Fix Utils.minutesBetween()
...
minutesBetween(
new Date(2019, 01, 01, 13, 20, 00), new Date(2019, 01, 01, 14, 20, 00)
)
returned 0 instead of 60, the fixed function property return numbers of
minutes after 60.
2019-09-07 16:33:16 -04:00
miruka
a6b154c207
Composer scrollbar: invisible unless really needed
2019-09-07 15:48:13 -04:00
miruka
66129a9eb2
Remove seconds from message dates
...
Makes them easier to read
2019-09-07 15:16:03 -04:00
miruka
78119d1ef0
Wrap text in <pre>
2019-09-07 14:34:14 -04:00
miruka
cde0c15a68
Add full name/topic tooltip to room header
2019-09-07 14:14:04 -04:00
miruka
66871aefe6
Set a (max) content width for HToolTip
2019-09-07 14:00:01 -04:00
miruka
fd543f3204
Re-fix quote parsing
2019-09-07 02:22:42 -04:00
miruka
9f8bdfc6fb
Fix html quote regex
...
Also allow quoting in title, e.g. "# > blah blah blah"
2019-09-07 01:44:51 -04:00
miruka
07fb63aa1e
rstrip excess \n from html filter output
...
Caused the event time to be incorrectly shown on its own on a new line
for messages that were ~600px
2019-09-07 00:19:36 -04:00
miruka
393d404242
Fix name alignment for own messages on left
2019-09-06 23:36:37 -04:00
miruka
6e40f29ebe
Consider preview thumbnails to calculate msg width
...
Also move thumbnails width setting from settings.json to the theme
2019-09-06 23:36:37 -04:00
miruka
ea9caa69f6
Change cursor shape when image hovered
2019-09-06 23:36:37 -04:00
miruka
be481b778a
Fix message width making time on its separate line
2019-09-06 23:36:37 -04:00
miruka
7c42066d75
Eventdelegate: Merge menu print and debug console
...
Also fix avatar-message spacing
2019-09-06 23:36:14 -04:00
miruka
5674d0c7b7
Use a component to display image link previews
2019-09-06 23:34:40 -04:00
miruka
3c4ca7d433
Fix past loading not triggering in some cases
2019-09-06 17:05:49 -04:00
miruka
0651fbd100
Make page scrolling less slippery
2019-09-06 17:03:52 -04:00
miruka
14e01159c6
Increase max flick velocity for HListView
2019-09-06 16:51:26 -04:00
miruka
c35492ca62
Restore HListView scrollbar
2019-09-06 16:46:04 -04:00
miruka
164f09c939
Add theme property to control hovered avatar size
2019-09-06 16:14:39 -04:00
miruka
812fc3aff7
Background color for HMenu instead of transparent
2019-09-06 16:11:25 -04:00
miruka
e1f24657f1
Fix mouse wheel not working on eventList
2019-09-06 16:08:16 -04:00
miruka
d353056db9
Fix scroll to top/bottom
2019-09-06 15:20:22 -04:00
miruka
f6a24ec020
Remove overshoot check for smartVerticalFlick()
...
Keyboard flicking feels better witohut rather than just abruptly
stopping or not doing anything if the user is already at the top/bottom
of the flickable.
2019-09-06 15:07:19 -04:00
miruka
ddce551360
Add option to target message for debug console
2019-09-06 15:07:19 -04:00
miruka
01f8bc3d6c
Add context menu to copy message link URLs
2019-09-06 15:07:19 -04:00
miruka
bf2004ed84
Don't deselect area text from label container
2019-09-06 15:07:19 -04:00
miruka
85aaf7bcce
Don't copy combined invisible names
2019-09-06 15:07:19 -04:00
miruka
9936a7e2ee
Fix ctrl-c behavior
2019-09-06 15:07:19 -04:00
miruka
922eac4ea9
Pseudo-clipboard safety modifications
2019-09-06 15:07:19 -04:00
miruka
5ce71834f9
Fix clicking a link breaking scroll shortcuts
2019-09-06 15:07:19 -04:00
miruka
b867584784
Make qrc path aliases the same as filesystem ones
2019-09-06 15:07:19 -04:00
miruka
ddd1587b7d
Update version to v0.2.0
2019-09-06 15:07:19 -04:00
miruka
e6a133598f
Prevent non-left buttons from drag-scrolling
2019-09-06 15:06:35 -04:00
miruka
24a976e3ee
Fix clicking on eventList top/bot making it scroll
2019-09-06 15:06:35 -04:00
miruka
6a346264be
Improve multiple clicks message selection
...
- Triple click selects the message body without date or name
- Quadruple click (yes) selects the entire message with name and date
- Quadruple click on the name label does the same
2019-09-06 15:06:35 -04:00
miruka
32fde57ba7
Make message display names selectable
2019-09-06 15:06:35 -04:00
miruka
b610a404af
Clear selection if event list loses focus
2019-09-06 15:06:35 -04:00
miruka
522d078d7b
Accept ctrl-c to copy selected messages
2019-09-06 15:06:35 -04:00
miruka
131a20e9c5
Add context menu to copy selected messages
2019-09-06 15:06:35 -04:00
miruka
016f76167f
Initial implementation of message selection
2019-09-06 15:06:35 -04:00
miruka
aaaff814a1
Update version to v0.1.3
2019-09-06 15:04:19 -04:00
miruka
87ff343cc3
Reduce quotes brightness in room subtitles
2019-09-06 14:12:32 -04:00
miruka
fd0cd35152
Enable logging of nio errors
2019-09-06 14:05:47 -04:00
miruka
f5cbbd0a44
Reduce needed width to show room times
...
Also remove excess spacing between the title and time
2019-09-06 14:04:18 -04:00
miruka
5eaa877554
Avoid import harmless error messages at the end
2019-09-05 17:51:38 -04:00
miruka
dc209bc5d4
Press esc to hide debug console
2019-09-05 16:28:06 -04:00
miruka
58d491a2b3
Add basic JS/QML debug console
2019-09-05 15:43:00 -04:00
miruka
eab6d1c2ee
Fix linkify regex to allow # characters
2019-09-04 05:10:53 -04:00
miruka
970b0c82d3
Disable long press to open context menu
...
Interferes with drag-scrolling for HTileDelegate
2019-09-02 19:35:18 -04:00
miruka
6b18ac6d26
Fix members list overlapping with filter field
2019-09-02 13:24:25 -04:00
miruka
175caba2e9
Ignore member events where prev_content == content
2019-09-02 13:21:46 -04:00
miruka
d5dbb1368f
Fix RoomHeader icon paddings
2019-09-01 20:33:05 -04:00
miruka
a0509465e6
live-reload: allow specifying a component to load
2019-08-31 21:52:45 -04:00
miruka
11dbd1e457
Force model sync when receiving remote echo
...
Forcing model sync on local and remote echo make our own messages
appearing and the loading icon disappearing both feel faster.
2019-08-31 16:18:27 -04:00
miruka
69ed35d4dd
Trigger model sync ASAP when creating local echoes
2019-08-31 16:14:14 -04:00
miruka
28d8721fe2
Fix HShortcutHandler not processing shortcuts
2019-08-31 15:34:05 -04:00
miruka
0bbc61fd64
Remove pdb call
2019-08-30 20:40:09 -04:00
miruka
9aff5450db
Reduce icons brightness
2019-08-30 20:30:39 -04:00
miruka
ca2ecc75bb
Make uvloop dependency optional
2019-08-30 20:24:13 -04:00
miruka
cc4a33bb04
Write to disk merged base + user config files
2019-08-30 19:43:58 -04:00
miruka
92f6274458
Use QtGraphicalEffects.LinearGradient
...
Instead of using a Rectangle and its gradient prop, since there's no
need for the rotation/scale hack and it gives better quality.
2019-08-30 19:21:51 -04:00
miruka
f25a0d7c87
mainUI: be an Item instead of Rectangle
2019-08-30 19:09:21 -04:00
miruka
e506a70767
Fix random shortcuts getting triggered
...
Caused the "window bounces when typing text" bug
2019-08-30 19:06:42 -04:00
miruka
6953250e50
Adjust padding for Buttons, TextFields, TextAreas
2019-08-30 18:10:25 -04:00
miruka
a6aec2d5bf
Fix HButton size on KDE
2019-08-30 17:37:13 -04:00
miruka
a40b274c7d
Explicitely unset font.pointSize
...
Avoid warnings on desktop environments
2019-08-30 17:04:42 -04:00
miruka
546761f591
Fix sidePane toolBar id/property name
2019-08-30 13:48:24 -04:00
miruka
70b82b7b59
Add scroll to top/bottom keybinds
2019-08-30 13:40:56 -04:00
miruka
6a540f6397
Add keybinds to scroll page up/down
2019-08-30 13:06:54 -04:00
miruka
927323909d
Rename "greentext" to "quote"
2019-08-30 12:29:01 -04:00
miruka
b651be3c30
Support greentext in RoomDelegate subtitle
2019-08-30 12:07:50 -04:00
miruka
720eb78fe8
Fix displaying local echo html formatting
2019-08-30 11:53:55 -04:00
miruka
aec83c66f3
Fix apply button loading on profile change
2019-08-30 11:42:01 -04:00
miruka
8a2053fcaf
Fix collapsing account with keyboard
...
When collapsing the account and the current page/focus is a room of this
account, switch focus to the account.
2019-08-30 11:24:47 -04:00
miruka
8276e800be
Rename SidePane components
2019-08-30 11:05:11 -04:00
miruka
244fc12465
Fix using up/down arrows when focusing sidepane
...
Pause the HTileDelegates setCurrentTimer when the SidePane has focus.
2019-08-30 10:56:38 -04:00
miruka
4587599cf5
Fix sending typing state when no configured alias
2019-08-30 10:49:41 -04:00
miruka
498bee2e20
Improve image path matching regex for html_filter
2019-08-30 10:37:13 -04:00
miruka
06d75a18fc
Remove useless print
2019-08-30 10:33:58 -04:00
miruka
f0612c2a51
Fix daybreak not showing before RoomCreateEvent
2019-08-30 10:33:17 -04:00
miruka
10a53d7afb
Fix room past events loading in some cases
2019-08-30 10:28:53 -04:00
miruka
a987cf48e6
Don't add profile events to the timeline (for now)
2019-08-30 10:09:09 -04:00
miruka
19cbfc9cfe
Fix html_filter.py for html_sanitizer 1.7.3
2019-08-30 00:07:41 -04:00
miruka
3a6ecce4f7
Improve background gradient
2019-08-29 21:06:24 -04:00
miruka
552a4b53fb
Use the now fixed nio.MatrixRoom.display_name
...
The property behaves according to the Matrix standard starting from nio
0.5, no need to generate the room display name ourself anymore.
2019-08-29 16:47:07 -04:00
miruka
665211a8d3
Increase inputs color saturation
2019-08-28 19:47:28 -04:00
miruka
73af3bd2c5
Reduce button hover/highlight overlay opacity
2019-08-28 19:44:52 -04:00
miruka
1eaec701dc
Fix banners position
2019-08-28 19:39:22 -04:00
miruka
ff9f8127d7
UI gradient background, adjust some colors
2019-08-28 19:34:50 -04:00
miruka
1806ac6ac0
Color "upload profile picture" icon
...
Also fix hover zone to span the entire avatar rectangle
2019-08-28 18:47:04 -04:00
miruka
e1da7be253
Gray out disabled button icons
2019-08-28 18:32:16 -04:00
miruka
6cda69ad67
Restore icon colors
2019-08-28 18:21:13 -04:00
miruka
4bee87ed5d
Add positive/negativeBackground to theme
2019-08-28 16:41:58 -04:00
miruka
37e762d241
Remove hard-coded colors and cleanup SVG icons
...
Also remove old filled icons pack, and rename the "light-thin" pack to just
"thin".
2019-08-28 16:30:48 -04:00
miruka
18120f5216
Add HProgressBar component
2019-08-28 14:28:20 -04:00
miruka
21b44bcf66
Add animated icon to ImportingKeys box
2019-08-28 13:50:29 -04:00
miruka
4ff3ebe255
Fix room subtitle for local echoes
2019-08-28 13:29:49 -04:00
miruka
f8a392883b
Retry decrypting megolm events after a key import
2019-08-28 13:23:12 -04:00
miruka
b9f593fb27
Fix opening import key file picker and button
2019-08-28 13:16:06 -04:00
miruka
3a5d8bff9e
Remove HInteractiveRectangle and HRateLimiter
2019-08-28 12:02:53 -04:00
miruka
b1e1ea30d2
Rename HInterfaceBox component to HBox
2019-08-28 11:56:05 -04:00
miruka
7c3ed5ca14
Use HInterfaceBox for ImportExportKeys
2019-08-28 11:54:25 -04:00
miruka
ce3404a516
Show import keys error in the UI
2019-08-28 11:42:52 -04:00
miruka
7d2cbae26f
Show key import progression
2019-08-28 03:54:53 -04:00
miruka
f65c0176ba
Better error handling and fixes for key import
2019-08-27 23:51:38 -04:00
miruka
399a35dacb
Rename SendBox to Composer
2019-08-27 23:03:52 -04:00
miruka
97b1608bcb
Ensure opacity/rotation of button icon is reset
...
After loading finished
2019-08-27 22:59:26 -04:00
miruka
560981a97e
Remove uneeded HRectangle component
2019-08-27 22:46:31 -04:00
miruka
77dbc3a502
Fix accent and input colors
2019-08-27 22:44:41 -04:00
miruka
9b83b91d9d
Remove unused HScalingBox component
2019-08-27 22:44:20 -04:00
miruka
ebfebbeae1
Improve import keys password popup
2019-08-27 22:43:57 -04:00
miruka
05b248e31a
Make config file reloading work again
2019-08-27 20:06:58 -04:00
miruka
eb11e7a13a
Disable invite and room sidepane expand icon
...
Their functions are not implemented yet.
2019-08-27 19:51:25 -04:00
miruka
0a0e11e1f4
Rework the LoadingScreen and HBusyIndicator
2019-08-27 19:47:58 -04:00
miruka
410a42bc59
Show EditAccount page loading until profile ready
2019-08-27 15:07:08 -04:00
miruka
6cb7589cca
Loading icon for accounts until synced
2019-08-27 15:00:50 -04:00
miruka
b457f46247
Close HTTP session when logging in fails
...
Avoids "Unclosed client session" error messages in the terminal
2019-08-27 14:23:09 -04:00
miruka
0c0ede8b40
Disable buttons when they're loading
2019-08-27 14:21:10 -04:00
miruka
bf3847dd66
Animate button loading
2019-08-27 14:11:33 -04:00
miruka
f5e52aed4e
Fix qrc resources not working
2019-08-25 15:39:00 -04:00
miruka
8ebd7189cc
Disable SidePane shortcuts when no account present
2019-08-23 11:06:19 -04:00
miruka
7eda87217c
Add keybind to add new account
2019-08-23 11:03:18 -04:00
miruka
9077ea3925
Fix timer setting current AccountsRoomList index
2019-08-23 10:53:54 -04:00
miruka
2ff65af6ab
Prevent alt+letter from writting text in fields
2019-08-22 14:31:13 -04:00
miruka
a47351a5ad
Adapt auto-repeat shortcuts to new system
2019-08-22 14:16:49 -04:00
miruka
8de26c11a1
HShortcutHandler & HShortcut components
...
Provide more powerful shortcuts handling than what's available with
QML's Shortcut component, notably being able to react differently to key
presses, releases and auto-repeats.
2019-08-22 13:03:26 -04:00
miruka
3749d1e135
Allow pressing escape to cancel in edit profile
2019-08-22 10:22:21 -04:00
miruka
cc7fbc5ab7
Fix invite icon size when room side pane collapsed
2019-08-22 10:03:43 -04:00
miruka
627a186700
Add tooltips to buttons and room invite button
2019-08-22 09:27:41 -04:00
miruka
3082c64666
Show user ID as member tile subtitle
...
Also move member styling in theme to the right place
2019-08-22 05:42:48 -04:00
miruka
6b64800ed7
Fix highlight not set when logging in new account
2019-08-21 17:55:27 -04:00
miruka
b8d43ecfec
Add account logout feature via context menu
2019-08-21 17:45:05 -04:00
miruka
7331c1fa1c
MenuItem: don't take space when not visible
2019-08-21 16:41:52 -04:00
miruka
26b01be23c
Add accept invite to room context menu
2019-08-21 16:38:34 -04:00
miruka
076ff743ad
Add forget to room context menu
...
Also show Leave only if not already left, and rename forget-room.svg to
room-forget.svg
2019-08-21 16:29:44 -04:00
miruka
437324bd64
Improve HMenu/HMenuItem style
2019-08-21 16:23:22 -04:00
miruka
ed96409645
Split HButton components, add HMenu/HMenuItem
2019-08-21 15:45:13 -04:00
miruka
6067c8ec96
Add room context menu with Leave/Decline invite
2019-08-21 14:58:57 -04:00
miruka
fea2178461
Make linkify regex work with port in URL
2019-08-21 14:22:34 -04:00
miruka
d2938f8730
Don't linkify image links for outgoing html
2019-08-21 14:14:44 -04:00
miruka
206f5494c8
Use hsluv for display names & remove hsl funcs
2019-08-21 12:43:07 -04:00
miruka
9332eadbbf
Use hsluv instead of hsla for avatar colors
2019-08-21 12:35:55 -04:00
miruka
7624ce5fcb
hsluv/hsl(a) functions: wrap around hue
2019-08-21 12:32:14 -04:00
miruka
1886303481
Fix member filtering
2019-08-21 12:17:12 -04:00
miruka
8ef3a6dc33
Fix expand icon size and startup highlight
...
Remove "hide hover highlight when keyboard pressed" feature, too hacky.
2019-08-21 06:02:00 -04:00
miruka
1f5b46c257
Merge HListView and HFixedListView components
2019-08-21 05:02:37 -04:00
miruka
6e3924ca4e
Add ListView highlight color to theme
2019-08-21 04:58:53 -04:00
miruka
bd94cc3625
Fix button icon position
2019-08-21 04:52:34 -04:00
miruka
713aaf3635
Set padding for HCheckBox
2019-08-21 04:46:40 -04:00
miruka
bdf7a63e6f
Increase sign in login method icons size
2019-08-21 04:43:37 -04:00
miruka
46e685847f
Replace HInteractiveRectangle by HTiledelegate
2019-08-21 04:39:07 -04:00
miruka
4abf57c8d4
Make HCheckBox themable
2019-08-20 18:31:20 -04:00
miruka
e012cf6e31
Highlight HButton when tab-focused
2019-08-20 17:43:59 -04:00
miruka
ce128d5ab5
Refactor HButton
2019-08-20 17:41:24 -04:00
miruka
7e7852b51e
Hide hover highlight when moving with keybinds
2019-08-20 14:39:37 -04:00
miruka
073a2eacee
Add arrow navigation to sidepane when focused
2019-08-20 13:55:20 -04:00
miruka
203eb3b299
Make focus sidepane keybind swipe if reduced
2019-08-20 13:27:13 -04:00
miruka
e127b96158
Fix collapsed sidepane spacing for the nth time
2019-08-20 13:12:40 -04:00
miruka
c865de6dc7
Fix wrong collapse keybind: Alt+Shift+(R → L)
2019-08-20 13:01:22 -04:00
miruka
57b13131a0
Fix ListView transition bugs?
2019-08-19 20:50:14 -04:00
miruka
16ac335d43
Fix last account always being hidden
2019-08-19 18:49:56 -04:00
miruka
5c75de68ea
Don't run ToggleCollapseAccount() if filter active
2019-08-19 18:40:23 -04:00
miruka
d427465425
Don't animate highlight rectangle sliding on click
2019-08-19 18:32:43 -04:00
miruka
de4d984ded
Use smart case for filters
2019-08-19 18:25:00 -04:00
miruka
aba01d54e8
Rate-limit next/previous room activation
2019-08-19 18:17:59 -04:00
miruka
109082c8d8
Use a Loader instead of StackView for pageStack
2019-08-19 15:38:45 -04:00
miruka
99bbe7f3ee
Keep the highlighted ListView item centered
2019-08-19 14:46:40 -04:00
miruka
c841a7a841
Add keybind to toggle collapsing account
2019-08-19 14:28:12 -04:00
miruka
e713eb7e24
Hide harmless error when no matches for filter
2019-08-19 14:06:11 -04:00
miruka
314b2c30ad
Add keybind to clear room filter
2019-08-19 14:05:59 -04:00
miruka
af14038909
Rename filterRooms keybind to FocusSidePane
2019-08-19 13:58:31 -04:00
miruka
36dd6457ea
Change focus filter rooms keybind to (Alt/Ctrl)+S
2019-08-19 13:18:45 -04:00
miruka
98803e8c23
Hide PyOtherSide error when EventList is destroyed
2019-08-19 13:14:25 -04:00
miruka
5e5a658173
Add keybinds to go to previous/next room
2019-08-19 13:09:05 -04:00
miruka
6ec193d554
obj.__dict__ calls → obj.serialized or vars(obj)
2019-08-19 11:52:52 -04:00
miruka
9220a75980
DelegateAccount: don't force collapsed to false
2019-08-19 11:42:24 -04:00
miruka
4349643345
filter_string is now a class property
...
- Support serializing class properties instead of just dataclass fields
- filter_string is now a property that's always up-to-date
- Account display names matching the current SidePane filter are shown
2019-08-19 11:34:51 -04:00
miruka
d1eec2ee6b
Set client max timeout retry wait time to 10s
2019-08-19 10:31:53 -04:00
miruka
165c1b797e
Repair room filter, performance improvements
...
Chnaging delegate heights is a terrible idea that leads to graphic bugs.
Handle filtering (both room and accounts) and collapsing from a function
that sets the JsonListModel source.
2019-08-19 10:28:49 -04:00
miruka
2865d86d19
Refactor SidePane ListView in a flat way
...
Also adjust some colors (accentBackground)
TODO: Repair Filter rooms field
2019-08-18 03:35:28 -04:00
miruka
543f7ac747
Smarter adjust of messages line height
...
Increase line height is the message is multiline, except if there's an
<img> tag in it (due to a bug in Qt, workaround will be to implement
proper images support)
2019-08-18 03:25:56 -04:00
miruka
d0e77eb061
Increase messages line height again to 1.3
2019-08-17 23:54:32 -04:00
miruka
4067d8c4ab
Get flat SidePane data on Account/Room models sync
...
QML: Get the data from Python and print it (for now)
Also:
- Remove useless Model.sortable field, all models/items are sortable
- Change SyncId type hint for less mypy complaints
- Remove ModelItem.main_key class attributes, useless since last big
refactor
2019-08-17 22:46:54 -04:00
miruka
3cc39210b4
Work in progress keybard sidepane navigation
2019-08-17 20:29:56 -04:00
miruka
4e14828004
Fix Room inviter_avatar getting set to None
2019-08-17 18:17:14 -04:00
miruka
1663b166c7
HInteractiveRectangle: add missing pressed effect
2019-08-17 17:05:52 -04:00
miruka
7319c8d7b4
Highlight currently select account/room delegate
2019-08-17 16:59:13 -04:00
miruka
2e89dcae9e
Add shortcut to focus filter rooms field
2019-08-17 15:58:32 -04:00
miruka
43f8f4131d
Slightly increase messages line height
2019-08-17 15:49:33 -04:00
miruka
bfbcc73c43
Hide expand arrows when rooms are filtering
...
Any account with matching rooms is expanded until there is no more
active filter.
2019-08-17 15:42:56 -04:00
miruka
c5d5768f2e
Adjust RoomDelegates opacity when filtering
...
Accounts with no matching rooms to show will have their opacity reduced.
2019-08-17 15:30:25 -04:00
miruka
ec17e36911
Better plain text to html conversion
...
Replace \n and space characters instead of just wrapping the whole text
in pre and having to set a css style
2019-08-17 15:05:05 -04:00
miruka
5e63331f8b
Increase h6 titles font size
2019-08-17 14:54:34 -04:00
miruka
d98b215c0f
Fix plain text messages newlines being ignored
2019-08-17 14:51:04 -04:00
miruka
717680bf0c
No leading 0 for RoomDelegate last event time
...
To save some pixels
2019-08-17 14:22:32 -04:00
miruka
72b5954ce3
Simplify startup and improve its animation
...
- Remove Python.loadingAccounts/willLoadAccounts
- Fix HPage SwipeView bug that caused its inner SidePane to steal focus
- Use overshoot for animation
- Get rid of sidepane flickering
- Set default HNumberAnimation easing.type to OutQuad, specify InOutQuad
for HCheckBox
2019-08-17 14:14:18 -04:00
miruka
1ab79347e9
Refactor HInterfaceBox and SignIn page
...
- Cleaned up code
- Sizes are standardized
- New HCheckBox component
- Replace RememberAccount page by a checkbox on the SignIn page
- The page can now be flicked if it's not tall enough to display
everything
- HNumberAnimation now has an overshoot property that will set the right
easing type, overshoot and adapt the animation factor/duration.
- HImage can now be colorized
2019-08-17 13:04:43 -04:00
miruka
3e48d63cf3
Show date instead of "Yesterday" for RoomDelegate
...
"Yesterday" takes too much space
2019-08-17 13:00:32 -04:00
miruka
28b5fbd267
Disable login button until ID & password entered
2019-08-16 16:44:28 -04:00
miruka
c7adb5b02f
Show error messages on login screen
2019-08-16 16:30:18 -04:00
miruka
e920299db4
Update JSON config file if it lacks keys
2019-08-16 15:12:14 -04:00
miruka
be18a5db41
Make alert show for time set in cfg (default 4s)
2019-08-16 15:07:30 -04:00
miruka
0c493f88d8
Don't set alert if window already focused
2019-08-16 14:44:45 -04:00
miruka
1061498160
Alert (set urgency hint) on new messages
2019-08-16 14:27:25 -04:00
miruka
da4bb55f43
RoomDelegate last event time year
2019-08-16 13:44:44 -04:00
miruka
656dbbdf4a
Make room filter field consider room's last event
2019-08-16 13:31:53 -04:00
miruka
186d42a45e
Change accentText hue
2019-08-16 13:24:48 -04:00
miruka
2d031a3fd2
After remember dialog, show edit account page
2019-08-16 13:20:12 -04:00
miruka
f9ef75714d
Increase padding between RoomDelegates
2019-08-16 13:10:40 -04:00
miruka
7d4da8952f
Reduce RoomDelegate opacity for left rooms
2019-08-16 13:04:54 -04:00
miruka
e8b173163d
Add icon to RoomDelegate for invited rooms
2019-08-16 12:55:54 -04:00
miruka
cf8ae13eae
Set local echoes as room last events
2019-08-16 12:23:34 -04:00
miruka
9ca66b6044
Sort rooms by last event date again
2019-08-16 12:19:43 -04:00
miruka
2bb3952225
Show last event time in RoomDelegate
...
Also respect locale for message times
2019-08-16 12:07:22 -04:00
miruka
c76ebe4fe2
Improve some texts
2019-08-16 09:47:44 -04:00
miruka
564ad4fa8f
Fix invited/left rooms sorting
2019-08-16 03:01:40 -04:00
miruka
653934be71
Fix declining invitation being ignored
2019-08-16 02:12:37 -04:00
miruka
8baf336cf9
Room subtitle: show member but not profile events
...
Instead of not showing any kind of RoomMemberEvent.
2019-08-16 01:51:42 -04:00
miruka
729235fe6a
When a room is left, set UI state to default page
2019-08-16 01:31:46 -04:00
miruka
69a3f4377d
Show Default.qml from forget room button callback
2019-08-16 01:26:32 -04:00
miruka
6a7376d498
Update LeftBanner, fix forget button crash
2019-08-15 13:00:15 -04:00
miruka
3270c6dd19
Have inviter display name and avatar for rooms
2019-08-15 12:13:41 -04:00
miruka
2ac484b8f5
Remove now broken "don't read user theme if debug"
2019-08-15 12:08:43 -04:00
miruka
ea4ba38056
Give pane toolbar a stronger background
2019-08-15 12:06:51 -04:00
miruka
947c706638
Improve "nothing events to show yet" message
2019-08-15 11:56:28 -04:00
miruka
34edf923d0
Fix past events loading error for invited room
2019-08-15 11:46:40 -04:00
miruka
626f464c53
Save/load the sidepane filter text in ui state
2019-08-15 11:31:24 -04:00
miruka
710a5c0914
Keep filter bars from different sidePanes in sync
2019-08-15 11:30:22 -04:00
miruka
24ea8fa673
Register invited rooms
2019-08-15 10:51:37 -04:00
miruka
e027c56047
Add/improve ModelStore and Model __str__
2019-08-15 09:57:58 -04:00
miruka
5f72397afe
HLoader component, use Loader.asynchronous prop
2019-08-11 23:25:22 -04:00
miruka
fbd7c45fe4
Fix MemberDelegate v padding when collapsed
2019-08-11 23:01:14 -04:00
miruka
9924b0565a
Fix RoomDelegates v padding when collapsed
2019-08-11 22:57:36 -04:00
miruka
3c35616eaa
Remove copyright headers in code
2019-08-11 08:34:36 -04:00
miruka
67dde68126
Big performance refactoring & various improvements
...
Instead of passing all sorts of events for the JS to handle and manually
add to different data models, we now handle everything we can in Python.
For any change, the python models send a sync event with their
contents (no more than 4 times per second) to JS, and the QSyncable
library's JsonListModel takes care of converting it to a QML ListModel
and sending the appropriate signals.
The SortFilterProxyModel library is not used anymore, the only case
where we need to filter/sort something now is when the user interacts
with the "Filter rooms" or "Filter members" fields. These cases are
handled by a simple JS function.
We now keep separated room and timeline models for different accounts,
the previous approach of sharing all the data we could between accounts
created a lot of complications (local echoes, decrypted messages
replacing others, etc).
The users's own account profile changes are now hidden in the timeline.
On startup, if all events for a room were only own profile changes, more
events will be loaded.
Any kind of image format supported by Qt is now handled by the
pyotherside image provider, instead of just PNG/JPG.
SVGs which previously caused errors are supported as well.
The typing members bar paddings/margins are fixed.
The behavior of the avatar/"upload a profile picture" overlay is fixed.
Config files read from disk are now cached (TODO: make them reloadable
again).
Pylint is not used anymore because of all its annoying false warnings
and lack of understanding for dataclasses, it is replaced by flake8 with
a custom config and various plugins.
Debug mode is now considered on if the program was compiled with
the right option, instead of taking an argument from CLI.
When on, C++ will set a flag in the Window QML component.
The loading screen is now unloaded after the UI is ready, where
previously it just stayed in the background invisible and wasted CPU.
The overall refactoring and improvements make us now able to handle
rooms with thousand of members and no lazy-loading, where previously
everything would freeze and simply scrolling up to load past events
in any room would block the UI for a few seconds.
2019-08-11 08:27:53 -04:00
miruka
7e9106ee9c
Utils.hsla(): use py.callSync
2019-07-25 19:19:24 -04:00
miruka
858c9f337d
Add decryption keys import in account settings
2019-07-25 02:43:52 -04:00
miruka
93a6867735
Set own messages color
2019-07-25 00:10:07 -04:00
miruka
f5aa2c194a
"ui-settings.json", "ui-state.json": no ui- prefix
2019-07-24 20:02:31 -04:00
miruka
99c3cc7d9f
Put nio encryption files in an encryption subdir
2019-07-24 20:00:01 -04:00
miruka
504644e641
Fix JSONConfigFile read() when no file exists
2019-07-24 19:56:23 -04:00
miruka
a2469bd994
Don't use user theme in debug mode
2019-07-24 18:46:13 -04:00
miruka
b6290ad3c9
Fix SignIn circle buttons colors
2019-07-24 18:41:40 -04:00
miruka
607d1d8f5a
Remove license header from theme file
2019-07-24 18:27:26 -04:00
miruka
6638a66578
Finish replacing light-thin icons
2019-07-24 18:25:12 -04:00
miruka
de11b53c4e
Copy default theme to user data dir if not exist
2019-07-24 18:14:43 -04:00
miruka
5dc6c071d6
Add animation when reloading config file
2019-07-24 17:40:06 -04:00
miruka
eb97f08d6a
Add keybind to reload config file (default Alt+R)
2019-07-24 17:26:40 -04:00
miruka
cf5d76dd10
Recursively merge default and user config
2019-07-24 17:20:21 -04:00
miruka
efa4ad0ae0
Add keybinds to config file
2019-07-24 17:05:27 -04:00
miruka
2be23128b1
Fix button hover overlay colors
2019-07-24 16:44:35 -04:00
miruka
cb25c30cb9
Fix EditAccount currentSpacing
2019-07-24 16:41:32 -04:00
miruka
47d30352fa
EditAccount header: match Display name field
2019-07-24 16:37:14 -04:00