Konstantinos Sideris
dec643e6ea
v0.6.0
2018-09-21 16:44:45 +03:00
Konstantinos Sideris
fc684f6571
Require login when the cache format changes (regression on #444 )
2018-09-21 14:43:52 +03:00
Konstantinos Sideris
b0e3a7c7fa
Add close buttons to all dialogs
2018-09-21 13:56:39 +03:00
Konstantinos Sideris
2a2b52e07f
Center dialogs around the main window
2018-09-21 11:30:02 +03:00
Konstantinos Sideris
ce26f041ad
Add method to center widgets & clean up unused headers
2018-09-21 10:55:24 +03:00
Konstantinos Sideris
ecc346a6da
Close dialogs on confirmation
2018-09-20 09:59:14 +03:00
Konstantinos Sideris
d4ce7a9dda
Use confirm as the default button
2018-09-20 08:52:31 +03:00
Konstantinos Sideris
1b7816f7ca
macOS: Use the native emoji picker
...
fixes #79
2018-09-19 23:38:36 +03:00
Konstantinos Sideris
1716502eff
Improvements on the system theme
2018-09-19 22:42:26 +03:00
Konstantinos Sideris
3e49afd6ba
Fix compile warnings
2018-09-18 18:48:14 +03:00
Konstantinos Sideris
440237cdb9
Clean up unread rooms after initial sync
2018-09-16 11:41:53 +03:00
Konstantinos Sideris
1f3535bc43
Bump cache version due to incompatible changes
2018-09-16 11:19:53 +03:00
Konstantinos Sideris
9ad4aab657
Ignore sessions that cannot be parsed
2018-09-16 11:19:18 +03:00
Konstantinos Sideris
a9ddc3b3d3
Implement import/export of megolm session keys ( #358 )
2018-09-15 23:52:14 +03:00
Konstantinos Sideris
cf71a5858c
Update mtxclient
2018-09-15 00:40:16 +03:00
Konstantinos Sideris
8767ea181d
Mark unread rooms as such in the room list
...
fixes #313
2018-09-13 19:15:58 +03:00
Konstantinos Sideris
9f3de8679d
Temporary fix to work with mx-reply tags
2018-09-13 16:10:45 +03:00
Konstantinos Sideris
bf4d559523
Strip paragraph tags
...
fixes #438
2018-09-13 11:02:54 +03:00
Konstantinos Sideris
e88cfa1b20
Use <em></em> for m.emote messages
2018-09-12 21:46:33 +03:00
Konstantinos Sideris
7a6816a9f6
Remove italics from m.notice messages
2018-09-12 20:59:27 +03:00
Konstantinos Sideris
9c06ba5d25
Open user profile on matrix.to links
2018-09-12 20:54:44 +03:00
Konstantinos Sideris
e9ee29978d
Add context menu option to show the raw message
...
fixes #437
2018-09-12 16:27:25 +03:00
Konstantinos Sideris
bc38fcec6c
Move some info logs to debug
2018-09-12 14:28:54 +03:00
Konstantinos Sideris
dd73a4b278
Trim whitespace from text messages
2018-09-12 14:20:12 +03:00
Konstantinos Sideris
a0a76e352b
Enable html attributes
2018-09-12 13:40:42 +03:00
Konstantinos Sideris
4565f2cf00
Don't break the layout on empty text messages
2018-09-12 13:12:24 +03:00
Konstantinos Sideris
074608dec1
Switch to libcmark
2018-09-11 14:56:09 +03:00
Konstantinos Sideris
72333aec59
Enable Qt auto scaling
...
fixes #397
2018-09-08 17:10:42 +03:00
Konstantinos Sideris
667ee75d66
Show sidebar after initial sync
...
fixes #412
2018-09-08 15:50:35 +03:00
Konstantinos Sideris
5267e0262b
Remove custom stylesheet for qmenu
2018-09-08 14:55:30 +03:00
Konstantinos Sideris
0588cb3dbf
macOs: Add missing border on the TopBar
2018-09-08 14:16:51 +03:00
Konstantinos Sideris
19626dbb10
Small refactoring on the EditModal
2018-09-08 13:20:54 +03:00
Konstantinos Sideris
245a3735e5
Remove debug prints
2018-09-07 20:31:47 +03:00
Konstantinos Sideris
9e8f0b7409
Initial support for sending markdown formatted messages
...
fixes #283
2018-09-07 20:05:30 +03:00
Konstantinos Sideris
a21db789e7
Fix double href links on username pills
2018-09-07 14:52:29 +03:00
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
0c6a3b6282
Remove captcha dialog from the member list
2018-09-05 18:05:27 +03:00
Konstantinos Sideris
797a69fd90
Fallback to the login screen when the one-time keys cannot be uploaded
2018-09-05 16:57:26 +03:00
Konstantinos Sideris
4a30eb30b3
Enable colors in console logger
2018-09-04 13:17:21 +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
27fed83083
Retry initial sync on generic network errors ( #422 )
2018-08-31 16:25:27 +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
e29fceaee4
Fix a use-after-free error during logout
2018-08-31 09:10:47 +03:00
Konstantinos Sideris
b10e1bafc8
Add temp fix to work with servers that don't support e2ee endpoints
...
fixes #371
2018-08-30 20:37:24 +03:00
Konstantinos Sideris
ee2ba93ec4
Only call /sync when retrying initial sync ( #422 )
2018-08-30 13:39:09 +03:00
Konstantinos Sideris
183975be1a
Increase LMDB's map size ( #413 )
2018-08-29 16:47:28 +03:00
Konstantinos Sideris
b7362298b0
Make lambda that updates avatar a class method
2018-08-29 16:15:31 +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
9f43ff876a
Show the room id in the room settings modal
...
fixes #416
2018-08-26 14:56:35 +03:00
Konstantinos Sideris
345dca3544
Add method to delete old messages periodically
...
fixes #413
2018-08-25 21:08:43 +03:00
Rudi Floren
c8a59f2d6e
Add device ID and device fingerprint to settings page like in Riot. ( #407 )
2018-08-21 06:22:51 +00:00
Konstantinos Sideris
6d1f2ea9b3
Remove pixel ratio from image scaling
2018-08-20 11:58:13 +03:00
Konstantinos Sideris
04c888c44c
Fix crash on logout
2018-08-13 09:35:55 +03:00
Konstantinos Sideris
b06203a34b
Install the bundled spdlog
2018-08-12 10:49:51 +03:00
Colin Lord
bcd92c0604
Enable compilation on FreeBSD ( #403 )
2018-08-12 09:33:36 +03:00
Konstantinos Sideris
cebd8cbc19
Add option to disable desktop notifications
...
fixes #388
2018-08-11 18:26:17 +03:00
Konstantinos Sideris
05547086fb
Increase the minimum modal size
2018-08-11 17:55:44 +03:00
Konstantinos Sideris
aa2f6ce77d
Simplify dialog creation
2018-08-11 13:50:56 +03:00
Konstantinos Sideris
a339f5062f
Add solid background in TypingDisplay
2018-08-10 10:58:46 +03:00
Konstantinos Sideris
040e29dfb9
Add bottom border line on Linux
2018-08-09 18:45:18 +03:00
Konstantinos Sideris
d4c3dac28f
Remove the reserved space gap for the typing notifications
2018-08-09 18:20:17 +03:00
Konstantinos Sideris
aec5587947
Allow user to configure join rules for a room
2018-08-09 16:38:11 +03:00
Konstantinos Sideris
509d3eb8b4
Add missing update() on typing display
2018-08-09 13:39:39 +03:00
Konstantinos Sideris
f955ec762c
Use archives instead of repos to fetch dependencies
2018-08-08 14:15:14 +03:00
Konstantinos Sideris
43a4676282
Remove hover event from emoji picker
...
fixes #398
2018-08-08 13:15:19 +03:00
Konstantinos Sideris
3fb57ac049
Add tooltips for the message indicators ( #377 )
2018-08-08 12:57:50 +03:00
Konstantinos Sideris
8d3ef470f9
Remove hardcoded colors from the typing display
2018-08-08 12:51:40 +03:00
Konstantinos Sideris
df42fdc80f
Remove unwanted whitespace from the user settings menu
2018-08-01 21:26:34 +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
06b30b3cca
Use double instead of int when scaling pixmaps ( #393 )
2018-07-30 12:35:15 +03:00
Konstantinos Sideris
6ffb747421
Add tab-completion for usernames
...
fixes #394
2018-07-29 21:58:18 +03:00
Konstantinos Sideris
f8a1ed84a8
Fix background color on the room list widget
2018-07-26 12:12:00 +03:00
Konstantinos Sideris
899249a485
Add missing tooltips on buttons
...
fixes #249
2018-07-25 23:28:37 +03:00
Konstantinos Sideris
a845ccb8d7
Use repaint instead of update on the loading animation
2018-07-25 23:10:45 +03:00
Konstantinos Sideris
1f47a6af3a
Improve the style of snackbar a bit
2018-07-25 23:07:56 +03:00
Konstantinos Sideris
8386dd73ce
Enable scrollbar on the room list for macOS ( #174 )
2018-07-25 18:59:33 +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
59a42183bc
Fix issue with missing communities due to an unregistered metatype
2018-07-25 16:34:54 +03:00
Konstantinos Sideris
35067088f9
Disable paint updates when removing the room filter
2018-07-24 21:43:51 +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
6b42e3b202
Simplify the message shown when another app instance is detected
2018-07-22 20:26:50 +03:00
Konstantinos Sideris
98548b1b8b
Minor modal adjustments
2018-07-22 20:01:12 +03:00
Konstantinos Sideris
85e93a88a6
Add option to specify the scale factor
...
fixes #357
fixes #335
fixes #230
2018-07-22 19:48:58 +03:00
Konstantinos Sideris
18695d636d
Add input field to specify the device name on login
2018-07-22 18:41:15 +03:00
Konstantinos Sideris
3d2e29bfa0
Remove pixel values from modals, use pointSize instead
2018-07-22 18:03:12 +03:00
Konstantinos Sideris
24bad93f6b
Add option to ignore key requests altogether
2018-07-22 16:36:25 +03:00
Konstantinos Sideris
0247b47553
Refactor the room settings menu to look like the user profile
2018-07-22 15:41:06 +03:00
Konstantinos Sideris
5dfd26abc5
Reject key requests for users that are not members of the room
2018-07-22 14:11:28 +03:00
Konstantinos Sideris
73e3161c88
Disable paint updates while applying room filtering ( #380 )
2018-07-21 14:57:56 +03:00
Konstantinos Sideris
6c65213c83
Reuse the profile modal & adjust its spacing relative to the font size
2018-07-21 14:33:35 +03:00
Konstantinos Sideris
54c7eb374a
Lower the complexity of the group filtering algorithm ( #380 )
...
The old algorithm during filtering will check every room
if it's part of the group. O(N*G)
The room ids for a group are now stored in a map for faster lookup
so the search can be completed in a single pass. O(N)
2018-07-21 13:35:36 +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
e8cb2cee0c
Use a smaller icon size in the sidebar
2018-07-20 17:44:09 +03:00
Konstantinos Sideris
83008f44e4
Show device list in user profile & add option to create 1-1 chat
2018-07-20 16:15:50 +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
00f99d9ae5
Fix variable shadowing on clang
2018-07-18 17:11:02 +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
Benedikt Heine
c942a4b9fc
Explicitly set no timeout for notifications
...
The notification spec handles -1 and 0 as special values:
-1 -> representation for "undef"
0 -> infinitely
values above 0 represent the timeout in ms.
The notification messages should disappear again and with 0, this insn't
the case. Setting it to -1 lets the notification manager decide the
timeout and displays the notification like all others.
2018-07-16 12:13:05 +02:00
Benedikt Heine
a7cf30005b
Update image_data hint to current notification spec
...
The current notification spec says image-data should get used instead of
image_data.
2018-07-16 12:12:07 +02:00
Konstantinos Sideris
21185a44e7
Properly reset the autocomplete anchor when the popup closes
...
fixes #305
2018-07-15 21:26:48 +03:00
Konstantinos Sideris
fde066e236
Use MainWindow instead of QApplication::activeWindow to reference the main window
...
The latter will not always return a valid pointer.
fixes #363
2018-07-15 20:58:10 +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
4059f17e15
Add the -v / --version option, which displays the version string of the application.
2018-07-15 14:53:18 +03:00
Konstantinos Sideris
c4613b210e
Fix Windows build
2018-07-14 16:27:51 +03:00
Konstantinos Sideris
73dbd3c8dd
Re-enable groups
2018-07-14 12:08:16 +03:00
Konstantinos Sideris
363e3735f1
Allow close events from the session manager ( #353 )
2018-07-11 20:56:44 +03:00
Max Sandholm
80ebe3f29d
Working D-Bus desktop notifications ( #361 )
...
* Working D-Bus desktop notifications
* Remove return type on constructor
* Fix the Windows placeholder class
* Fix wrong variable name
* Fix windows and macOS versions of notificationsmanager
2018-07-11 17:33:02 +03:00
Konstantinos Sideris
e7f30b57e8
Use QSharedPointer::data to be compatible with Qt < 5.11
2018-07-11 16:49: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
1312c139cc
Don't pre-load messages from caches
...
Requires backfilling which is not implemented.
fixes #365
2018-07-09 12:17:22 +03:00
Konstantinos Sideris
172d111d1c
Add -Wshadow
2018-07-08 22:10:40 +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
6c5309d9eb
Fix regressions regarding UI resizing
...
The room list would be hidden only through window resizing.
2018-07-04 00:05:05 +03:00
Konstantinos Sideris
4073d61045
Add shortcuts for chat-only & Room List-only views
...
Ctrl-O -> Chat
Ctrl-L -> Room list
2018-07-01 22:57:14 +03:00
Konstantinos Sideris
ccc6cd8dab
Mark encrypted messages with a lock icon
2018-07-01 19:40:53 +03:00
Konstantinos Sideris
95ce2ef920
Implement dekstop notifications on Windows ( #290 )
2018-07-01 00:23:16 +03:00
Konstantinos Sideris
5b5d35fd1f
Add basic support for replies ( #292 )
2018-06-30 15:13:15 +03:00
Konstantinos Sideris
d56446ce97
Allow arbitrary resizing of the main window & restore sidebar's size
...
fixes #160
fixes #163
fixes #187
fixes #127
2018-06-29 14:28:48 +03:00
Konstantinos Sideris
4344b6964f
Save timeline messages in cache for faster startup times
2018-06-28 16:17:39 +03:00
Konstantinos Sideris
1d6746e4c9
Upgrade matrix-structs & mtxclient
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
cb21433dc8
Allow copying the version info in the settings page
2018-06-23 01:46:18 +03:00
Konstantinos Sideris
a72eca339f
Immediately shutdown the http client on exit
2018-06-22 19:47:55 +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
604cdcec8a
Save the olm account after we create new one-time keys
...
Otherwise after a restart the old account will be loaded and we
won't be able to decrypt messages from devices using the new one-time keys.
Also new one-time key upload requests will fail due to conflicts with
the existing keys with the same keyid.
2018-06-18 12:56:47 +03:00
Konstantinos Sideris
4514d13948
Improve logging a bit
2018-06-18 12:29:24 +03:00
Konstantinos Sideris
197b2dac74
Fix regressions regarding invites & slowness during shutdown
2018-06-17 18:44:04 +03:00
Konstantinos Sideris
d081fe9b9e
Setup BinTray
2018-06-17 16:53:14 +03:00
Konstantinos Sideris
66249ed126
Correctly mark received messages whose response came after /sync
2018-06-17 02:29:19 +03:00
Konstantinos Sideris
c0d32ef319
Update CI instructions
2018-06-17 00:23:49 +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