Commit graph

2999 commits

Author SHA1 Message Date
Nicolas Werner
6ead7b0ba2
Fix rooms failing to load over dbus if image can't be downloaded 2022-07-10 15:25:41 +02:00
Nicolas Werner
11fa4821aa
Support rendering policy rules 2022-07-09 15:36:28 +02:00
Nicolas Werner
b516202a8c
Fix clazy warning 2022-07-09 00:42:44 +02:00
Nicolas Werner
931855441a
Allow editing aliases 2022-07-08 17:28:28 +02:00
Nicolas Werner
42b53817e0
Fix users with @room in the name pinging the whole room when replied to 2022-07-05 12:57:17 +02:00
Nicolas Werner
678806749d
Add a /command to redact all visible messages sent by a user 2022-07-01 10:24:12 +02:00
Nicolas Werner
7198cee85e
Fix crash on empty user cache stored 2022-07-01 09:14:17 +02:00
Loren Burkholder
e2e5e4926e make lint 2022-06-29 22:05:47 -04:00
Loren Burkholder
885a790b1f Simplify space notification options 2022-06-29 22:04:37 -04:00
Loren Burkholder
7cbde0712f Allow muting spaces; other general improvements 2022-06-29 22:04:37 -04:00
Loren Burkholder
4428e0e0b8 make lint 2022-06-29 22:04:37 -04:00
Loren Burkholder
7e9646cc25 Add notifications to all sidebar items 2022-06-29 22:04:37 -04:00
Loren Burkholder
f03c506bdf Inform Qt that loud notifications changed 2022-06-29 22:04:37 -04:00
Loren Burkholder
863eaa1910 Add space notification configuration 2022-06-29 22:04:37 -04:00
Loren Burkholder
e446e3d679 Add loud notifications for spaces 2022-06-29 22:04:17 -04:00
Loren Burkholder
169384f0fa Add space notifications to room list 2022-06-29 22:02:20 -04:00
Loren Burkholder
e7c24b094f Fix typoed variable name 2022-06-29 22:00:09 -04:00
Loren Burkholder
2df2046d1d Display unread notifications for spaces 2022-06-29 22:00:09 -04:00
Nicolas Werner
b6bbbdeae7
Fix bad timestamps being stored for room infos 2022-06-28 23:18:36 +02:00
q234rty
7a29531739
Fix blurriness of svg icons (#1108) 2022-06-28 12:14:23 +00:00
Nicolas Werner
3256d9bafe
Fix clazy complaint about detatch 2022-06-28 13:33:46 +02:00
brausepulver
98de51042a
Get large avatar images as scale and crop locally (#1107)
Resolves #1069

The Matrix spec requires servers to provide thumbnails at (96x96, crop) and (320x240, scale) among others. [1] The avatars in Nheko's global/room profile and room settings are sized 130x130 on normal scaling and 260x260 on 2x scaling like on a HiDPI device. In both cases the avatar is requested as cropped and that way displayed at 96x96, making it look blurry.

This can be solved by requesting scaled avatars rather than cropped where appropriate, and cropping to the requested size afterwards.

HiDPI can be simulated in Qt by setting QT_SCALE_FACTOR=2.

[1] https://spec.matrix.org/v1.3/client-server-api/#thumbnails
2022-06-26 18:32:43 +00:00
Nicolas Werner
1145610694
Fix timestamps after loading 2022-06-26 01:48:16 +02:00
Nicolas Werner
dc4a06517c
Add an option to define new power levels 2022-06-26 00:09:00 +02:00
Nicolas Werner
c25aeac4ca
Fix linting 2022-06-25 18:07:55 +02:00
Nicolas Werner
5772447874
Require matrix v1.1 or greater 2022-06-25 16:16:54 +02:00
Nicolas Werner
6e97f3da06
Refresh last message when paginating backwards 2022-06-25 14:05:52 +02:00
Nicolas Werner
dc4fbd167e
Fix linting 2022-06-24 01:55:32 +02:00
brausepulver
09c646d3fa
Add copy link to room context menu (#1101) 2022-06-23 23:44:50 +00:00
Jason Volk
a7ee6e96ba Fix multiple weak symbols from private object destructor (-Wstringop-overflow). 2022-06-23 12:48:44 -07:00
Nicolas Werner
ead10cd0fd
Request full online keybackup when turning it on 2022-06-19 16:37:00 +02:00
Nicolas Werner
35ff02ce48
Remove a few more headers 2022-06-18 02:31:01 +02:00
Nicolas Werner
07228d336a
Support the knock_restricted rule 2022-06-18 00:17:24 +02:00
Nicolas Werner
b57152a1c9
Skip migration if sender_key is not a string or present 2022-06-18 00:10:47 +02:00
Nicolas Werner
8cdfbf9391
Get rid of 'using json = nlohmann::json' 2022-06-17 22:03:54 +02:00
Nicolas Werner
b0c353c550
Remove remaining groups code 2022-06-17 19:51:08 +02:00
Nicolas Werner
ef941920ea
Fix compilation without implicit nlohmann conversions 2022-06-17 03:14:48 +02:00
Nicolas Werner
28acea55e2
Remove redundant alias function 2022-06-17 03:14:48 +02:00
Nicolas Werner
beb59d5d2e
Simplify includes a bit 2022-06-16 01:19:26 +02:00
Nicolas Werner
f8e6c9c53c
Speedup provider compilation 2022-06-16 00:49:12 +02:00
Nicolas Werner
81d4285580
Fix settings groups not being terminated properly on logout
fixes #1094
2022-06-15 22:36:16 +02:00
DeepBlueV7.X
835fcf6325
Merge pull request #1095 from syldrathecat/subtle-paste-fixes
Subtle corrections to paste behaviors
2022-06-15 14:31:46 +00:00
Nicolas Werner
9e14218bc6
Fix failed uploads not removing uploads
fixes #1098
2022-06-15 15:55:03 +02:00
Nicolas Werner
3eafd4396e
Fix pins not refreshing after being loaded 2022-06-15 15:36:58 +02:00
Nicolas Werner
bcc6c518be
Fix edits not updating in replies 2022-06-15 15:24:07 +02:00
Nicolas Werner
ef9ebe3fd3
Speedup startup by caching last message timestamp
The cache is only approximate, i.e. it doesn't skip edits and similar,
but this might be good enough? Also no migration right now.

Speeds up startup by about 5x on my system.

Half the startup time is now loading the powerlevels for each room. We
can probably lazily load those too in the future.
2022-06-15 02:13:17 +02:00
SyldraTheCat
8a6acd1d86
Subtle corrections to paste behaviors 2022-06-14 12:04:34 +00:00
Nicolas Werner
6e1fec1e63
Update hidden read receipts MSC 2022-06-14 00:35:28 +02:00
Nicolas Werner
9b2a98b595
Fix C++20 compatibility 2022-06-13 11:12:41 +02:00
Nicolas Werner
bd9946bff9
Fix height attribute for emotes 2022-06-13 11:12:21 +02:00
Nicolas Werner
f3ff56692e
Fix crash on logout (why did that line vanish?!?) 2022-06-12 19:39:36 +02:00
Nicolas Werner
62b3b461ec
Fix comparison for glare algorithm 2022-06-12 19:09:07 +02:00
Nicolas Werner
00740a7e65
Properly handle glare when verifying 2022-06-12 17:53:17 +02:00
Nicolas Werner
9649c20fc6
Add some logging to dock 2022-06-05 16:26:31 +02:00
d42
0e02024084
Unread messages count as an Unity compatible badge (#1085)
Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>
2022-06-05 11:51:29 +00:00
Nicolas Werner
c742e545d2
Fix unnecessary detatch in for loop 2022-05-27 17:21:42 +02:00
Nicolas Werner
6c6d43691d
Add basic powerlevel editor 2022-05-27 17:01:58 +02:00
Nicolas Werner
ac5e3fe3e8
Send images on enter if input bar is empty 2022-05-23 12:32:04 +02:00
Nicolas Werner
c792fd28b1
Fix unsigned wraparound when creating one time keys 2022-05-21 15:21:14 +02:00
Nicolas Werner
28ff6fa484
Fix bad format string 2022-05-19 22:08:27 +02:00
Nicolas Werner
d2561b0512
Use newer libolm 2022-05-14 02:23:52 +02:00
Nicolas Werner
a2d3990f90
Fix stopping the fallback removal timer starter 2022-05-14 01:56:53 +02:00
Nicolas Werner
0a65019242
Add support for fallback keys 2022-05-14 01:42:56 +02:00
Nicolas Werner
908f62159a
Properly mark image node as dirty on size update 2022-05-11 12:28:27 +02:00
Nicolas Werner
90da39313f
Use right linter 2022-05-10 03:53:35 +02:00
Nicolas Werner
a6b2be112b
More image dialog fixes 2022-05-10 03:20:09 +02:00
Nicolas Werner
8f6ed458a6
Add mtxclient to logging 2022-05-08 01:35:35 +02:00
Nicolas Werner
a0f722f2a4
Fix header order... 2022-05-07 20:36:38 +02:00
Nicolas Werner
9910244f6b
Fix potential crash when opening separate rooms 2022-05-07 20:27:25 +02:00
Nicolas Werner
87070289fd
Activate window that already has the room open if possible 2022-05-07 19:12:30 +02:00
Nicolas Werner
62bf1b253e
Rework focus handling 2022-05-07 18:53:16 +02:00
Nicolas Werner
803bc8cf76
Fix notification for focus room in main window 2022-05-07 13:06:16 +02:00
Nicolas Werner
21584cd91d
fix indentation 2022-05-07 11:14:28 +02:00
Nicolas Werner
db1bcd7b5a
Show powerlevels in memberlist 2022-05-07 02:30:16 +02:00
Nicolas Werner
535ad22b7d
Fixup some small emoji things 2022-05-06 16:14:47 +02:00
Nicolas Werner
d4b7712a66
Merge branch 'master' of https://github.com/TheDrawingCoder-Gamer/nheko into TheDrawingCoder-Gamer-master 2022-05-06 15:41:51 +02:00
Nicolas Werner
b75ef07896
Add basic support for multiple windows 2022-05-06 00:36:53 +02:00
Nicolas Werner
e4f8d32a72
Don't crash on corrupt animated images 2022-05-04 08:26:24 +02:00
TheDrawingCoding-Gamer
ba57b01b9d
Fix triumph mapping 2022-05-01 14:55:40 -04:00
BulbyVR
4129d58b6d
Change name to codepoint 2022-04-27 12:45:45 -04:00
Nicolas Werner
a0526044ef
Fix scaling of animated images in fullscreen image viewer 2022-04-26 16:46:38 +02:00
BulbyVR
97105ebc5f More codes and rules 2022-04-24 12:25:01 -04:00
BulbyVR
64882fd6de Unhardcode qml 2022-04-24 12:25:01 -04:00
BulbyVR
876645544c forgot to lint 2022-04-24 12:25:01 -04:00
BulbyVR
b629882793 Properly add regional indicators, with ZWNJ 2022-04-24 12:25:01 -04:00
BulbyVR
209865e882 Add more aliases, start on regional indicators 2022-04-24 12:25:01 -04:00
BulbyVR
22f90874cc Forgot linting 2022-04-24 12:25:01 -04:00
BulbyVR
79ed520d59 Allow search with unicode names 2022-04-24 12:25:01 -04:00
BulbyVR
dabde88e1c Remove sequences of _ 2022-04-24 12:25:01 -04:00
BulbyVR
90b88eb592 Keep old codes alongside new ones
Signed-off-by: BulbyVR <26726264+TheDrawingCoder-Gamer@users.noreply.github.com>
2022-04-24 12:25:01 -04:00
BulbyVR
79399d8118 Run make lint
Signed-off-by: BulbyVR <26726264+TheDrawingCoder-Gamer@users.noreply.github.com>
2022-04-24 12:25:01 -04:00
BulbyVR
7d3a98af67 Add transforms and shortcodes to emoji
Signed-off-by: BulbyVR <26726264+TheDrawingCoder-Gamer@users.noreply.github.com>
2022-04-24 12:25:01 -04:00
Nicolas Werner
eeb48749ae
Fix filtering without using regex 2022-04-23 14:53:36 +02:00
Nicolas Werner
8c66945be9
Don't use deprecated filterRegExp 2022-04-23 03:06:00 +02:00
Nicolas Werner
a8a3df23ab
Fix use of deprecated QRegExp in MemberList filter 2022-04-23 03:01:43 +02:00
Loren Burkholder
6672e765d7
Search room members (#1049) 2022-04-22 23:59:40 +00:00
DeepBlueV7.X
c637989ac0
Merge pull request #1054 from tastytea/image-pack-changes/pack-id
Show pack Id for image pack changes in timeline
2022-04-22 23:45:34 +00:00
Nicolas Werner
f7ffaac63d
Fix PLs for DMs 2022-04-20 16:50:27 +02:00
tastytea
ffc5426e87
Show pack Id for image pack changes in timeline
Show either pack name, state key or (empty).
2022-04-20 09:41:18 +02:00
Nicolas Werner
3b2f47c56f
Show changes in image packs in timeline 2022-04-19 22:33:53 +02:00
Nicolas Werner
a2da4b6df3 Fix linting 2022-04-18 18:54:32 +02:00
Loren Burkholder
da6b3eb8f4
D-Bus fixes (#1048)
According to LorenDB's First Law of Software Development, once a developer has committed or merged a new feature, he will find at least one problem with the implementation.

I realized that I was constructing the room info items with some parameters out of order, which required a rather urgent fix. Furthermore, I fixed the image decoding algorithms in the QDBusArgument operator. Finally, I switched the API version parameter back to QString, since passing it as a QVersionNumber would create a problem for non-Qt API users.

On the general improvements side of things, I added some handy wrappers for D-Bus calls so that other devs that copy the NhekoDBusApi files to use for their own applications won't have to go to the effort of making the D-Bus calls themselves.
2022-04-18 16:50:15 +00:00
Nicolas Werner
01019450cf Fix grayscale bug AGAIN 2022-04-16 13:30:59 +02:00
Joseph Donofry
f688e15379 Fix cursor not being closed before txn was committed 2022-04-14 19:23:12 -04:00
Nicolas Werner
c3efab43fb Cleanup some random dbus stuff 2022-04-14 17:33:28 +02:00
Loren Burkholder
686ebfdbec
Add D-Bus API (#916)
This adds functionality for viewing joined rooms and activating rooms.
2022-04-14 15:02:55 +00:00
Nicolas Werner
060a03e055 Fix accidental shadowing 2022-04-13 20:49:33 +02:00
Nicolas Werner
0a405a7446 Store notification counts across restarts 2022-04-13 20:40:00 +02:00
Nicolas Werner
3ea8a1d452 fix lint 2022-04-10 22:48:16 +02:00
Marcel
a8810ad016
Add specific powerlevel messages (#852)
fixes #136
2022-04-10 20:44:15 +00:00
Nicolas Werner
864b4b2646 Fix SSSS if another client used the wrong base64 format 2022-04-08 05:11:24 +02:00
Nicolas Werner
cf38e6974a Fix typo in key export 2022-04-08 03:33:00 +02:00
Nicolas Werner
f316dbed43 Fix a few issues with receiving to_device messages in initial sync 2022-04-08 03:24:10 +02:00
Nicolas Werner
66b7ff639c Remove sender key from megolm session index
implements MSC3700

see https://github.com/matrix-org/matrix-spec-proposals/pull/3700
2022-04-08 01:53:00 +02:00
DeepBlueV7.X
747fe6408d
Merge pull request #1036 from Nheko-Reborn/fixCreateDirectChat
Don't treat a space as a direct chat
2022-04-03 01:17:42 +02:00
Loren Burkholder
3bb00aa96c Don't treat a space as a direct chat 2022-04-02 19:07:20 -04:00
Apurv404
9eddee75ca Fix room alias issue (#354) 2022-04-02 02:56:08 +05:30
Nicolas Werner
4e5e5d55eb
lint 2022-04-01 01:14:44 +02:00
Nicolas Werner
6f8babc80b
Allow knocking if join failed and via matrix uris 2022-04-01 00:58:01 +02:00
Nicolas Werner
6417dcd398
Fix leaving rooms 2022-03-31 23:34:01 +02:00
Nicolas Werner
a59b3147a6
Add reasons to everything
fixes #1030
2022-03-30 23:40:12 +02:00
Nicolas Werner
c91f91d5d3
Add /knock command 2022-03-30 21:15:22 +02:00
Nicolas Werner
0d9a3ff4cd
Fix cursor moving to the end when editing in the middle 2022-03-30 07:02:52 +02:00
Nicolas Werner
9e2789a16d
Remove a few unused variables 2022-03-30 06:53:55 +02:00
Nicolas Werner
656fcac91c
Don't use a modal to edit room name and topic 2022-03-30 06:45:31 +02:00
Nicolas Werner
82cdb483a9
Fix arrow keys 2022-03-30 06:24:23 +02:00
Nicolas Werner
afe381e9b1
Remove unused ToggleButton 2022-03-30 02:14:59 +02:00
Nicolas Werner
14f7fe282f
Cleanup some unused code 2022-03-30 02:07:32 +02:00
DeepBlueV7.X
f9e294ce0c
Merge pull request #1019 from maltee1/qml_createroom
CreateRoom dialog in QML
2022-03-29 20:54:45 +02:00
Nicolas Werner
6d1416fb6e
Add backend for new room creation dialogs 2022-03-29 20:51:18 +02:00
Nicolas Werner
6f0260d59f
Avoid empty membership events 2022-03-28 21:41:16 +02:00
Malte E
af17e4f8c0 run lint 2022-03-26 22:28:31 +01:00
Malte E
838cf63578 direct chat creator can now create direct chats 2022-03-26 22:25:48 +01:00
Nicolas Werner
7256c70108
Fix crash on missing pack description 2022-03-25 18:40:27 +01:00
tastytea
179ae53b40
Don't send thumbnails that are larger than the original
- Set PNG compression to maximum
- Don't upload thumbnail if it is not at least 10% smaller than  the
  original
2022-03-24 20:13:12 +01:00
Nicolas Werner
637db55e08
Default body to shortcode if unset and sending sticker 2022-03-22 19:45:25 +01:00
Nicolas Werner
922c63ef27
Add a default filename for clipboard pastes again 2022-03-22 18:28:35 +01:00
Nicolas Werner
447a3d4cb9
Try to improve thumbnailing on macOS 2022-03-22 18:12:39 +01:00
Nicolas Werner
30ba387076
Fix thumbnails of received encrypted images 2022-03-22 04:32:11 +01:00
Nicolas Werner
96aacf8068
Small fixes to video thumbnailing 2022-03-22 01:21:08 +01:00
DeepBlueV7.X
15c946207a
Merge pull request #1009 from tastytea/reword-extprog-tooltip
Reword tooltip for Open{Image,Video}External
2022-03-22 00:27:44 +01:00
Nicolas Werner
c87af215e1
Actually pass the mimetype we intended 2022-03-21 23:19:18 +01:00
Nicolas Werner
e52f90a941
Properly fix image uploads without image/* format 2022-03-21 23:15:09 +01:00
Nicolas Werner
5734641778
Fix potential crash if there is no image format pasted 2022-03-21 22:54:44 +01:00
tastytea
a622ba4abc
Reword tooltip for Open{Image,Video}External 2022-03-21 13:34:08 +01:00
Nicolas Werner
a9486ec896
Fix thumbnails for encrypted files and factor upload box out 2022-03-21 05:49:12 +01:00
Nicolas Werner
dbd2bebe6c
Show some previews in upload window 2022-03-21 05:05:29 +01:00
Nicolas Werner
830f4d4942
Please clazy 2022-03-21 01:35:47 +01:00
Nicolas Werner
3aeeed49a9
Also stop audio player 2022-03-21 01:32:31 +01:00
Nicolas Werner
3beed3508a
Thumbnail video 2022-03-21 01:24:53 +01:00
Nicolas Werner
fd83858715
Add duration and resolution to files 2022-03-21 00:48:27 +01:00
Nicolas Werner
d3471a1097
Move uploads to InputBar 2022-03-20 22:49:33 +01:00
Nicolas Werner
c84e15f7eb
Shuffle around user settings 2022-03-20 04:42:50 +01:00
DeepBlueV7.X
dda1bcd3c1
Merge pull request #1001 from duarm/master
options to open images/videos with external program by default
2022-03-20 04:30:54 +01:00
Malte E
d765305595 properly commit preedit text 2022-03-19 22:30:35 +01:00
math
4a0f009ed9 warn about implications of toggling external option 2022-03-19 13:20:39 -03:00
math
88d86405f8 add option to open video with external program by default 2022-03-19 02:31:43 -03:00
math
74a4e36f90 add option to open image with external program by default 2022-03-19 01:54:02 -03:00
Nicolas Werner
e98145daec
Fix key upload when doing SSO login 2022-03-13 17:59:35 +01:00
Nicolas Werner
b19d9caba6
Sort known UIA flows first 2022-03-13 01:17:51 +01:00
tastytea
a7388a70be
Use standard buttons where possible
Standard buttons are ordered in the right way and sometimes have an
icon.

Bug: https://matrix.to/#/%23nheko%3Anheko.im/%2476PZ2m6YftX8mqGIe9ettKbh_-pEYeVRQSJBfwFzWi0?via=pixie.town&via=matrix.org&via=matrix.flexinos.tech&via=half-shot.uk
2022-03-11 13:15:26 +01:00
Nicolas Werner
1a7409876e
Enable online key backup by default 2022-03-10 20:46:06 +01:00
Nicolas Werner
ac1d678254
Fix server switching to https after bootstrap
fixes #878
2022-03-07 05:27:06 +01:00
tastytea
083562a7d8
Add GUI for specifying kick/ban reason
This replaces the are-you-sure dialog and also shows up when using
/-commands.

Closes: https://github.com/Nheko-Reborn/nheko/issues/239

# Previous commits:
#   e390c398 Allow to specify reason for removed message
#   5949173b Add function to force focus on InputDialog input field
#   9482ac4e Allow explicit selection of SSO method
#   ab05e2d8 Mobile message input (#962)
2022-03-06 19:58:12 +01:00
tastytea
e390c39862
Allow to specify reason for removed message
# Previous commits:
#   5949173b Add function to force focus on InputDialog input field
#   9482ac4e Allow explicit selection of SSO method
#   ab05e2d8 Mobile message input (#962)
#   12a6da01 If you replace the txn id, replace a string the length of the txn id...
2022-03-06 19:58:12 +01:00
Nicolas Werner
9482ac4e7a
Allow explicit selection of SSO method
fixes #975
2022-03-06 19:51:17 +01:00
Nicolas Werner
12a6da012a
If you replace the txn id, replace a string the length of the txn id... 2022-03-05 19:38:13 +01:00
Nicolas Werner
c76cda0cbe
Set font properly
When setting the default font, actually set the default font. When
setting a different font, change the application font.

fixes #801
fixes #232
fixes #224
2022-03-05 03:34:29 +01:00
Eldred Habert
21e8338d78
Remove extraneous comma
Achtung!
2022-03-02 23:11:28 +01:00
Eldred Habert
210066a4f7
Fix incorrect capitalization of "circle"
Anyone German in the room, or is it just me? ;3
2022-03-02 22:58:59 +01:00
Eldred Habert
6c6c1a88cd
Fix missing plural "messages" 2022-03-02 22:58:06 +01:00
Nicolas Werner
d8d8662a42
Remove unused headers 2022-03-02 20:39:46 +01:00
Nicolas Werner
a307dc46cb
Remove stray logging 2022-02-27 06:47:00 +01:00
Nicolas Werner
8e20139079
Allow properly editing pending encrypted messages 2022-02-27 06:43:45 +01:00
Nicolas Werner
9f5b647fb3
Fix editing pending messages 2022-02-27 06:43:45 +01:00
DeepBlueV7.X
3dfcc4145d
Merge pull request #952 from symphorien/hidden-read-receipts
support for hidden read receipts
2022-02-22 16:30:23 +00:00
Pablo Barciela
910da20547 WebRTCSession: avoid deprecated 'gst_element_get_request_pad' 2022-02-21 20:13:19 +01:00
Guillaume Girol
05f7e47a9f support for hidden read receipts 2022-02-21 12:00:00 +00:00
Nicolas Werner
ff4334d59e
Don't leak dialogs
It seems that you need to manually destroy created objects... Great...

fixes #898
2022-02-21 05:01:01 +01:00
Malte E
1c8a5c645d
Add sender names to state events (#948)
* add sendernames to state events

* Center state events and make them less tiny
2022-02-21 00:39:32 +00:00
DeepBlueV7.X
fd25f6ee91
Merge pull request #934 from pavlukivan/master
use shortcode as a fallback for custom emote title
2022-02-21 00:27:22 +00:00
DeepBlueV7.X
b90e39ecb4
Prefer empty() over length() 2022-02-21 00:27:01 +00:00
Nicolas Werner
46fbb0e749
Use ListView without scrollview for messages
That way we can autohide the scollbar if needed, it should fix some
jumping issues, it makes it possible to flick on mobile, etc.

Some related bugs:

https://bugreports.qt.io/browse/QTBUG-75223
https://bugreports.qt.io/browse/QTBUG-44902
2022-02-19 21:45:43 +01:00
Nicolas Werner
e077bdbdd5
Allow window sizes smaller than 400x400 2022-02-14 22:56:35 +01:00
Nicolas Werner
ddcd4850f1
Merge branch 'message-bubbles' of https://github.com/maltee1/nheko into maltee1-message-bubbles 2022-02-14 15:43:17 +01:00
Nicolas Werner
1bc986fd3b
Prevent old verification requests from showing up 2022-02-14 15:25:55 +01:00
Malte E
414257bf0e fix bugs found by Nico 2022-02-14 14:03:17 +01:00
Malte E
c70fe9c571 let lint fix the code formatting 2022-02-13 13:22:29 +01:00
Malte E
987b9bed6b add small avatars option and tweak colors and spacings 2022-02-13 13:12:51 +01:00
Nicolas Werner
3e958ea382
Fix setting emoji font 2022-02-12 23:07:04 +01:00
Ivan Pavluk
2a2ef2f2e5 use shortcode as a fallback for custom emote title
Some clients (e.g. FluffyChat) don't have a UI for specifying the emote
title, and instead use the shortcode as the title. This sets the title
accordingly even if the emote was added through such a client and only
has a shortcode.
2022-02-13 04:51:11 +07:00
Nicolas Werner
47b822604d
Hidden events: Refactor slightly for reusability 2022-02-12 19:48:53 +01:00
tastytea
7ebced29e9
Hidden events: Make reusable read function 2022-02-10 00:48:36 +01:00
tastytea
72cfb06208
Hidden events: Some cleanup 2022-02-10 00:48:35 +01:00
tastytea
49b313e3b8
Hidden events: Make save-function reusable for global account data 2022-02-10 00:48:35 +01:00
tastytea
f0bb64030e
Hidden events: Incorporate suggestions from review
- Set TitleHint flag on dialog
- Store hidden events as QSet<QString> instead of std::vector<bool>
- Change wording in dialog (disable events instead of turning the hiding
  on)
2022-02-10 00:48:35 +01:00
tastytea
5cd3e61cb0
Add GUI to change hidden events per room
This adds a dialog to the room settings in which the user can choose
which of these three event types they want to hide (additionally to the
default):

  - m.room.member
  - m.room.power_levels
  - m.sticker

The current state is read when room settings are opened and saved when
new settings are accepted.
2022-02-10 00:48:35 +01:00
Nicolas Werner
dfb8f9a160
Fix application name on Wayland in flatpak
fixes #903
2022-02-09 23:46:49 +01:00
Malte E
12d600db97 add translations and actually add changes to TimelineModel 2022-02-07 21:53:37 +01:00
Malte E
9d194cc2e6 clean up margin setting 2022-02-05 21:53:21 +01:00
Malte E
f5a693ac03 place metadata below message when the Layout is narrow (<350) 2022-02-05 14:12:51 +01:00
Nicolas Werner
409bfa8c9d # should be valid in links 2022-02-05 09:27:16 +01:00
Nicolas Werner
b3221b09d6 Add /reset-state command 2022-02-05 08:40:56 +01:00
Nicolas Werner
1dacf327e1 Fix avatar url conversion for widgets 2022-02-04 23:33:00 +01:00
Malte E
3f7c15c7af Add message bubbles 2022-02-04 23:12:30 +01:00
Nicolas Werner
7b00411dc4 Show widgets as links 2022-02-04 20:48:14 +01:00
DeepBlueV7.X
00116e8128
Merge pull request #906 from LorenDB/offlineIndicator
Add offline indicator
2022-02-04 07:13:53 +01:00
Nicolas Werner
112426e30b Fetch previews for space children using /hierarchy 2022-02-02 19:03:01 +01:00
Loren Burkholder
5bed3684ec Add offline indicator (#472) 2022-02-01 23:39:22 -05:00
Nicolas Werner
fcefdb7ca6
split point is pointless 2022-01-31 21:47:23 +01:00
Nicolas Werner
eae43782a3
Do word splitting in completer 2022-01-31 21:36:22 +01:00
Nicolas Werner
3c208cd717
Remove unused funtion 2022-01-30 20:25:30 +01:00
Nicolas Werner
2613275461
Reimplement error notifications 2022-01-30 19:14:33 +01:00
Nicolas Werner
b4278ffaa8
Remove a few unused includes 2022-01-30 13:31:39 +01:00
Nicolas Werner
f44d8e916b
Remove a few now unused files 2022-01-30 13:16:36 +01:00
Nicolas Werner
392a4be858
Fix centering dialogs 2022-01-29 19:07:27 +01:00
Nicolas Werner
1d6d9e65af
Store window size on exit again 2022-01-29 18:10:42 +01:00
Nicolas Werner
909c11d2bb
Get rid of some shadowing 2022-01-29 18:03:25 +01:00
Nicolas Werner
c5c892b873
Remove unnecessary qml engine shutdown workaround 2022-01-29 17:41:14 +01:00
Nicolas Werner
f7fd43e3f2
Connect quit 2022-01-29 17:38:59 +01:00
Nicolas Werner
2e7d26bcc0
Fix secrets not loading after registration 2022-01-29 17:27:28 +01:00
Nicolas Werner
f28013dc18
Port registration to Qml 2022-01-28 15:24:56 +01:00
Nicolas Werner
573624a490
Remove some unused functions 2022-01-26 21:44:13 +01:00
Nicolas Werner
4a80fdc951
Functional login page 2022-01-26 21:44:13 +01:00
Nicolas Werner
aaae72a4f2
Fix focus and qml parenting with qml root 2022-01-26 21:44:13 +01:00
Nicolas Werner
b106eafb0e
Initial qml root window 2022-01-26 21:44:13 +01:00
Nicolas Werner
9a2e07cbce
Fix gray scale images breaking notifications on dunst
Fixes #907
2022-01-26 21:43:55 +01:00
Ayushi Bisht
6aaaa777c6 Fixed a grammatical error 2022-01-18 12:42:50 +05:30
Ayushi Bisht
8e8e46fe0a fixed a typo in Cache.cpp 2022-01-17 22:51:49 +05:30
Nicolas Werner
c59bb67569
Fix setting double values in setting spinboxes 2022-01-13 05:52:31 +01:00
Nicolas Werner
f51188df15
Add profile to notifications on KDE 2022-01-12 19:09:19 +01:00
Nicolas Werner
59bc8307c8
Address review comments 2022-01-11 04:12:42 +01:00
Nicolas Werner
f1a23355bd
Port usersettings to qml 2022-01-09 01:02:25 +01:00
Nicolas Werner
8d52c17f29
Work around images with size 0 in info
fixes #875
2022-01-04 05:19:48 +01:00
Nicolas Werner
970ed56fa5
Fix presence db creation on servers without presence
fixes #873
2022-01-03 15:33:36 +01:00
Nicolas Werner
6d4ff70b48
Add minimum scale in image viewer 2022-01-03 04:00:21 +01:00
Nicolas Werner
f14f978c48
Possibly fix crash on accepting invites
fixes #857
2022-01-03 03:57:57 +01:00
Joe Donofry
d2af490202 Merge branch 'gstreamer_windows_macos' into 'master'
Gstreamer glib event loop for macos and windows

See merge request nheko-reborn/nheko!19
2022-01-02 21:15:10 +00:00
Joe Donofry
9033235e9d Gstreamer glib event loop for macos and windows
- This ensures that gstreamer bus operations work
on macOS and windows, such as enumerating devices.
2022-01-02 21:15:10 +00:00
Nicolas Werner
66520eae19
Port image overlay to qml
Allows you to zoom and pan now.

relates to #647
2022-01-02 21:46:29 +01:00
Nicolas Werner
7685d1808b
Strip variant selector in some cases
fixes #439
Workaround for https://bugreports.qt.io/browse/QTBUG-97401
fixes #810
2022-01-01 07:10:12 +01:00
Nicolas Werner
a206500510
Use fully qualified emoji and use literals 2022-01-01 06:16:37 +01:00
Nicolas Werner
61404641d9
Update year in copyright notice to shut up lint job 2022-01-01 04:57:53 +01:00
Nicolas Werner
52a6105dc1
Update translations 2022-01-01 04:41:15 +01:00
Nicolas Werner
6f77a1fe9d
Use the styles default delay for tooltips
This makes them less annoying when scrolling or accessing the popup
menu.

See also #860
2021-12-31 00:48:55 +01:00
Nicolas Werner
750c64f323
Get rid of some useless code 2021-12-31 00:48:55 +01:00
Nicolas Werner
73012eb2d1
Add missing license headers 2021-12-30 06:20:10 +01:00
Nicolas Werner
c5f4865ee6
Try to reduce CPU overhead of animated images a bit 2021-12-30 06:10:19 +01:00
Joe Donofry
459edcd71a Merge branch 'completer_scrolling' into 'master'
Completer scrolling

See merge request nheko-reborn/nheko!20
2021-12-30 04:46:30 +00:00
Joe Donofry
c8ff44aa20 Increase Completer limit to 30
- Add scrolling
- Only display ~7 items at once
2021-12-30 04:46:30 +00:00
Nicolas Werner
9a9dbda571
Update presence dynamically and reduce allocations 2021-12-30 04:54:03 +01:00
Nicolas Werner
4428388b3f
Convert blurhash image format on worker thread
Not only should this prevent hickups, it also fixes a potential crash.
2021-12-30 02:25:47 +01:00
Nicolas Werner
203ddb20de
Fix crash after sending image caused by the recent refactor 2021-12-30 02:10:33 +01:00
Nicolas Werner
b847623fbe
Reduce allocations and time spent creating delegates by half 2021-12-29 22:46:04 +01:00
Nicolas Werner
7cfb7dcea4
Reduce allocations for presence states a bit 2021-12-29 22:45:30 +01:00
Nicolas Werner
497c3df50e
Prevent copies when querying theme 2021-12-29 08:05:29 +01:00
Nicolas Werner
f21bf5f97e
Cache supported animated image formats 2021-12-29 07:40:32 +01:00
Nicolas Werner
4d54876ea4
Pretty up code with fewer allocations 2021-12-29 07:04:30 +01:00
Nicolas Werner
271b111558
Reduce allocations for accessing event members 2021-12-29 07:02:32 +01:00
Nicolas Werner
0f4b482bb3
Remove a few casts 2021-12-29 06:10:08 +01:00
Nicolas Werner
19dc6cadea
Reserve size of some containers we are filling 2021-12-29 06:01:38 +01:00
Nicolas Werner
812e3b5f03
Reduce allocations required for the palette 2021-12-29 06:01:20 +01:00
Nicolas Werner
d8ead9573b
Reduce allocations using QStringLiteral 2021-12-29 04:52:52 +01:00
Nicolas Werner
a3c4ebc460
use more literals 2021-12-29 00:36:43 +01:00
Nicolas Werner
f3e1941612
Add clazy to CI 2021-12-29 00:17:37 +01:00
Nicolas Werner
5743a6de04
Cleanup remaining clazy issues 2021-12-28 23:22:01 +01:00
DeepBlueV7.X
e7664a43da
Merge pull request #855 from rnhmjoj/master
Make nheko usable without a secret storage service
2021-12-28 21:51:35 +00:00
Nicolas Werner
0e9b0c80cd
more cleanups 2021-12-28 22:36:49 +01:00
Nicolas Werner
bb290f9fec
Fix more warnings and remove dead code 2021-12-28 22:30:12 +01:00
Nicolas Werner
409ff22d80
Remove unused button class 2021-12-28 20:14:42 +01:00
Nicolas Werner
5ca98829f7
Some qt6 prep 2021-12-28 20:09:08 +01:00
Nicolas Werner
2866826356
Misc clang-tidy fixes 2021-12-28 19:12:15 +01:00
Nicolas Werner
960cf2995e
Fixup clang-tidy suggestion 2021-12-28 18:44:26 +01:00
DeepBlueV7.X
5a21029423
Merge pull request #853 from MTRNord/MTRNord/clang-tidy
Apply selective clang-tidy suggestions
2021-12-28 17:36:20 +00:00
tastytea
850d139e3d
Make custom emoticons twice as high as the font. 2021-12-27 23:16:26 +01:00
tastytea
5ac1195402
MxcImageProvider: Only use scaledToHeight if width <= 0. 2021-12-27 22:59:51 +01:00
tastytea
7086e23bdd
Request inline images in the right size and anti-alias them
- If an inline image has specified a height, add parameters to the
  image:// URI.
- Add scaled to the parameters, the images would be cropped otherwise.
- Extract the height from image:// URI and use it for requestSize.
- Use scaledToHeight instead of scaled.
2021-12-27 22:47:51 +01:00
MTRNord
7b2f7e65fd Run linter 2021-12-27 20:49:27 +01:00
Nicolas Werner
7742f12f30
Use body in alt text of custom emoji 2021-12-27 19:08:13 +01:00
rnhmjoj
9363f0b7c7
Make nheko usable without a secret storage service
This change adds the ability to run Nheko without a secrets storage
service[1]. The secrets are stored in plaintext under the [secrets]
section of nheko.conf. Since this is a "I know what I'm doing" type
of feature, it's disabled by default and can only be enabled with an
hidden setting `run_without_secure_secrets_service=true`.

Fixes issue #705.

[1]: https://freedesktop.org/wiki/Specifications/secret-storage-spec
2021-12-27 10:45:46 +01:00
Nicolas Werner
0897e4c062
Fix inclusion condition for overriden pack types 2021-12-27 06:40:47 +01:00
Nicolas Werner
ea6b19b307
Add an ugly custom emote completer using ~ 2021-12-27 06:23:36 +01:00
MTRNord
049613211a Apply (selective) Clang-tidy const function and new const pointer suggestions on TimelineModel 2021-12-23 02:55:25 +01:00
MTRNord
a872bdf8c5 Apply (selective) Clang-tidy move and some new detected const pointer suggestions on TimelineModel 2021-12-23 02:46:33 +01:00
MTRNord
02fcd0e7cf Apply (selective) Clang-tidy and clazy suggestions on TimelineModel 2021-12-23 02:33:46 +01:00
Nicolas Werner
eb1e54c8df
Make edits replace the previous notification on Linux 2021-12-22 00:18:56 +01:00
Nicolas Werner
1ea9dc469b
Use global threadpool 2021-12-21 15:57:46 +01:00
Nicolas Werner
8edc46dc16
Cleanup jdenticon code in the same way as blurhashes 2021-12-21 15:06:34 +01:00
Nicolas Werner
04cccb8283
Cleanup blurhash formatting 2021-12-21 12:34:52 +01:00
Nicolas Werner
d424145ee4
Modernize blurhashprovider implementation
Might fix #844

See
https://code.qt.io/cgit/qt/qtdeclarative.git/commit/examples/quick/imageresponseprovider/imageresponseprovider.cpp?h=5.15&id=b1f238568214e6587b829d6695677e55a99b1d40
for context.
2021-12-21 12:17:12 +01:00
Nicolas Werner
6be752e163
Set the app_id on wayland 2021-12-19 22:54:50 +01:00
Nicolas Werner
9b25ef3c0d
Set notification category 2021-12-19 09:36:00 +01:00
Nicolas Werner
c03e4c1261
Make Nheko show up in system notification settings on Linux
relates to #845
2021-12-19 09:35:59 +01:00
Nicolas Werner
09aded2bc8
Fix crash when receiving matrix uri
It seems like handling the message in a blocking manner is a no-go. I
have no idea how to fix that, so just use a queued connection for now...
(ASAN does not cooperate and just hides the crash D:)

fixes #842
2021-12-17 05:58:09 +01:00
DeepBlueV7.X
2ffd476e8f
Merge pull request #841 from LorenDB/qolImprovements
Quality-of-life improvements
2021-12-16 01:15:21 +01:00
Nicolas Werner
6d69248109
Strip space chars from recovery passphrase 2021-12-15 18:26:14 +01:00
Joseph Donofry
cce5d0534f
Use icns on macOS 2021-12-14 17:05:48 -05:00
Loren Burkholder
45b150fb58 make lint 2021-12-13 19:08:54 -05:00
Loren Burkholder
c09c0d35b8 Make opening room members from rooms settings dialog work 2021-12-13 19:08:54 -05:00
DeepBlueV7.X
0a3e647509
Merge pull request #835 from Thulinma/imagewindowrole
Added window role to image overlay
2021-12-14 01:02:47 +01:00
Nicolas Werner
d46e517e3a
Only show room pack button, when you can actually create one 2021-12-13 23:25:42 +01:00
Nicolas Werner
9b9d4bec70
Fix turnserver check not being started when restoring from cache 2021-12-13 18:32:54 +01:00
Nicolas Werner
bb600dd3d1
Show some avatar for image packs 2021-12-13 06:00:32 +01:00
Nicolas Werner
dae032172d
Add recently used reactions
fixes #435
2021-12-13 00:43:05 +01:00
Nicolas Werner
89e58f78f1
Fix a few shadowing warnings
fixes #824
2021-12-11 06:19:54 +01:00
Nicolas Werner
75b112f0c8
Support pinned messages
fixes #519
2021-12-11 06:10:41 +01:00
Nicolas Werner
cf31fff5fe
Fix blurry thumbnails AGAIN 2021-12-08 23:10:19 +01:00
Nicolas Werner
6367d94623
Fix lint 2021-12-08 02:44:58 +01:00
Nicolas Werner
07b5f0805f
Fix display of images, that can't be thumbnailed 2021-12-08 02:43:08 +01:00
Nicolas Werner
30791f7890
Get rid of threadpool for images 2021-12-08 02:43:03 +01:00
Nicolas Werner
b2b9cccb5e
Fix a few clang tidy warnings 2021-12-06 22:22:37 +01:00
Thulinma
9996411d15 Added window role to image overlay 2021-12-05 12:08:43 +01:00
Nicolas Werner
6760397f6c
Fix sanitizer warning about signed shifts 2021-12-04 02:43:33 +01:00
Marcus Hoffmann
a01bc14db6 InputBar: run clang-format 2021-12-03 01:54:43 +01:00
Marcus Hoffmann
a9d8059fb2 InputBar: Mark some functions as [[nodiscard]]
This warns when you the return value of those functions isn't used.

Suggested-by: Clang-Tidy: Function X should be marked [[nodiscard]]
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
9676b7709d InputBar: mark constrictor as explicit
Suggested-By:

Clang-Tidy: Single-argument constructors must be marked explicit to
avoid unintentional implicit conversions

More info: https://clang.llvm.org/extra/clang-tidy/checks/google-explicit-constructor.html
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
8aa4a60d12 InputBar: use X.empty() instead of !X.size()
Suggested-by:

Clang-Tidy: The 'empty' method should be used to check for emptiness instead of 'size'
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
abcbcecac1 InputBar: use auto type
Suggested-by:

Clang-Tidy: Use auto when initializing with new to avoid duplicating the type name
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
313bd649dd InputBar: use multi-arg string replacement
This could actually change the behaviour here (could, because I don't
know if we can hit this special case) but this should hopefully the
correct way of doing this.

There's some detailed explanation of the difference here:
https://doc.qt.io/qt-5/qstring.html#arg-14

> This is the same as str.arg(a1).arg(a2), except that the strings
> a1 and a2 are replaced in one pass. This can make a difference if
> a1 contains e.g. %1:

```
QString str;
str = "%1 %2";

str.arg("%1f", "Hello");        // returns "%1f Hello"
str.arg("%1f").arg("Hello");    // returns "Hellof %2"
```

Suggested-by:

Clazy: Use multi-arg instead
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
02aa87590b InputBar: use character argument instead of string
Suggested-by:

Clang-Tidy: 'find' called with a string literal consisting of a
single character; consider using the more effective overload
accepting a character
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
6d8d38490a InputBar: apply clang-tidy const reference suggestions
All suggested by:

Clang-Tidy: The parameter 'X' is copied for each invocation
but only used as a const reference; consider making it a const reference
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
abf4b3a0a3 InputBar: use QFileInfo::exists()
Suggested by:

Clazy: Use the static QFileInfo::exists() instead. It's documented to be faster.
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
5441ea8840 InputBar: remove unused imports 2021-12-03 01:37:00 +01:00
Nicolas Werner
b774a671da
Remember all the collapsed trees 2021-12-01 03:46:55 +01:00
Nicolas Werner
aa5d2098d0
Don't waste space for non existing subspaces 2021-12-01 00:46:02 +01:00
Nicolas Werner
65152252a4
Leaves can't collapse 2021-12-01 00:24:57 +01:00
Nicolas Werner
fe49beb68e
Hide me underneath the space tree 2021-12-01 00:04:01 +01:00
Nicolas Werner
b505fa42d5
Fix crash on redactions without because 2021-11-29 14:55:40 +01:00
Nicolas Werner
6266c917c0
Cleanup error logging a bit 2021-11-29 06:20:43 +01:00
Nicolas Werner
6779f0e509
Delete rooms even if we fail to leave 2021-11-29 06:06:51 +01:00
Joe Donofry
b920f8d7ca Change QML UI for redactions 2021-11-29 00:59:57 +00:00
Nicolas Werner
bd020bb473
If the locale is set to C, force english locale
This fixes date formatting as well as count based translations.
2021-11-27 03:16:53 +01:00
Nicolas Werner
c4ea429273
fix lint 2021-11-24 05:26:46 +01:00
Nicolas Werner
ff502f306c
Initialize client lazily
This prevents a use after free in the coeurl logging, if we exit immediately.
2021-11-24 05:20:27 +01:00
Nicolas Werner
0f2faff4e7
Use a more random hash to generate user colors
Fixes an issue where most uses just had their color determined by their
username length and distributes the colors a bit more evenly.
2021-11-24 01:33:22 +01:00
Nicolas Werner
a13f492e7d
Make clang-format <13 and clang-format >=13 behave the same
I think old clang-format is just buggy in those cases, so we should
reenable those blocks, once everyone has 13 or up.
2021-11-22 00:33:43 +01:00
DeepBlueV7.X
b1092c0f2f
Merge pull request #822 from Nheko-Reborn/dm-filter
Add a filter for direct chats
2021-11-21 22:46:51 +01:00
Nicolas Werner
70592911a1
Return nullopt for state events in rooms we are not in 2021-11-21 20:10:43 +01:00
Nicolas Werner
e7d4aec6ec
Only mark as direct, if invite was direct 2021-11-21 07:06:37 +01:00
Nicolas Werner
3d92e8ae60
Mark rooms as direct chats
Either by accepting an invite or manually using /converttodm and revert
with /converttoroom.
2021-11-21 06:13:45 +01:00
Nicolas Werner
4dc5b647c6
Pretty error printing 2021-11-21 06:10:24 +01:00
Nicolas Werner
5ef3250994
Add a filter for direct chats
fixes #317
2021-11-20 22:48:04 +01:00
Nicolas Werner
34a1b6267b
Make user colors a bit more vibrant 2021-11-19 23:58:20 +01:00
Nicolas Werner
b439e1fa41
Preliminary gstreamer 1.20 compatibility
The transceiver was made private in
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2241

The direction property was added here:
28b0be4036
2021-11-19 18:19:16 +01:00
Nicolas Werner
57fb0d79f9
Fix colors and alignment in dialogs 2021-11-18 22:33:45 +01:00
Loren Burkholder
8830ce25d1 Don't add a user twice 2021-11-16 18:40:48 -05:00
Loren Burkholder
b1c1274d96 Allow removing users from the invite dialog 2021-11-16 18:40:48 -05:00
Loren Burkholder
f3aeb4b044
Switch icon theme to Fluent icons 2021-11-17 00:37:26 +01:00
DeepBlueV7.X
be53fd9b00
Merge pull request #812 from Nheko-Reborn/jdenticon-packaging
Jdenticon packaging
2021-11-15 14:29:06 +01:00
Nicolas Werner
61d2d1c665
Support exif rotation on received videos
fixes #674
2021-11-15 03:36:30 +01:00
Nicolas Werner
715e2244b4
Cleanup qt-jdenticon loading 2021-11-15 01:23:15 +01:00
Nicolas Werner
0a6ac211f1
Fix being dropped into an empty room after a join 2021-11-14 22:39:42 +01:00
Nicolas Werner
d26fe37010
Disallow displaynames with only spaces or control characters 2021-11-14 17:37:19 +01:00
Nicolas Werner
38e3498978
Prevent edits from removing quotes at the beginning of a message 2021-11-13 03:21:42 +01:00
Nicolas Werner
b0530089ab
Fix some colors switched to yellow by accident 2021-11-13 03:21:42 +01:00
Nicolas Werner
1ab4d35579 Merge branch 'video_player_enhancements' into 'master'
Video player enhancements

See merge request nheko-reborn/nheko!15
2021-11-12 00:19:25 +00:00
Nicolas Werner
d6f4f3a647
Fix secrets status not shown after startup 2021-11-11 21:40:23 +01:00
Nicolas Werner
a99eff7c0c
Fix SSO login showing password prompt 2021-11-11 20:20:15 +01:00
Nicolas Werner
f9362c75cf
Fix no replies being rendered for edits sent from Element in encrypted rooms 2021-11-11 00:41:21 +01:00
Joseph Donofry
c68c8de74f
Merge remote-tracking branch 'nheko-im/master' into video_player_enhancements 2021-11-09 18:34:40 -05:00
Nicolas Werner
d11fcb0ff6
Fix parsing some exotic image packs 2021-11-09 20:22:02 +01:00
Joseph Donofry
c93a7b2435
Merge remote-tracking branch 'nheko-im/master' into video_player_enhancements 2021-11-08 18:32:19 -05:00
Nicolas Werner
c4c13a1da9
Fix redaction of edited messages 2021-11-08 19:32:14 +01:00
Nicolas Werner
ff560a09f5
Improve fetching of device keys after login 2021-11-08 17:01:22 +01:00
Nicolas Werner
809be93e20
Fix self verification status never updating 2021-11-07 21:27:58 +01:00
Nicolas Werner
7de24a4271
Don't try to load verification status before db is ready 2021-11-07 20:27:56 +01:00
Nicolas Werner
5ca1fb18bb
Move away from using an event loop to access secrets
Fixes messages in room flickering and being stuck

fixes #760
relates to #770
relates to #789
2021-11-07 03:52:57 +01:00
Nicolas Werner
d112d6b11f
Fix crash when clearing empty timeline 2021-11-06 00:40:39 +01:00
Nicolas Werner
410ec00848
Fix crash in debug code for matrix uri handler
fixes #776
fixes #590
2021-11-04 23:10:03 +01:00
Joseph Donofry
4bd0ec8939
Fix syntax issue 2021-11-03 23:54:51 -04:00
Joseph Donofry
8e433a7ed2
PlayableMediaMessage fixes on macOS 2021-11-03 23:06:32 -04:00
Nicolas Werner
373e124bf7
Fix translation nits 2021-11-04 01:10:56 +01:00
Nicolas Werner
e1b9a0c619
Update translations 2021-11-03 23:44:55 +01:00
Nicolas Werner
1a163f49e2
Fix unjoinable invites on mobile as well as unclickable previews 2021-11-03 22:35:54 +01:00
Nicolas Werner
211fd9d76c
Fix registration on matrix.org
This was a bit of a journey:
https://github.com/matrix-org/matrix-doc/pull/3471
But it should work now and we now use the UIAHandler everywhere.

fixes #670
2021-11-03 18:39:51 +01:00
Joe Donofry
e3002f7993 Fix macOS m.image notif crash 2021-11-03 02:42:19 +00:00
Nicolas Werner
a9dde2ef68 Merge branch 'macos_api_updates' into 'master'
Update macOS notifications to use UserNotifications framework

See merge request nheko-reborn/nheko!13
2021-11-02 01:33:36 +00:00
Joseph Donofry
912df2920e
Update macOS notifications to use UserNotifications framework 2021-11-01 20:48:51 -04:00
Nicolas Werner
ae121f6021
Clear @room warning after sending message
fixes #751
2021-11-02 00:41:07 +01:00
Nicolas Werner
12832b3c64
Fix loading spinner when switching to a fully loaded room
fixes #754
2021-11-02 00:28:39 +01:00
Nicolas Werner
8beeba8e48
Fix hidden spaces hiding themselves
fixes #745
2021-11-02 00:15:58 +01:00
Nicolas Werner
417cc07172
Fix crash on logout 2021-11-01 22:35:48 +01:00
Nicolas Werner
2aabe9dcac
Prompt user when there are unverified devices 2021-11-01 22:20:15 +01:00
Nicolas Werner
5688b2647e
Add self verification after login 2021-10-30 00:23:07 +02:00
Thulinma
662cb573e1 Allow changing device names, display last seen time and IP 2021-10-20 18:31:57 +02:00
Nicolas Werner
2902bbb7e7
Fix calculating hidden space children 2021-10-20 15:05:00 +02:00
Nicolas Werner
2981f71d22
lint using clang11 2021-10-17 17:33:59 +02:00
Nicolas Werner
6793bdf3fd
lint 2021-10-17 17:20:51 +02:00
Nicolas Werner
147dc9d4da
Use allow list for URI schemes 2021-10-17 17:18:14 +02:00
Nicolas Werner
a5030bdd4d
move device verification management to its own file 2021-10-17 17:18:14 +02:00
Nicolas Werner
550c80525a
Move voip and encryption stuff into their own directories 2021-10-17 17:18:14 +02:00
Thulinma
649c5ff86d Add support for listing devices that do not support encryption, add support for logging out devices.
Ticks off another box in #23!
2021-10-17 00:00:14 +02:00
Loren Burkholder
14488a8fe7 Use the same leave room dialog everywhere
This ports the leave room dialog to QML, everywhere. There are now no differences between the various leave dialogs.
2021-10-11 19:00:40 -04:00
Loren Burkholder
cd39e015d4 Remove unimplemented function declaration 2021-10-11 18:57:36 -04:00
DeepBlueV7.X
088765b427
Merge pull request #741 from LorenDB/qmlJoinRoomDlg
QML the join room dialog
2021-10-11 19:53:17 +00:00
DeepBlueV7.X
281d764aa3
Merge pull request #755 from Nheko-Reborn/bootstrapping
Support bootstrapping crosssigning
2021-10-09 23:35:09 +00:00
Loren Burkholder
e9ed12e27b QML the join room dialog 2021-10-09 17:14:33 -04:00
DeepBlueV7.X
7eb9071b50
Merge pull request #743 from LorenDB/qmlLogout
QML the logout dialog
2021-10-09 20:57:38 +00:00
Loren Burkholder
2f7ce48666 make lint 2021-10-09 16:48:30 -04:00
Nicolas Werner
ad1e6c8298
Support bootstrapping crosssigning
Showing the bootstrap state and showing there are unverified devices is
still missing.
2021-10-09 05:01:53 +02:00
DeepBlueV7.X
569606f35b
Simplify device list refresh logic 2021-10-07 20:01:55 +02:00
Nicolas Werner
47db1e5c65
Remove duplicated verification status calculation 2021-10-07 19:55:27 +02:00
Thulinma
456a41bcdf Added support for refreshing the device list, marking current device with a checkmark instead of a lock 2021-10-06 22:52:19 +02:00
Loren Burkholder
81406171a0 QML the logout dialog 2021-10-05 20:12:24 -04:00
Nicolas Werner
4dd5f9841d
Add additional check for invalid megolm sessions 2021-10-04 21:46:31 +02:00
Loren Burkholder
a6c3e3562c Fix some strings and translation stuff 2021-10-01 12:29:54 -04:00
Thulinma
94441e68fd Support pasting image/svg+xml format straight from supporting applications 2021-09-28 01:42:35 +02:00
Thulinma
c4b788917f Fixes for pasting images, especially under windows where the image mime type detection doesn't work as expected 2021-09-28 00:54:00 +02:00
Thulinma
6941c3d3d7 Fix --help and --version command line options when Nheko is already running. Also adds an info message when it sends a URI to another instance 2021-09-28 00:45:00 +02:00
Joseph Donofry
526c1cdcc4 Add Unicode 14.0 emoji 2021-09-25 02:19:44 -04:00
Nicolas Werner
a54f828fb4
Fix a few verification typos 2021-09-20 01:15:51 +02:00
Nicolas Werner
cfca7157b9
Change indentation to 4 spaces 2021-09-18 00:45:50 +02:00
DeepBlueV7.X
e118f3882d
Merge pull request #728 from Thulinma/goto
Improvements for linking to events
2021-09-17 10:19:58 +00:00
Patryk Cisek
d499fffb7e
Added a text field that allows choosing custom homeserver in "Room directory" dialog. (#727)
* Added a text field that allows choosing custom homeserver in "Room directory" dialog.

* Moved "Choose custom homeserver" text field to the right and shrinked it to 30% of "Room directory" dialog's width.

* Adding "server_name=" when needed when joining room.

When joining room that is hosted on a different homeserver than
the account is registered on, the request fails. In such scenario
the server has to be explicitly mentioned in a server_name URL
parameter. More info here:
https://matrix.org/docs/spec/client_server/r0.6.1#post-matrix-client-r0-join-roomidoralias

* Minor fix: intentation (4 spaces -> 8 spaces)

Co-authored-by: Patryk Cisek <patryk@cisek.email>
2021-09-17 10:12:56 +00:00
Thulinma
1d5bf56cf9 Improvements for linking to events
- Fixes scrolling to an event not being reliable
- Adds new /goto command that can open URLs, go to events, or go to message indexes.
- Refactored ChatPage::handleMatrixUri() to contain the handling originally in Nheko::openLink(), and makes it return a boolean based on whether the URL was handled internally or not.
2021-09-16 02:17:07 +02:00
Nicolas Werner
5bff9df4ae
Workaround for broken fetchMore() with reuseItems 2021-09-15 23:38:01 +02:00
DeepBlueV7.X
d6eeaa1c04
Merge pull request #721 from symphorien/hotlist
Implement a binding to go to a room with unread messages
2021-09-14 19:00:50 +00:00
Nicolas Werner
f91a0267e6
Add workaround for crash on some jdenticon inputs 2021-09-14 16:10:04 +02:00
Guillaume Girol
82b1cc4e5f add Alt+A keybinding to switch to next room with unread messages 2021-09-14 12:00:00 +00:00
Nicolas Werner
f032c75e6a
Remove unused prototype 2021-09-13 23:45:09 +02:00
DeepBlueV7.X
8e2f1e9dce
Merge pull request #416 from LorenDB/jdenticon
Add jdenticon support
2021-09-13 21:31:29 +00:00
Nicolas Werner
1b82b8242b
Keep identities for users cached
There is not really a reason to stop tracking them, just because the
server says so. We might still want to show a users profile, etc.
2021-09-13 14:31:22 +02:00
Loren Burkholder
b9255803fb Streamline getting other user id from invited direct chat 2021-09-11 19:45:01 -04:00
Loren Burkholder
0b8527eb1b Don't try to check whether a preview is direct 2021-09-11 19:35:31 -04:00
Loren Burkholder
fb53fc86b6 Fix invites crashing the whole app 2021-09-11 19:35:31 -04:00
Loren Burkholder
87bff3493d Add direct chat handling for previews and invites 2021-09-11 19:35:31 -04:00
Loren Burkholder
094ddb48a2 Don't bother with crop 2021-09-11 19:35:31 -04:00
Loren Burkholder
2147ce8556 Only try loading plugin once 2021-09-11 19:35:31 -04:00
Loren Burkholder
f14762e6a5 Always show jdenticon toggle (disable if no plugin) 2021-09-11 19:35:31 -04:00
Loren Burkholder
0e3f3f2b20 make lint 2021-09-11 19:35:31 -04:00
Loren Burkholder
17729ce662 Fix jdenticons in various places 2021-09-11 19:35:31 -04:00
Loren Burkholder
356723fe06 Use more descriptive property name 2021-09-11 19:35:31 -04:00
Loren Burkholder
a23c586cde make lint 2021-09-11 19:35:31 -04:00
Loren Burkholder
dcdf00dcc5 Finish fixing rounded avatars 2021-09-11 19:35:31 -04:00
Loren Burkholder
350fc593ed Use better id loading methodology 2021-09-11 19:35:31 -04:00
Loren Burkholder
1ac4f3a97b Remove unused struct 2021-09-11 19:35:31 -04:00
Loren Burkholder
c991f20284 Make sure jdenticon toggle is always initialized 2021-09-11 19:35:31 -04:00
Loren Burkholder
350d1977af Add some fancy effects to jdenticon 2021-09-11 19:35:31 -04:00
Loren Burkholder
1fdecdcc21 Get direct chat jdenticons to line up 2021-09-11 19:35:31 -04:00
Loren Burkholder
7a200d7e77 Add licenses 2021-09-11 19:35:31 -04:00
Loren Burkholder
651d620afd Remove unnecessary stuff 2021-09-11 19:35:31 -04:00
Loren Burkholder
ebe80a6006 Fix typo 2021-09-11 19:35:31 -04:00
Loren Burkholder
069115ba5f Don't add toggle for jdenticon if the plugin can't be found 2021-09-11 19:35:31 -04:00
Loren Burkholder
4e4a9c6e0c Fix braces; make lint 2021-09-11 19:35:31 -04:00
Loren Burkholder
d2e193ff78 Add jdenticon support 2021-09-11 19:35:31 -04:00
Thulinma
45b5629fe4 Fix a few more HTML injections 2021-09-12 00:09:24 +02:00
Nicolas Werner
f9a334233f
Don't allow images in username change messages and user completer
Sorry, no fun for you!
2021-09-09 21:20:34 +02:00
Nicolas Werner
495a4334df
Fix day separator when loading older messages
fixes #632
2021-09-08 12:47:44 +02:00
Thulinma
a39cb537ae More profile improvements:
- Now scrolls entire profile instead of only device list, improving the experience on smaller screens
- Fixed centering of room name
- Allow profile to be sized smaller to match the new scrolling behavior
- Silenced warning about room being null for global profiles
- Matrix URLs now open global profiles instead of room-specific profiles if the user is not in the currently opened room
- Opening global profile from room specific profile now uses openGlobalUserProfile function instead of reinventing the wheel
2021-09-08 01:26:05 +02:00
Nicolas Werner
80fa3e801f
Fix duplicate check possibly leaving large gaps if initial state was not in timeline 2021-09-06 01:41:23 +02:00
Nicolas Werner
6490ee3a34
Add workaround for broken key counts 2021-09-06 00:32:09 +02:00
DeepBlueV7.X
d30401c3c4
Merge pull request #713 from Thulinma/noMoreDuplicates
Fixed duplicate messages appearing in timeline if server sent them
2021-09-05 22:24:16 +00:00
Nicolas Werner
70e20f5d10
Fix key count updates on conduit 2021-09-06 00:07:14 +02:00
Nicolas Werner
e035d1407a
Conduit does not send count, if it didn't change 2021-09-05 23:15:44 +02:00
Thulinma
2525579610 Fixed duplicate messages appearing in timeline if server sent them 2021-09-05 23:00:29 +02:00
Thulinma
e7564396fb Improvements to user profiles:
- Set a minimum width on the profile window (avatar size + margins)
- Made avatar editing a separate button, so you can zoom in on your own avatars
- Added hover text to avatar/displayname change buttons, which clarify where they will apply for global/room-specific profiles
- Added display of room name for room-specific profiles, with hover text that explains what that means.
- Added way to open global profile for users from their room-specific profiles (globe button next to room name)
2021-09-05 19:05:43 +02:00
Nicolas Werner
99f3296a64
Make error case with unverified master key more descriptive 2021-09-03 15:08:16 +02:00
Thulinma
6bd62f8283 Make desktop alerting independent from notification support in the homeserver. 2021-09-03 03:13:15 +02:00
Nicolas Werner
3528fe4e5d
Warn the user before they ping the whole room 2021-09-02 03:15:39 +02:00
Nicolas Werner
1b07bde788
update translations 2021-09-01 01:23:20 +02:00
Nicolas Werner
98533f01d9
Fix session always being rotated if 'verified only' is active 2021-08-31 16:40:31 +02:00
Nicolas Werner
529c93503d
Remove useless ; 2021-08-31 04:13:51 +02:00
Nicolas Werner
c80e253a24
Stop encrypting all sessions with secret 2021-08-31 04:06:51 +02:00
Nicolas Werner
79ecad5a09
Require a working secrets storage 2021-08-31 01:51:03 +02:00
Nicolas Werner
fc7df50d9a
Fix another leak when creating an animated image without an image 2021-08-29 19:24:14 +02:00
Nicolas Werner
7645ab1736
Fix memory leak of animated image textures 2021-08-29 18:38:11 +02:00
Nicolas Werner
374ad0a816
Small image pack editor improvements
- add missing mimetype
- allow removal of images from pack
- allow GIF as a format
- don't divide size by 2 if the image is very small already
2021-08-29 17:22:49 +02:00
Nicolas Werner
15bf643347
Add option to only play animated images on hover 2021-08-29 16:32:28 +02:00
Nicolas Werner
47c7c4c777
cleanup QSettings usage a bit 2021-08-29 16:32:28 +02:00
Nicolas Werner
ef068ac2b3
Support animated images
fixes #461
2021-08-29 16:32:28 +02:00
Nicolas Werner
09c041c8ac
Use in memory media player instead of storing unencrypted files on disk 2021-08-29 16:32:22 +02:00
Nicolas Werner
e88fc1996e
Fix warning about double reference qualifier 2021-08-26 04:02:09 +02:00
Nicolas Werner
d02e77f69a
Implement key backup upload 2021-08-26 03:43:52 +02:00
Nicolas Werner
23697e28a3
warn about online keybackup and default to off 2021-08-26 03:43:51 +02:00
Nicolas Werner
2cabd107bf
Useless capture 2021-08-22 15:09:27 +02:00
Nicolas Werner
055f0d6709
Even if you just change the log level, ensure that this compiles before pushing... 2021-08-22 14:56:44 +02:00
Nicolas Werner
63998a217a
Add db migration that clears the cache
This fixes spaces or stickers not showing up for old databases as well
as the wrong format of the state_keys db.
2021-08-22 14:45:57 +02:00
Nicolas Werner
5416988057
Trust key forwards from the original sender 2021-08-20 14:00:35 +02:00
Nicolas Werner
b63289ba54
Cleanup @room escape logic a bit 2021-08-20 14:00:35 +02:00
Nicolas Werner
3d2f503305
Add workaround for stickers not showing on iOS
see: https://github.com/vector-im/element-ios/issues/2353
2021-08-18 18:16:29 +02:00
Nicolas Werner
c2e777f3e4
Update translations 2021-08-17 23:51:15 +02:00
Nicolas Werner
5b460861b1
Allow accepting knocks in the timeline
As well as selecting more join rules.
2021-08-17 23:31:25 +02:00
Nicolas Werner
5287ba38f9
Fix all rooms being opened on startup 2021-08-17 19:00:00 +02:00
Nicolas Werner
995b62122a
Fi lineendings 2021-08-17 14:22:37 +02:00
Nicolas Werner
028bcd5b7c
Update join button in room directory after join 2021-08-17 14:21:04 +02:00
DeepBlueV7.X
b01496f9b4
Merge pull request #659 from kamathmanu/nhekoRoomDirectory
Nheko room directory
2021-08-17 11:56:47 +00:00
Nicolas Werner
7d62af7cda
Remove unneeded code 2021-08-17 09:59:13 +02:00
Nicolas Werner
56db0dbc7d
Allow downloading keys from key backup 2021-08-17 03:24:12 +02:00
Nicolas Werner
1e7756c508
Fix dpi scaling of avatars 2021-08-16 12:48:45 +02:00
DeepBlueV7.X
b1634d60a0
Merge pull request #680 from govynnus/token-registration
Support token authenticated registration
2021-08-15 18:22:01 +00:00
Callum Brown
0da58c476c Run linter 2021-08-15 15:51:10 +01:00
Nicolas Werner
42d2b10d5d
Round images in the image provider 2021-08-14 17:17:50 +02:00
kamathmanu
eaddfb4f73 Clean up final nits 2021-08-14 09:44:34 -04:00
Nicolas Werner
69e65cef2f
Fix shadowing 2021-08-14 02:52:43 +02:00
Nicolas Werner
110fef5c68
Request keys when opening a room for the first time 2021-08-14 02:41:34 +02:00
Nicolas Werner
13633c7644
Ensure device signatures always get verified on device update 2021-08-14 02:06:48 +02:00
Nicolas Werner
9bad584931
Show verification status in memberlist 2021-08-13 23:58:26 +02:00
Nicolas Werner
18ea01e198
Show if there are unverified devices in a room
Also fixes some issues where nested transactions will poison the
verification cache.
2021-08-13 23:19:54 +02:00
Callum Brown
4fa644f2b7 Fix cancel button on registration token dialog 2021-08-12 17:57:07 +01:00
Callum Brown
7d484a8228 Use QInputDialog to get registration token 2021-08-12 16:41:29 +01:00
kamathmanu
9ab1296131 Ran qmlformat and make license 2021-08-12 10:45:42 -04:00
kamathmanu
570e5ffde2 Added Spinner while rooms load 2021-08-12 09:50:52 -04:00
Callum Brown
b56a1be0bd Support token authenticated registration
Using a dialog after username and password have been provided.
2021-08-11 15:07:06 +01:00
DeepBlueV7.X
d84c1f59a4
Merge pull request #679 from Kirillpt/iss_672
add shortcut Escape button for closing images. issue #672
2021-08-11 00:09:16 +00:00
Nicolas Werner
02b217d009
Remove some unused headers 2021-08-11 01:30:55 +02:00
kirp
5335e043e7
linting 2021-08-11 02:29:36 +03:00
kirp
c7295d7fd1
change slot close, to signal closing 2021-08-11 02:26:26 +03:00
kirp
a88c68c0a8
add shortcut Escape button for closing images issues 672 2021-08-11 01:39:27 +03:00
Nicolas Werner
5e2526dac4
fix sticker packs being uneditable in some rooms 2021-08-11 00:39:01 +02:00
Nicolas Werner
dbea031a86
Fix potential crash when trying to read room info too early 2021-08-11 00:21:24 +02:00
Nicolas Werner
7f633a0298
Add rate limiting to unknown device list path 2021-08-09 20:52:54 +02:00
kamathmanu
6a75e5270c Fix nits from code review 2021-08-09 09:18:08 -04:00
Nicolas Werner
71290e208d
Enable insecure fallback for secret storage 2021-08-08 18:57:38 +02:00
Nicolas Werner
ad57a336dc
Breaking: Change secret names and fix bug when storing secrets 2021-08-08 18:38:05 +02:00
Nicolas Werner
8784156da5
Fix trying to delete unsupported events 2021-08-08 11:35:27 +02:00
Nicolas Werner
b73bd2859c
Protect against replay attacks 2021-08-07 23:54:35 +02:00
kamathmanu
2dfccda73c
Merge branch 'master' into nhekoRoomDirectory 2021-08-07 21:20:43 +00:00
kamathmanu
14f8f4d61b Fix Duplicate fetched chunk 2021-08-07 17:13:18 -04:00
kamathmanu
4ec0c8c9bb make lint 2021-08-07 17:00:28 -04:00
kamathmanu
d3d7844106 Made only unjoined rooms joinable 2021-08-07 17:00:28 -04:00
kamathmanu
04d0d413e3 Linted code 2021-08-07 17:00:28 -04:00
kamathmanu
0d700d9933 Implemented Room Directory model to store and provide QML view with public room data from mtxclient 2021-08-07 17:00:12 -04:00
Nicolas Werner
72bbad7485
Show encryption errors in qml and add request keys button 2021-08-07 22:51:09 +02:00
DeepBlueV7.X
9f742fe23d
Merge pull request #664 from govynnus/token-registration
Reorganise src/RegisterPage.cpp
2021-08-07 00:27:39 +00:00
Nicolas Werner
cc22309c5b
this is not needed for translations 2021-08-06 04:43:56 +02:00
Nicolas Werner
e5a6b2b6ef
Allow creating new packs 2021-08-06 04:31:53 +02:00
Nicolas Werner
16d0190f4e
Allow uploading additional stickers 2021-08-06 04:31:53 +02:00
Nicolas Werner
a57a15a2e0
Basic sticker pack editor 2021-08-06 04:31:53 +02:00
Callum Brown
bd31726f2f Allow all characters when checking server input
So IDNs are not rejected. Invalid server names will be caught later.
2021-08-05 17:25:37 +01:00
Callum Brown
bb6a57644c Make things private slots 2021-08-05 16:12:36 +01:00
Nicolas Werner
87e81498b7
Fix window placement on wayland and add close buttons
We explicitly set a parent. We can't assign to
ApplicationWindow.transientParent though, only to
Window.transientParent, so we just call setTransientParent in C++.
2021-08-04 02:27:50 +02:00
Callum Brown
041d8fb56c Reorganise src/RegisterPage.cpp 2021-08-02 20:08:55 +01:00
DeepBlueV7.X
619525e62f
Merge pull request #662 from LorenDB/qml-all-the-things
QML all the things, part 3: Raw message dialog
2021-08-01 10:51:21 +00:00
Nicolas Werner
25e7a985b8
Add option to only send encrypted messages to verified devices
fixes #636
2021-08-01 00:59:46 +02:00
Loren Burkholder
dab1c9068a QML the raw message dialog 2021-07-31 12:11:15 -04:00
Nicolas Werner
760f675792
Ensure the encrypted rooms db is always created 2021-07-31 17:59:03 +02:00
DeepBlueV7.X
5b5a89b522
Merge pull request #655 from LorenDB/qml-all-the-things
QML all the things, part 2: Read receipts dialog
2021-07-30 22:08:51 +00:00
Loren Burkholder
f48f244dcb Use correct date format 2021-07-30 08:44:07 -04:00
Loren Burkholder
7dcdd51a8b make lint 2021-07-30 08:19:05 -04:00
Loren Burkholder
3cb4209d7b
Reformat dates
Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>
2021-07-30 07:56:25 -04:00
Nicolas Werner
e7877ae5af
Fix crash when we don't have keys for other device when receiving an olm message from it 2021-07-30 12:44:08 +02:00
Nicolas Werner
e4cd8b1c11
Log how many rooms we loaded 2021-07-30 03:31:49 +02:00
Nicolas Werner
6409462a96
Rate limit olm session creation 2021-07-30 03:31:29 +02:00
Loren Burkholder
368e13fac3 Use built-in sorting so that dynamic updates work 2021-07-29 21:07:52 -04:00
Loren Burkholder
7e538851d6 Use a QSortFilterProxyModel instead of resetting the model 2021-07-29 21:07:52 -04:00
Loren Burkholder
1777a1b52f Reset model instead of doing weird convoluted updates 2021-07-29 21:07:52 -04:00
Loren Burkholder
2fe010c04a Dynamically update read receipts 2021-07-29 21:07:52 -04:00
Loren Burkholder
2be91b591d make lint 2021-07-29 21:07:52 -04:00
Loren Burkholder
9c7bde22d1 Remove unused headers
Why didn't I see these earlier?
2021-07-29 21:07:52 -04:00
Loren Burkholder
8a329d6517 Remove Avatar class
RIP
2021-07-29 21:07:52 -04:00
Loren Burkholder
0d42909e40 Simplify read receipt storage 2021-07-29 21:07:52 -04:00
Loren Burkholder
774a9fdc3a Remove outdated comment 2021-07-29 21:07:52 -04:00
Loren Burkholder
4dd994ae00 QML the read receipts list
There are probably a few things wrong with this, but I'm going to call it good enough for an initial commit
2021-07-29 21:07:16 -04:00
Nicolas Werner
d955444dc1
Port to explicit connect syntax
Also fix a lot of warnings.
2021-07-27 22:35:38 +02:00
Nicolas Werner
6222ae88ce
Fix crash on invalid utf8 in decrypted events 2021-07-26 18:59:21 +02:00
Nicolas Werner
e8e48305c8
Remove version checks for unsupported Qt versions 2021-07-26 18:59:20 +02:00
Nicolas Werner
570d00b000
Fix crash when storing secrets
Nested QEventLoops are scary. Ultimately we shouldn't use them, but I
have no better solution right now.

fixes #656
2021-07-25 17:07:10 +02:00
Nicolas Werner
80b9d4528e
Remove SSSS requests on the UI thread
might fix #656
2021-07-25 15:39:49 +02:00
Nicolas Werner
8b3d0c14d0
Properly verify OTK signature 2021-07-25 14:10:38 +02:00
Nicolas Werner
8444683271
Don't send encrypted olm messages to ourselves 2021-07-25 13:51:21 +02:00
Nicolas Werner
f4e670d8d5
Fix SSSS unlock without a password set
fixes #657
2021-07-25 12:13:24 +02:00
Joe
fb3c443ce0 Remove additional key requests preference code 2021-07-24 18:27:59 -04:00
Joe
3f567a8da7 Merge master and fix conflicts 2021-07-24 18:26:25 -04:00
Nicolas Werner
a61678242b
Fix edge case that could lead to no new one time keys being uploaded 2021-07-24 14:59:14 +02:00
Nicolas Werner
bef2cbbd7f
Try to avoid more olm loops 2021-07-23 19:08:44 +02:00
Nicolas Werner
dba2fb525a
Remove unused this capture 2021-07-23 18:21:55 +02:00
DeepBlueV7.X
ca3d17dc22
Merge pull request #651 from LorenDB/qml-all-the-things
Fix a few UI things
2021-07-23 16:17:43 +00:00
Nicolas Werner
eafbab6ae1
Add menu to enable or disable stickers globally 2021-07-23 17:43:17 +02:00
Nicolas Werner
0c798554b5
Rename image pack model 2021-07-22 20:05:25 +02:00
Loren Burkholder
0ce7d02abe make lint 2021-07-22 07:55:12 -04:00
Nicolas Werner
5ae73bf8fd
Add trailing newline to session export to make gomuks happy 2021-07-22 12:00:14 +02:00
Loren Burkholder
bbecadf1a8 Add functionality for loading global user profile where needed
This is so viewing profiles from the invite dialog will work as expected.
2021-07-21 20:38:18 -04:00
DeepBlueV7.X
1d3579196a
Merge pull request #650 from LorenDB/qml-all-the-things
Open room members when member info label clicked
2021-07-21 23:18:21 +00:00
Loren Burkholder
44be4c1f4a Move various room auxiliary functions to TimelineManager 2021-07-21 18:56:20 -04:00
Loren Burkholder
b17002929c Open room members when member info label clicked 2021-07-21 12:36:02 -04:00
Nicolas Werner
f401ed16ac
Tweak rainbows slightly 2021-07-21 17:44:29 +02:00
Nicolas Werner
8a300f7333
Fix some media not being cached properly
Most noticeable in the goose chooser.
2021-07-21 16:55:28 +02:00
Loren Burkholder
6458614ea1 make lint 2021-07-20 21:48:10 -04:00
Loren Burkholder
efda94ca50 Modify message to be more accurate 2021-07-20 21:48:10 -04:00
Loren Burkholder
77c636f3d3 Insert user before loading avatar/display name 2021-07-20 21:48:10 -04:00
Loren Burkholder
44d2818e0c Add property for plain room name 2021-07-20 21:48:10 -04:00
Loren Burkholder
21eb312f69 Only run spinner while loading members 2021-07-20 21:48:03 -04:00
Loren Burkholder
a9ed83a1ce Remove size_t property stuff 2021-07-20 21:48:03 -04:00
Loren Burkholder
48669302ec make lint 2021-07-20 21:48:03 -04:00
Loren Burkholder
10c6f2b43f Use Nico's favored formatting (*shrugs*) 2021-07-20 21:48:03 -04:00
Loren Burkholder
4384554587 Only invite if there is something/someone to invite 2021-07-20 21:48:03 -04:00
Loren Burkholder
f30c3db860 Fix loaded member count 2021-07-20 21:47:54 -04:00
Loren Burkholder
baa9dfe110 Clean up code 2021-07-20 21:47:46 -04:00
Loren Burkholder
913d0fd139 Make macOS CI happy (again) 2021-07-20 21:47:37 -04:00
Loren Burkholder
d2d5229ede make lint 2021-07-20 21:47:32 -04:00
Loren Burkholder
db8af24bea Don't emit signal in constructor 2021-07-20 21:47:32 -04:00
Loren Burkholder
60b3c34d78 Permissions only needs a roomid to function 2021-07-20 21:47:32 -04:00
Loren Burkholder
c566a62541 Clean up code 2021-07-20 21:47:22 -04:00
Loren Burkholder
a176de5f11 Make sure to use the default room id if none is specified 2021-07-20 21:47:22 -04:00
Loren Burkholder
f0c88fc474 Get member info loading working 2021-07-20 21:47:22 -04:00
Loren Burkholder
a76fc7d200 Add a fancy loading spinner to the member list 2021-07-20 21:47:22 -04:00
Loren Burkholder
e1acf5d324 make lint 2021-07-20 21:47:22 -04:00
Loren Burkholder
6c57fa6c5b QML the invite dialog
This also adds a property `roomId` to TimelineModel.
2021-07-20 21:47:22 -04:00
Loren Burkholder
77a0c574bf QML the room member list 2021-07-20 21:47:05 -04:00
Nicolas Werner
88ed0fade7
Explicitly reload data in delegates, if related events got loaded 2021-07-20 14:09:19 +02:00