Commit graph

1003 commits

Author SHA1 Message Date
Loren Burkholder
2dc7492456 make lint 2023-03-01 18:04:36 -05:00
Loren Burkholder
9616ee51b3 Use QSet<QString> instead of QStringList 2023-03-01 18:01:02 -05:00
Loren Burkholder
ec8820ac64 Fix some nitpicks 2023-03-01 17:04:17 -05:00
Loren Burkholder
24d401365e Always open the invite dialog properly from the member list 2023-02-28 20:40:22 -05:00
Loren Burkholder
b4f8d4947f Simplify code a bit 2023-02-28 20:10:25 -05:00
Loren Burkholder
22ac5d861e Move command calculation logic into InputBar 2023-02-28 20:10:25 -05:00
Loren Burkholder
b6ef00b5ee Show warning when invalid command is entered
Fixes #1363

Please note that this doesn't prompt when you try to send a message with a bad command.
2023-02-28 20:10:25 -05:00
Loren Burkholder
5540ba34c7 Delete some unneeded stuff 2023-02-23 23:10:23 -05:00
Nicolas Werner
5164c2c5e8
Dedup reactions 2023-02-22 00:03:55 +01:00
Nicolas Werner
96f791daf1
Get rid of year in license headers
See also:
https://daniel.haxx.se/blog/2023/01/08/copyright-without-years/
https://hynek.me/til/copyright-years/
2023-02-21 23:48:49 +01:00
Nicolas Werner
d9dd4a3934
Fix forwarding stickers
fixes #1182
2023-02-20 01:18:06 +01:00
Nicolas Werner
ac4c9e024e
More template bloat reduction 2023-02-20 01:04:49 +01:00
Nicolas Werner
20740c9976
Automatically fetch keys for undecrypted messages after verification
Also fix rerendering edited messages after keys are received.

fixes #1375
fixes #770
fixes #888
2023-02-18 03:08:23 +01:00
Nicolas Werner
05727b8a45
Fix edits in other clients jumping out of threads
fixes #1373
2023-02-18 01:33:10 +01:00
Nicolas Werner
7734c4735a
Make notifications show the window again
fixes #1329
2023-02-01 18:24:25 +01:00
Nicolas Werner
0c3d46795b
Make single newlines cause a <br> by default
This should match what people expect from a chat application much
better. The biggest reason not to do this, is because some people might
paste markdown documents. For those people there is now a /cmark
command, which disables most of our extensions to cmark, including the
newline behaviour. There is a long discussion on the Fediverse and on
Github linked below.

