Konstantinos Sideris
4c4ea557b3
Replace shared pointers of MatrixClient with a single instance
2018-05-08 18:43:56 +03:00
Konstantinos Sideris
5aff3e4309
Don't send notification for the room that is currently open
2018-05-07 12:00:49 +03:00
Konstantinos Sideris
506cf68072
Implement desktop notification for mac
2018-05-05 22:40:24 +03:00
Konstantinos Sideris
ed9501023a
Add support for retrieving the notification events ( #33 )
2018-05-05 16:38:41 +03:00
Konstantinos Sideris
156e1e62a6
Fetch user avatars while browsing the member list
2018-05-04 17:59:29 +03:00
Konstantinos Sideris
8dd21b1dae
Remove the extra top margin from timeline widgets
2018-05-04 15:47:04 +03:00
Konstantinos Sideris
7dab863738
Remove flickering by updating auto-complete menu items in-place
...
Instead of deleting the current items and creating new ones.
2018-05-03 17:29:02 +03:00
Konstantinos Sideris
d6ac72ab3f
Default to the first item in room selection menu
...
- Add backwards navigation with backtab
fixes #316
2018-05-03 15:19:28 +03:00
Konstantinos Sideris
916c0d48af
Move access token to header
2018-05-02 16:00:37 +03:00
Konstantinos Sideris
7f69c71814
Handle invalid access token
2018-05-02 15:30:08 +03:00
Konstantinos Sideris
23accc50d6
Show user avatar for messages on different day or time gap > 15 mins
...
fixes #278
2018-05-01 23:32:11 +03:00
Konstantinos Sideris
763330fd3c
Add member list
2018-05-01 19:35:28 +03:00
Konstantinos Sideris
3097037c3d
Add prototype room settings menu
2018-04-30 21:41:47 +03:00
Konstantinos Sideris
21c68c5824
Show room tooltips when the sidebar is collapsed
2018-04-30 09:27:12 +03:00
Konstantinos Sideris
62d54146a7
More consistent spacing between messages
2018-04-29 20:39:22 +03:00
Konstantinos Sideris
95120c602b
Refactor utils::getMessageDescription
2018-04-29 15:42:40 +03:00
Konstantinos Sideris
7621dc0cb0
Fix UI inconsistencies between room list & communities
...
fixes #204
fixes #255
2018-04-28 15:27:12 +03:00
Konstantinos Sideris
bee9278a1a
Remove old/unused code
2018-04-28 13:16:37 +03:00
Konstantinos Sideris
3f80725c33
Add support for displaying m.sticker events
...
fixes #291
2018-04-27 22:15:44 +03:00
Konstantinos Sideris
c971602b2d
Add remove_if for maps
2018-04-27 18:19:43 +03:00
Konstantinos Sideris
2c6192d08f
Fix clicking on room list suggestions
2018-04-27 14:04:13 +03:00
Konstantinos Sideris
b72e48cbab
Improve room searching
...
fixes #257
2018-04-27 01:57:46 +03:00
Konstantinos Sideris
31f5fbf891
Improve the date separator widget
2018-04-25 15:38:25 +03:00
Konstantinos Sideris
b655a503a7
Fix signal redefinition warning
2018-04-24 23:57:49 +03:00
Konstantinos Sideris
4fd8eccece
Adjust completion menu to fit its contents
2018-04-24 16:03:50 +03:00
Konstantinos Sideris
649d73a7bd
Clear typing notifications when the user list is empty
...
fixes #304
2018-04-24 14:50:47 +03:00
Konstantinos Sideris
0028fdfe6c
Remove map from room_id to QPixmap from ChatPage
...
The avatars are loaded from cache
2018-04-24 14:13:05 +03:00
Konstantinos Sideris
4f6ffb6e73
Fix CI errors
2018-04-22 15:37:23 +03:00
Konstantinos Sideris
1642f3cf40
Update invites in the UI after sync
2018-04-22 14:19:05 +03:00
Konstantinos Sideris
c0e355f485
Properly clean stale invites
2018-04-22 12:26:41 +03:00
Konstantinos Sideris
6d0bc0c05e
Strip whitespace from room names for QuickSwitcher
2018-04-22 11:27:00 +03:00
Konstantinos Sideris
7a16e05b14
Initialize views before room list
2018-04-22 10:54:52 +03:00
Konstantinos Sideris
29bd8b71d1
Implement media cache
2018-04-21 21:18:57 +03:00
Konstantinos Sideris
54091cf403
Bump cache format version
2018-04-21 17:27:38 +03:00
Konstantinos Sideris
9d825b07ca
Remove dead code
2018-04-21 17:27:06 +03:00
Konstantinos Sideris
74ff905582
Clean up Top Bar
2018-04-21 17:21:44 +03:00
Konstantinos Sideris
4a2f1af090
Save read receipts
2018-04-21 17:14:16 +03:00
Konstantinos Sideris
2f00fc51bf
Cache refactoring
2018-04-21 16:35:03 +03:00
Konstantinos Sideris
ca66940ec3
Popup improvements
...
- ESC closes the popup.
- Up/Down arrows for navigation.
- BackTab for backwards navigation.
fixes #301
fixes #302
2018-04-14 14:12:36 +03:00
christarazi
0b3029b3c4
Implement pressing tab to navigate auto completion ( #294 )
...
Fixes #287
* Fix pop-up not showing when less than max
* Select suggestion by pressing Enter
2018-04-10 11:47:23 +03:00
Konstantinos Sideris
5125433552
Hide emoji panel if it's not under the mouse cursor
...
fixes #254
fixes #246
2018-04-08 15:49:53 +03:00
Konstantinos Sideris
8dc17ccecb
Bump version
2018-04-03 15:17:34 +03:00
Konstantinos Sideris
33a8628059
Update the room list after a redacted event has been removed
...
fixes #286
2018-04-03 10:24:35 +03:00
Konstantinos Sideris
0a09ce0f75
Update first & last sender after message deletion
...
fixes #282
2018-03-27 21:07:39 +03:00
Konstantinos Sideris
284d200361
Fix invite button colors on the system theme
...
fixes #248
2018-03-27 20:21:14 +03:00
Konstantinos Sideris
f4675165ea
Add environment variable to allow insecure connections (self-signed certs)
...
NHEKO_ALLOW_INSECURE_CONNECTIONS=1 ./nheko
fixes #260
2018-03-27 10:38:00 +03:00
Konstantinos Sideris
ed0b345e76
Pin invites to the top of the room list
...
fixes #252
2018-03-26 22:02:53 +03:00
Konstantinos Sideris
15931fc322
Track invites so they can be removed outside of nheko
...
fixes #213
2018-03-26 21:39:00 +03:00
Konstantinos Sideris
f9fd03b958
Simplify variant usage
2018-03-26 20:41:16 +03:00
Konstantinos Sideris
f6f46119a6
Fix CI errors
2018-03-25 23:05:44 +03:00
Konstantinos Sideris
f02d3ee606
Replace std::thread with QtConcurrent
2018-03-25 21:50:45 +03:00
Konstantinos Sideris
72d5d6d286
Show avatars in the completion popup
2018-03-25 15:59:47 +03:00
Konstantinos Sideris
553a97c8bb
Add basic support for username auto-completion
...
fixes #40
2018-03-24 23:16:15 +02:00
Konstantinos Sideris
f77a103209
Add version info in the settings menu
...
fixes #239
2018-03-22 16:20:22 +02:00
Konstantinos Sideris
64a6771dc8
Fix text color on room switcher
...
fixes #245
2018-03-22 09:16:17 +02:00
Konstantinos Sideris
480de2d30b
Adjust unread msg bubble
2018-03-20 21:23:01 +02:00
Hawkheart
42733eeb86
TimelineView: remove unneeded date separators when deleting a redacted message ( #279 )
...
fixes #276
2018-03-20 08:59:00 +02:00
Konstantinos Sideris
d2d65b6662
More stylistic changes & dark theme tweaks
2018-03-19 20:26:14 +02:00
Konstantinos Sideris
cef385e1e4
Use the full with of the roomlist for the last message
2018-03-19 18:10:48 +02:00
Konstantinos Sideris
bac1f46127
Dark theme revisited
2018-03-18 23:38:04 +02:00
Konstantinos Sideris
48ee36f6b2
Add border in community list & minor refactorings ( #204 )
2018-03-18 17:38:57 +02:00
Konstantinos Sideris
b70e09c7ec
Add border line above the text input
2018-03-18 17:08:13 +02:00
Konstantinos Sideris
7253dc2c54
roomlist: Put the message timestamp on the top
2018-03-18 15:54:53 +02:00
Konstantinos Sideris
fef7cd5b83
Don't count m.room.member or m.room.reaction events as viewable
2018-03-18 13:29:21 +02:00
Konstantinos Sideris
81d3bd8ce6
Remove redacted events from other users ( #171 )
2018-03-18 12:47:35 +02:00
Konstantinos Sideris
49270d10b4
Update matrix-structs library
2018-03-18 11:05:39 +02:00
Konstantinos Sideris
a0ae6cf5d5
Add ability to redact messages
2018-03-17 21:23:46 +02:00
Konstantinos Sideris
2fe0dbb38c
Fix CI & adjust snackbar animation
2018-03-17 11:38:06 +02:00
Konstantinos Sideris
4a6becacca
Add fancy snackbar animation
2018-03-16 17:56:45 +02:00
Konstantinos Sideris
343acaf434
Remove opacity animation from the scrollbar
...
fixes #270
2018-03-16 17:29:21 +02:00
Konstantinos Sideris
511c58d608
Add context menu option to save images
...
fixes #265
2018-03-14 21:31:09 +02:00
Konstantinos Sideris
1b5e18cb1a
Fix CI builds
2018-03-13 08:53:32 +02:00
Konstantinos Sideris
4659d0efc2
Implement user registration with reCAPTCHA
...
fixes #264
2018-03-12 22:23:26 +02:00
Konstantinos Sideris
39a8150fae
Update room name & avatar on new rooms
...
fixes #253
2018-03-12 00:15:06 +02:00
Konstantinos Sideris
d6b61fbb14
Add context menu option to mark events individually as read
...
fixes #261
2018-03-11 17:56:40 +02:00
Konstantinos Sideris
290de548bb
Remove unused variables
2018-03-10 23:31:01 +02:00
Konstantinos Sideris
39abf163b8
Crete a proxy for media to uniquely match signal to the caller
2018-03-07 21:23:57 +02:00
Konstantinos Sideris
ea22bdce18
Add a unique id for locally uploaded images
...
The event_id will be an empty string because we haven't received yet
2018-03-07 20:42:32 +02:00
Konstantinos Sideris
af02b4f4a8
Show messages in the RoomList after initial sync
2018-03-04 15:39:41 +02:00
Konstantinos Sideris
fb5719f184
Don't handle password when the matrix id is entered
2018-03-04 15:15:52 +02:00
Konstantinos Sideris
0f62cba498
Retry initial sync only on specific errors
...
fixes #233
fixes #89
2018-03-04 14:49:15 +02:00
Konstantinos Sideris
7fc33a71fd
Bump version
2018-03-04 14:08:46 +02:00
Konstantinos Sideris
b15a04b00a
Don't open room switcher when another dialog is open
...
fixes #251
2018-03-04 13:40:30 +02:00
Stuart Mumford
47c31b9a18
Retry initial sync forever ( #234 )
2018-03-04 12:35:14 +02:00
Konstantinos Sideris
7f7f3a805b
Remove dead code & small refactorings using the std library
2018-03-03 22:08:56 +02:00
Konstantinos Sideris
735d508a29
Handle empty matrix ID (regression from 9de1ec1
)
...
fixes #259
2018-03-01 09:31:08 +02:00
Konstantinos Sideris
f6c279f6f2
Propagate errors during /login & /versions
2018-02-28 22:07:53 +02:00
Konstantinos Sideris
9de1ec1b7b
Fix crash when inviting users
2018-02-28 21:14:41 +02:00
Konstantinos Sideris
12a96aae6d
Add some missing references
2018-02-28 12:12:07 +02:00
Konstantinos Sideris
c75a136973
Enable room switcher only in the chat view ( #251 )
2018-02-26 13:17:04 +02:00
Konstantinos Sideris
f525b7e6a9
Replace login request with the one from matrix-structs
2018-02-23 22:27:59 +02:00
Konstantinos Sideris
fb850787d7
Relax matrix identifier parsing
...
fixes #241
2018-02-23 22:06:35 +02:00
Konstantinos Sideris
020f153f1f
Fix crash when trying to use automatically deleted ImageOverlay dialog
2018-02-20 22:08:16 +02:00
Konstantinos Sideris
f95998a64b
Be explicit about the captured parameters in lambdas
2018-02-20 17:09:11 +02:00
Konstantinos Sideris
127c52e39a
Scale down the preview image to fit in the application window
...
On macOS the modal has some extra space around the main content
that might make it unusable with a big enough image.
2018-02-19 23:33:11 +02:00
Konstantinos Sideris
1764bacd4b
Move scaleImage() in Utils
2018-02-19 23:32:37 +02:00
Konstantinos Sideris
8b139c32a3
Minor adjustments
2018-02-19 22:09:21 +02:00
Konstantinos Sideris
a8e17b9c91
Notify the user on upload failures
2018-02-19 00:17:54 +02:00
christarazi
cd9d1a2ec6
Support audio, video, generic file for pasting ( #220 )
...
* Refactor widget items to use same interface
* Support audio, video, generic file for pasting
* Add utils function for human readable file sizes
* Set correct MIME type for media messages
This change also determines the size of the upload once from the
ContentLengthHeader, rather than seeking the QIODevice and asking for
its size. This prevents any future trouble in case the QIODevice is
sequential (cannot be seeked). The MIME type is also determined at
upload once, rather than using the QIODevice and the underlying data
inside.
* Allow for file urls to be used as fall-back
This fixes an issue on macOS which uses `text/uri-list` for copying
files to the clipboard.
fixes #228
2018-02-18 22:52:31 +02:00
Konstantinos Sideris
c8bfb02211
Show loading indicator while waiting for /login & /logout
...
fixes #208
2018-02-18 22:22:26 +02:00
Konstantinos Sideris
7e2f835eec
Properly detect the start of the timeline
...
We can't rely solely on the number of the returned messages
because it could be zero if all the event types are unknown.
fixes #168
2018-02-17 19:29:53 +02:00
Konstantinos Sideris
fdd5051dcf
Remove QPropertyAnimation from modals to work around a regression on Qt 5.10.1 ( #87 )
2018-02-17 18:43:40 +02:00
Konstantinos Sideris
59e4148a7c
Fix transparency issue on custom dialogs
...
fixes #87
2018-02-17 14:04:46 +02:00
Konstantinos Sideris
8d867f418d
Hide emoji picker when the app loses focus
...
fixes #184
fixes #209
2018-02-16 19:02:15 +02:00
Konstantinos Sideris
86280098b4
Implement server-side notification count
2018-02-15 21:58:57 +02:00
Konstantinos Sideris
6d08e67abd
Simplify variant access with std::visit
2018-02-11 19:30:22 +02:00
William Pitcock
0be787f1e4
RoomList: do not blindly dereference RoomState ( #232 )
...
This can happen when a new room is being created from a different client and thus is created
with no known state to the local client.
2018-02-11 14:39:06 +02:00
Konstantinos Sideris
ba8faa357f
Remove empty destructors
2018-02-10 16:29:09 +02:00
Konstantinos Sideris
26f221ec23
Move LeaveRoom dialog to MainWindow ( #87 )
2018-02-10 16:05:31 +02:00
Konstantinos Sideris
ddcc0f7f60
Generate a date separator before local messages
2018-02-10 01:09:30 +02:00
Konstantinos Sideris
da6b816228
Remove tone emoji
2018-02-09 12:20:09 +02:00
Konstantinos Sideris
b60554b8fd
Add a timeout timer for initial sync ( #223 , #222 )
...
Show a better message on the login screen after an initial sync failure.
2018-02-08 19:07:58 +02:00
Chris Tarazi
31eb0a9c88
Create new font for checkmark
2018-02-07 21:32:22 -08:00
Chris Tarazi
2dcc01633e
Apply fixed width for checkmark for all messages
2018-02-07 21:32:21 -08:00
Chris Tarazi
a15079c68f
Fix #217 : create space for checkmark beforehand
2018-02-07 21:32:20 -08:00
Konstantinos Sideris
43ba4d5ed5
Handle case with no available rooms
...
fixes #181
2018-02-02 10:51:07 -07:00
Konstantinos Sideris
96e99710fc
Second attempt to fix failback text size for ImageItem
2018-01-31 09:27:34 -07:00
Konstantinos Sideris
117a739bc4
Add enough space for the failback text in ImageItem
2018-01-30 15:30:25 -07:00
Konstantinos Sideris
07a4e38ed8
Increase pagination retry timeout
2018-01-30 13:40:48 -07:00
Konstantinos Sideris
b1f232bf86
Render messages received by /messages
on demand
2018-01-30 12:56:01 -07:00
Konstantinos Sideris
992332adf7
Update user avatars in place
2018-01-30 11:39:06 -07:00
Konstantinos Sideris
597f829c57
Remove '#' from the room avatars
2018-01-25 18:10:05 +02:00
Konstantinos Sideris
67418e11b1
Add missing processEvents call
2018-01-25 17:18:37 +02:00
Konstantinos Sideris
2cf3161bff
Call processEvents while rendering new events
2018-01-25 16:49:31 +02:00
Konstantinos Sideris
0e91dae922
Erase items using the key
2018-01-25 14:34:15 +02:00
Konstantinos Sideris
936e215aed
Resize text input vertically to fit the contents
2018-01-25 07:57:19 +02:00
Konstantinos Sideris
1fad9398fc
Use more stl containers & minor refactorings
2018-01-24 20:46:37 +02:00
Konstantinos Sideris
9eedcd700a
Remove trailing whitespace from text messages
...
fixes #216
2018-01-23 18:14:13 +02:00
Konstantinos Sideris
2274642f12
Show the scroll-down button when showing the timeline
2018-01-23 17:34:57 +02:00
Konstantinos Sideris
48dabdfdc7
Don't dismiss the loading overlay by clicking
2018-01-22 16:47:08 +02:00
Konstantinos Sideris
72cba5d9eb
Disable minimize to tray except for the ChatPage
2018-01-22 16:33:47 +02:00
Konstantinos Sideris
4098cf6780
Fix ci
2018-01-22 14:52:54 +02:00
Konstantinos Sideris
64dd4c5985
Remove Accept-Encoding header
2018-01-22 12:02:07 +02:00
Konstantinos Sideris
c59cd0e80b
Load the initial cache data without blocking the UI
2018-01-21 21:43:21 +02:00
Konstantinos Sideris
c123bada94
Refactor avatar fetching in one function
2018-01-21 20:28:38 +02:00
Konstantinos Sideris
fc890f572c
Fix iterator crash
2018-01-21 18:25:58 +02:00
Konstantinos Sideris
e37c2e34ce
Use the Accept-Content header to enable response compression
...
fixes #86
fixes #89
2018-01-21 15:12:21 +02:00
Konstantinos Sideris
92a578f5e8
Convert 'if' to 'else if' to remove a no-op
2018-01-17 10:16:54 +02:00
Konstantinos Sideris
9de2db2fb8
Automatically focus on input when opening a dialog
2018-01-16 22:50:47 +02:00
Konstantinos Sideris
eea33062e3
Add some very useful commands
2018-01-16 22:34:31 +02:00
Konstantinos Sideris
26540bd120
Hack to work around layout flickering when adding new timeline items
2018-01-16 22:24:23 +02:00
Konstantinos Sideris
7792ca7149
Fix emoji as avatars issue for the receipts
2018-01-16 21:02:29 +02:00
Konstantinos Sideris
caf5b70994
Move the cursor to the start/end of the text before we move up/down in history
...
fixes #166
2018-01-16 20:51:46 +02:00
Konstantinos Sideris
af5663b6bc
Add borders
2018-01-15 21:04:49 +02:00
Konstantinos Sideris
020a842aef
Change cache format to not allow duplicate receipts
...
Convert list of receipts to map<userId, timestamp>
2018-01-14 23:37:38 +02:00
Konstantinos Sideris
4521837765
Add option to disable typing notifications
...
fixes #131
2018-01-14 15:57:58 +02:00
Konstantinos Sideris
c4fa8c844d
Add a checkmark to messages that have been received by the server ( #93 )
2018-01-14 12:54:17 +02:00
Konstantinos Sideris
dfeb0c833a
Move timestamps to the right
2018-01-14 12:29:54 +02:00
Konstantinos Sideris
d31a08f1d5
Keep syncing regardless of connectivity ( #93 )
2018-01-13 22:25:15 +02:00
Konstantinos Sideris
d3603606e7
Make some functions inline
2018-01-13 17:52:23 +02:00