Commit graph

99 commits

Author SHA1 Message Date
Konstantinos Sideris
b9c4a819ad Fix travis errors 2017-12-04 18:49:25 +02:00
Konstantinos Sideris
a605e4486f Migrate to matrix-structs for event and response parsing 2017-12-04 18:41:19 +02:00
Konstantinos Sideris
3ea2053b25 Use std::exception for the login response 2017-12-03 02:50:46 +02:00
Konstantinos Sideris
914bdecc0b Initial integration with matrix-structs 2017-12-03 02:47:37 +02:00
Konstantinos Sideris
5573548fb1 Allow audio clip uploads 2017-12-01 17:33:49 +02:00
Konstantinos Sideris
fdb76bb5c1 Implement file uploads
fixes #24
2017-11-29 23:39:35 +02:00
Konstantinos Sideris
b21942a3e3 Add read support for m.file messages (#24) 2017-11-28 02:01:37 +02:00
Konstantinos Sideris
0f363b5f44 Send read receipts
Automatically dismiss unread notifications when the window regains
focus.

fixes #111
fixes #68
2017-11-24 00:10:58 +02:00
Jani Mustonen
4e1c8dd663 Implement a per-room send queue. (#118)
[ci skip]
2017-11-15 18:38:50 +02:00
Benjamin Saunders
5bd5555a51 Use C++11 braced list style (#121) 2017-11-05 23:04:55 +02:00
Thomas Herzog
287b5aa4c0 Implemented sending of typing notifications (#105) 2017-10-31 20:11:49 +02:00
Konstantinos Sideris
91b8427795 Add missing headers 2017-10-28 21:24:42 +03:00
Konstantinos Sideris
a17b6dffaf Clean up headers 2017-10-28 15:46:39 +03:00
Konstantinos Sideris
143ed5176a Use callbacks on MatrixClient 2017-10-22 22:51:50 +03:00
Konstantinos Sideris
160fe1d668 Remove cache updates from the main thread 2017-10-21 21:17:01 +03:00
Konstantinos Sideris
13e526c27d Retry initial sync (#19) 2017-10-20 22:32:48 +03:00
Konstantinos Sideris
76ddfb792b Add /join command support 2017-10-08 22:38:38 +03:00
Konstantinos Sideris
ebe36b5713 Drop the loading screen if consensus can't be achieved 2017-10-08 21:35:37 +03:00
Konstantinos Sideris
985530e99b Resume sync when connectivity is established 2017-10-05 18:13:11 +03:00
Konstantinos Sideris
1fc68c5b7f Use string timeout parameter 2017-10-05 08:47:29 +03:00
Konstantinos Sideris
11a3282136 Remove full_state from initial sync 2017-10-04 22:11:55 +03:00
Konstantinos Sideris
d60c2b76e3 Receive typing notifications (#88) 2017-10-04 11:33:34 +03:00
Max Sandholm
7ad45d8d64 React to externally left and joined rooms, and add "leave room" button in room menu (#75)
* Initial "join room" feature.
* React correctly to remotely joined rooms.
* Leaving rooms implemented both locally using the room menu
   in nheko, and reacting properly when leaving a room remotely 
   from another client.
2017-10-01 19:49:36 +03:00
Konstantinos Sideris
0c0ac68bc2 Remove extra clang-format options 2017-10-01 12:51:29 +03:00
Konstantinos Sideris
edff71bc24 Implement image uploads (#24) 2017-09-10 12:58:00 +03:00
Konstantinos Sideris
ed36bdb037 Allow port number as part of the hostname
closes #21
2017-09-04 00:32:47 +03:00
Konstantinos Sideris
b5ae84c3c3 Add write support for m.emote events
closes #41
2017-09-03 11:43:45 +03:00
Konstantinos Sideris
2644e4acca Small style change 2017-08-20 13:47:22 +03:00
jansol
f5ba63946b Improve login flow (#35)
* Validate both inferred and explicitly entered server addresses by attempting to call the /versions endpoint
* If the domain from the mxid fails validation, try prefixing it with 'matrix'
* Only show server address field if address validation ultimately fails
2017-07-08 14:41:49 +03:00
Konstantinos Sideris
26dfbfd08c Lazy load initial timeline events 2017-06-05 19:54:45 +03:00
Konstantinos Sideris
95c492bad8 Experimental support for user avatars in timeline 2017-06-05 02:14:05 +03:00
Konstantinos Sideris
384fe7067e Set up translations 2017-05-29 19:09:12 +03:00
Konstantinos Sideris
f490040811 Fetch avatar thumbnail instead of the original image
closes #31
2017-05-27 01:29:45 +03:00
Konstantinos Sideris
0368d854cf Initial support for backwards pagination 2017-05-12 15:43:35 +03:00
Konstantinos Sideris
e78e43c86a Save the user defined domain instead of the one provided by login response 2017-05-09 16:57:41 +03:00
Konstantinos Sideris
0834b246ad Initial support for display names 2017-05-08 19:44:01 +03:00
Konstantinos Sideris
63db04793b Add sync timeout 2017-05-08 18:34:18 +03:00
Konstantinos Sideris
e44cc374e1 Use strongly typed enums 2017-05-08 00:51:03 +03:00
Konstantinos Sideris
1f90c58076 Use timeline to retrieve state events
- Rooms without any history will be shown.
- Room's state will be kept in sync and any updates will be visible.
2017-05-07 17:15:38 +03:00
Konstantinos Sideris
c9d03b793b Add initial support for inline images 2017-04-28 14:56:45 +03:00
Konstantinos Sideris
1a82150aa8 Exclude m.room.member events from initial sync 2017-04-27 00:32:33 +03:00
Konstantinos Sideris
27f7142cd8 Initial implementation for local echo
Each HistoryView maintains a list of pending events. Each pending
message is validated from the homeserver with either the returned
EventId or the body of the message.

Currently there is no support to remove invalid messages.

Also some small refactoring:
    - ChatPage doesn't know about the message being sent. The message
      delivery is solely handled by HistoryViewManager.
    - Nick coloring function moved to HistoryViewManager.
2017-04-13 04:11:22 +03:00
Konstantinos Sideris
6468faa39e Use only a MatrixClient as a shared pointer 2017-04-11 17:45:47 +03:00
Konstantinos Sideris
0770f6e6b5 Make the timer single shot 2017-04-11 02:35:09 +03:00
Konstantinos Sideris
b301a2828e Remove exception specifications 2017-04-09 18:09:09 +03:00
Konstantinos Sideris
239780557f Add logout button
Logout from the current session and invalidate the current token
2017-04-09 02:17:04 +03:00
Konstantinos Sideris
f50fb34fb6 Implement initial registration stage 2017-04-08 02:53:23 +03:00
Konstantinos Sideris
73e73f46ea Use const refs for the deserialized data 2017-04-06 19:56:33 +03:00
Konstantinos Sideris
4f45575c79 Initial commit 2017-04-06 02:06:42 +03:00