Commit Graph

127 Commits

Author SHA1 Message Date
Konstantinos Sideris
896fe069b6 Use proxy objects on lambdas instead of raw pointers
When the object is destroyed the connections will be removed
automatically by Qt.

fixes #433
2018-09-07 12:24:09 +03:00
Konstantinos Sideris
a1af99becb Put back removed links 2018-09-06 22:41:02 +03:00
Konstantinos Sideris
8ad01f520a Add initial support for displaying formatted messages 2018-09-06 22:34:41 +03:00
Konstantinos Sideris
990a3a97c7 Merge matrix-structs into the client lib 2018-09-01 13:35:10 +03:00
Konstantinos Sideris
e9a8e51208 Guard against flickering for items added to the top of the timeline 2018-08-31 18:34:54 +03:00
Konstantinos Sideris
28dda237c2 Don't block on empty from token 2018-08-31 14:56:55 +03:00
Konstantinos Sideris
641364c105 Handle some more edge cases in timeline 2018-08-31 10:47:27 +03:00
Konstantinos Sideris
d608950bea Stop calling /messages if the prev_batch token is empty 2018-08-31 09:57:04 +03:00
Konstantinos Sideris
56ee290b03 Add the ability to change the room avatar
fixes #418
2018-08-29 16:00:07 +03:00
Konstantinos Sideris
db9c37d336 Call adjustSize before showing the timeline widget 2018-08-28 00:19:39 +03:00
Konstantinos Sideris
7e16730692 Remove unnecessary height setting for timeline messages
This will remove some minor flickering (hopefully for good)
2018-08-27 21:32:24 +03:00
Konstantinos Sideris
aa2f6ce77d Simplify dialog creation 2018-08-11 13:50:56 +03:00
Konstantinos Sideris
d4c3dac28f Remove the reserved space gap for the typing notifications 2018-08-09 18:20:17 +03:00
Konstantinos Sideris
3fb57ac049 Add tooltips for the message indicators (#377) 2018-08-08 12:57:50 +03:00
Konstantinos Sideris
b5b5faa5ec Consider the scale ratio when scaling down images
fixes #393
2018-08-01 21:10:03 +03:00
Konstantinos Sideris
069f0a1fbd Use native scrollbar in the timeline 2018-07-25 18:48:11 +03:00
Konstantinos Sideris
bfdbd49e3e Align timeline widgets to the bottom 2018-07-25 16:46:57 +03:00
Konstantinos Sideris
6583686a7c Remove spacer & set sizePolicy on the timeline view & widgets
This was causing some flickering when many messages were added.
Mostly visible on macOS.
2018-07-23 21:54:13 +03:00
Konstantinos Sideris
9d718fccf4 Clear timeline widgets when they exceed a certain limit (#158)
That's a fix to deal with long running sessions which will end
up taking more & more memory given enough time.
2018-07-21 12:09:23 +03:00
Konstantinos Sideris
d7e5171bfa Create user profile modal 2018-07-20 12:02:35 +03:00
Konstantinos Sideris
5540fc0737 Add user avatar after the 'encryption is enabled' message
fixes #378
2018-07-19 18:46:36 +03:00
Konstantinos Sideris
e4dedbcaba Mark own read messages with a double checkmark (#377) 2018-07-17 23:50:18 +03:00
Konstantinos Sideris
0e814da91c Move all files under src/ 2018-07-17 16:37:25 +03:00
Konstantinos Sideris
31d09dbd68 De-duplicate the m.room.encryption event 2018-07-15 20:32:22 +03:00
Konstantinos Sideris
a9f02128a2 Use the http link for video messages
Add method to convert matrix content URIs to http links
2018-07-15 20:05:31 +03:00
Konstantinos Sideris
33490eddab Remove the v2 namespace from the http client 2018-07-15 19:09:08 +03:00
Konstantinos Sideris
e6b45263bc User reverse iterator instead of while loop 2018-07-15 18:58:09 +03:00
Konstantinos Sideris
6f07ab433e Send image dimensions in m.image event
fixes #215
2018-07-10 23:31:51 +03:00
Konstantinos Sideris
6d474b77f1 Fix variable shadowing that caused the key response to be null 2018-07-08 21:24:44 +03:00
Konstantinos Sideris
278eccc040 Add context menu action to request encryption keys 2018-07-07 23:59:23 +03:00
Konstantinos Sideris
9a0e18dea7 Add a timeline message when encryption is enabled 2018-07-07 13:39:53 +03:00
Konstantinos Sideris
67458dd2f8 Mark all decrypted messages with a padlock
fixes #351
2018-07-07 12:35:29 +03:00
Konstantinos Sideris
3bc8d791fb Don't download dependencies during build
fixes #346
2018-07-04 01:38:54 +03:00
Konstantinos Sideris
ccc6cd8dab Mark encrypted messages with a lock icon 2018-07-01 19:40:53 +03:00
Konstantinos Sideris
5b5d35fd1f Add basic support for replies (#292) 2018-06-30 15:13:15 +03:00
Konstantinos Sideris
4344b6964f Save timeline messages in cache for faster startup times 2018-06-28 16:17:39 +03:00
Konstantinos Sideris
9802ea8809 Send one claim request per user that includes all devices
Add missing megolm algorithm field that was causing
the "unknown algorithm" error.
2018-06-25 17:19:52 +03:00
Konstantinos Sideris
74396e9aba Verify signature of identity keys before sharing the megolm session
Ignore devices that fail the verification.
2018-06-20 00:38:34 +03:00
Konstantinos Sideris
961c880d55 Handle olm & lmdb exceptions during message decryption
fixes #345
2018-06-19 22:53:22 +03:00
Konstantinos Sideris
7ecabcd614 Mark encrypted rooms when processing room state 2018-06-18 18:36:19 +03:00
Konstantinos Sideris
4514d13948 Improve logging a bit 2018-06-18 12:29:24 +03:00
Konstantinos Sideris
66249ed126 Correctly mark received messages whose response came after /sync 2018-06-17 02:29:19 +03:00
Konstantinos Sideris
24e0285210 Don't try to send megolm session keys to devices with no one-time keys 2018-06-15 16:45:39 +03:00
Konstantinos Sideris
9102a141f3 Handle OLM_MESSAGE type of messages properly 2018-06-15 01:35:31 +03:00
Konstantinos Sideris
8e9d210a2a Rename the log namespace to avoid symbol clash with the math function
- Patch the olm repo with a CMakeLists.txt file
2018-06-14 02:28:35 +03:00
Konstantinos Sideris
5d47cc3940 Add support for sending encrypted messages 2018-06-13 12:28:00 +03:00
Konstantinos Sideris
e5dd64c63a Add method to convert PendingMessage's to event types
Add more logging during message sending
2018-06-12 22:35:10 +03:00
Konstantinos Sideris
36cb62748b Add menu option to enable encryption in a private room 2018-06-12 09:45:26 +03:00
Konstantinos Sideris
626c680911 Add support for displaying decrypted messages 2018-06-10 20:03:45 +03:00
Konstantinos Sideris
b89257a34b Migrate to mtxclient for the http calls 2018-06-09 16:03:14 +03:00