Mastodon https://fosstodon.org/@deepbluev7/109771668066978726
fixes #757
2023-01-31 18:22:12 +01:00
Nicolas Werner
872b00807f
Make newline behave consistently in markdown mode
by always sending as formatted when a newline is in the body
2023-01-28 10:50:39 +01:00
Joseph Donofry
8835040db6
Pause ParticleEmitter when not in use (#1284)
* Pause ParticleEmitter when not in use

* Use timer instead to pause particle system
2023-01-14 02:23:07 +01:00
Nicolas Werner
ba56c9f408
There was always supposed to be a failed state for events 2023-01-12 23:51:22 +01:00
Nicolas Werner
c5edd21e6b
Try to make clang-format happy 2023-01-09 05:00:22 +01:00
Nicolas Werner
008f71cdbd
Document Safari workaround 2023-01-09 04:53:14 +01:00
Nicolas Werner
6d8dabf623
Possibly fix paste from Safari 2023-01-09 04:49:53 +01:00
Nicolas Werner
b2ccf766ba
Navigate to space when room is selected
fixes #1260
2023-01-07 01:39:08 +01:00
Nicolas Werner
3a6a905429
A whole new year full of excitement and possibilities! 2023-01-02 04:25:33 +01:00
Nicolas Werner
5f315d8a3c
Fix pagination after timeline clear 2023-01-02 04:21:26 +01:00
Nicolas Werner
114fa0868a
Skip notifying for your own messages 2022-12-28 21:57:57 +01:00
Nicolas Werner
01915360b4
Fix state reset command 2022-12-27 16:15:49 +01:00
Nicolas Werner
f98b289ba2
Show invite reason in the UI (hidden by default) 2022-12-27 01:40:25 +01:00
Joseph Donofry
cc89a36f46 Fix formatting issues 2022-12-20 17:16:18 -05:00
Joseph Donofry
a2e120a8a3 Add 'clear' button to search bar and implement search indicator via spinner 2022-12-20 16:34:55 -05:00
Nicolas Werner
d4336b56d6
Make unfiltered messages hidden by default 2022-12-19 05:19:22 +01:00
Nicolas Werner
0597041d8e
Fix searching more past again 2022-12-19 03:47:30 +01:00
Nicolas Werner
b314f41f6b
Fix searching past the end 2022-12-19 03:42:43 +01:00
Nicolas Werner
51cbe0f6d8
Add some documentation for how the background filtering works 2022-12-19 03:30:54 +01:00
Nicolas Werner
561085ef9d
Make searching incremental to allow some userinteraction still 2022-12-19 03:24:22 +01:00
Nicolas Werner
952827d629
Add a button to room the upgraded room in the timeline 2022-12-13 05:08:22 +01:00
Loren Burkholder
fa0c14b846
confetti (#1243)
* 🎉 (confetti) message support.  Thanks @LorenDB !
2022-12-10 10:17:15 -05:00
Nicolas Werner
283d6361e8
Properly check for target room encryption 2022-12-07 12:47:03 +01:00
Nicolas Werner
59703d3c25
Implement MSC3664, pushrules for related events 2022-12-05 18:39:47 +01:00
Nicolas Werner
f440b41195
Fix stack overflow when filtering timeline 2022-11-22 19:18:10 +01:00
Nicolas Werner
3576589ea7
Fix crash in slash completer 2022-11-09 16:38:17 +01:00
Nicolas Werner
485babba14
Implement a completer for commands
fixes #429
2022-11-09 04:59:06 +01:00
Nicolas Werner
76347f1c6f
Continue fetching past messages when searching 2022-11-03 23:26:59 +01:00
Nicolas Werner
40ac55ddd9
Highlight higlight tweaks in the timeline
fixes #400
fixes #1136
2022-11-01 23:26:21 +01:00
Nicolas Werner
b28fa86e6a
Enable -Wconversion 2022-10-26 01:10:35 +02:00
Nicolas Werner
e9a0f0a89e
Fix previews getting sorted above normal rooms 2022-10-22 21:39:29 +02:00
Nicolas Werner
74128cf8bd
Fix excessive summary calls 2022-10-20 01:01:18 +02:00
Rohit Sutradhar
ac48c33286
VoIP v1 implementation (#1161)
* Initial commit for VoIP v1 implementation

* Added draft of event handlers for voip methods

* Added event handlers for VoIP events, added rejectCall, added version tracking for call version for V0 and V1 compatibility

* Added call events to the general message pipeline. Modified Call Reject mechanism

* Added message delegates for new events. Modified hidden events. Updated handle events.

* Updated implementation to keep track of calls on other devices

* Fixed linting

* Fixed code warnings

* Fixed minor bugs

* fixed ci

* Added acceptNegotiation method definition when missing gstreamer

* Fixed warnings

* Fixed linting
2022-10-14 13:49:05 +00:00
Nicolas Werner
37009906bb
Evaluate push rules locally 2022-10-13 17:55:07 +02:00
Nicolas Werner
af699eb83e
Mark classes as final where possible 2022-10-10 14:38:45 +02:00
Nicolas Werner
a4524cd9af
Fix date separator 2022-10-07 11:11:07 +02:00
Nicolas Werner
f1c1f18f81
Add a slow way to search a room 2022-10-06 22:02:26 +02:00
Nicolas Werner
857d9cf2b6
Basic thread filtering
The reply pagination logic is a bit weird rn though.
2022-10-06 16:16:24 +02:00
Loren Burkholder
8ecbb39dc6
cppcheck stuff (#1200)
* cppcheck stuff

* Update src/ui/RoomSettings.cpp

Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>

* Update src/ui/RoomSettings.cpp

Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>

* Fix linting

Co-authored-by: DeepBlueV7.X <nicolas.werner@hotmail.de>
2022-10-03 21:57:30 +00:00
DeepBlueV7.X
5e9eb845ab
Merge pull request #1202 from Nheko-Reborn/grammar
Grammar
2022-10-03 21:37:01 +00:00
Nicolas Werner
33403d650a
Don't strip fallbacks on plain text bodies 2022-10-03 21:53:10 +02:00
Nicolas Werner
b55b5a8321
Fix a few more warnings 2022-10-01 23:57:44 +02:00
Nicolas Werner
7ec842ba51
Replace some user visible mentions of spaces 2022-10-01 15:20:38 +02:00
Loren Burkholder
df834ffc48 Various grammar fixes (mostly removing commas) 2022-09-30 00:23:39 -04:00
Nicolas Werner
c34c9f9035
Automatically switch to threading when replying 2022-09-30 03:43:42 +02:00
Nicolas Werner
88cbac1695
Basic threading support 2022-09-30 03:27:05 +02:00
Nicolas Werner
851333a50d
Switch to clang-format14 2022-09-25 20:05:08 +02:00
Nicolas Werner
79ce60382a
Fix crash when deleting room summary
Since this is used across different threads, we have to delete it on the
event loop.

Thank you, q234rty, for the help with debugging this.
2022-09-24 10:36:26 +02:00
Nicolas Werner
ce2d4defde
Try to handle rate limiting 2022-09-23 15:47:25 +02:00
Nicolas Werner
efb9970178
Switch to C++20 2022-09-22 20:18:04 +02:00
Nicolas Werner
421b15c05c
Show the community of a room 2022-09-20 21:26:46 +02:00
Hiers
8071b192b8
Line to indicate first unread message (#1147)
* First draft of unread line feature.

* Minor visual fix.

* Removed unnecessary ternary operator.

* Extended unread line functionality to work on minimised window or focusing another window.

* Fix for unread line not showing when last read message is hidden.

* Minor performance improvement. Fix for misbehaving event2order DB at application start.

* Fix for possible performance issues when user has joined a large number of rooms.

* Fix for breaking macos and clazy builds.

* Changed on windows focus function to refresh unread line if room is unread.

* Unread line is removed when user sends a message.

* Linting.

* Fixed unread line to work in standalone room windows.

* Switch isRoomUnread for index 0.

* Merged try/catch blocks.

* Fix for crash on opening a room invite.

* Call fullyReadEventId function when used instead of storing it and passing it through.

* Function that was meant to sync the unread line was relying on an async function, oops.

* Linting again.

* More linting...

* Minor changes.
2022-09-11 23:05:20 +00:00
Nicolas Werner
1d7575036e
Allow creating spaces 2022-09-05 02:00:20 +02:00
Nicolas Werner
130e1b43fb
Fix empty widgets still being shown 2022-08-30 22:05:33 +02:00
Nicolas Werner
ff87bef030
Fix inline image escape order 2022-08-18 22:05:47 +02:00
Nicolas Werner
9714486447
Hide uneditable spaces from menu 2022-08-10 00:28:23 +02:00
Nicolas Werner
376612e4eb
Support editing space children 2022-08-10 00:20:44 +02:00
Nicolas Werner
d5a6a46bc5
Pass context object to properly disconnect when this is deleted 2022-07-23 13:55:53 +02:00
Nicolas Werner
0ad74590d4
Fix matrix.to link escaping
Properly escapes in replies and with unmatched [].

fixes #854
2022-07-20 14:05:10 +02:00
Nicolas Werner
07bb95fbcd
Fix crash when creating link to room preview 2022-07-19 18:57:22 +02:00
Nicolas Werner
fd6742ec00
Fix crash on empty image packs 2022-07-18 18:24:36 +02:00
Nicolas Werner
761e90891f
Properly figure out entity that is controlled by policy rule 2022-07-17 01:20:20 +02:00
Nicolas Werner
dd11188dff
Fix muting spaces 2022-07-16 12:03:03 +02:00
Nicolas Werner
415f097b9c
Add missing include 2022-07-16 04:09:52 +02:00
Nicolas Werner
7f3095c9d8
Fix subobject initialization 2022-07-16 03:53:13 +02:00
Nicolas Werner
ada20253e7
Fix dm counts after restart 2022-07-16 03:49:41 +02:00
DeepBlueV7.X
f62cb77680
Merge pull request #1062 from Nheko-Reborn/perSpaceNotifs
Per-space notification bubbles
2022-07-16 01:10:07 +00:00
Nicolas Werner
7b33d14277
Make notification count calculation more efficient 2022-07-16 03:07:00 +02:00
Nicolas Werner
f76fd4ca83
WIP 2022-07-15 16:19:06 +02:00
r0hit05
6663e5683d Updated call event namespaces to voip 2022-07-15 17:20:05 +05:30
Nicolas Werner
aa63e50cea
Merge remote-tracking branch 'origin/perSpaceNotifs' into perSpaceNotifs 2022-07-14 01:26:48 +02:00
Nicolas Werner
11fa4821aa
Support rendering policy rules 2022-07-09 15:36: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
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
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
1145610694
Fix timestamps after loading 2022-06-26 01:48:16 +02:00
Nicolas Werner
6e97f3da06
Refresh last message when paginating backwards 2022-06-25 14:05:52 +02:00
brausepulver
09c646d3fa
Add copy link to room context menu (#1101) 2022-06-23 23:44:50 +00: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
8cdfbf9391
Get rid of 'using json = nlohmann::json' 2022-06-17 22:03:54 +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
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
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
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
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
b75ef07896
Add basic support for multiple windows 2022-05-06 00:36:53 +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
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
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
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
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
82cdb483a9
Fix arrow keys 2022-03-30 06:24:23 +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
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
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
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