Commit graph

286 commits

Author SHA1 Message Date
Nicolas Werner
f2557a2f14 Disable olm tests 2020-01-26 16:38:31 +01:00
Nicolas Werner
adf956af9a Bump cmark version in fetch to fix linker issue on windows 2020-01-26 16:38:31 +01:00
Nicolas Werner
01ed56d00a Link ntdll needed for lmdb on windows 2020-01-26 16:38:31 +01:00
Nicolas Werner
de13b16e13 Use fetch content compatible cmark version as bundled dep 2020-01-26 16:38:31 +01:00
Nicolas Werner
d9aac3ee19 Only use -Werror for our code 2020-01-26 16:38:31 +01:00
Nicolas Werner
96ad385331 Fix misc ci errors 2020-01-26 16:38:31 +01:00
Nicolas Werner
d8263265e6 Use hunter for bundled dependencies 2020-01-26 16:38:31 +01:00
Nicolas Werner
8f660d5223 Actually use the spdlog target 2020-01-23 20:18:13 +01:00
Nicolas Werner
fe912240bc Move typing display to qml 2020-01-17 01:25:14 +01:00
Nicolas Werner
e084543cc0 Move visitors out of TimelineModel 2019-12-27 21:50:37 +01:00
Nicolas Werner
5fc1f3bd67 Reduce overhead of Cache.h 2019-12-15 02:56:04 +01:00
Nicolas Werner
7d6a015f36 Add qml debugging option 2019-12-14 23:48:28 +01:00
Nicolas Werner
659e36b113 Update to c++17 2019-12-14 18:59:38 +01:00
Nicolas Werner
5bfdaff778 Implement decryption of images
It is a bit of a hack, but it works...
2019-12-03 23:34:16 +01:00
Nicolas Werner
610e4dbe90 Bump required boost and cmake version to match mtxclient 2019-12-03 17:25:22 +01:00
Nicolas Werner
91d1f19058 Remove old timeline 2019-11-23 20:07:15 +01:00
Nicolas Werner
2bfb885b47 optionally use QQuickWidget and replace ColorOverlay -> colorImageProvider 2019-11-23 20:06:15 +01:00
Nicolas Werner
2055c75f8b Organize qml files a bit 2019-11-23 20:06:15 +01:00
Nicolas Werner
e52ff609ed Remove unused Qt Module 2019-11-23 20:06:15 +01:00
Nicolas Werner
c37495fae2 Use a basic implementation of a DelegateChooser for compat with older Qt
The interface is taken from Qt/KDE, but the implementation is different,
because the Qt implementation depends on some Qt internals.
2019-11-23 20:06:15 +01:00
Nicolas Werner
084396059b Use win lean and mean to fix WinSock include issue 2019-11-23 20:06:15 +01:00
Nicolas Werner
e2d733a01a Restore saving of media 2019-11-23 20:06:14 +01:00
Nicolas Werner
ebeb1eb772 Implement avatars in qml timeline 2019-11-23 20:06:14 +01:00
Nicolas Werner
8b5c7b2f2f Add placeholder timeline model 2019-11-23 20:06:14 +01:00
Nicolas Werner
8e611abe87 Replace timeline with empty qml view 2019-11-23 20:06:14 +01:00
Joseph Donofry
3f563e1e6e
Cache User Mentions
Cache user mentions when they are retrieved from the server.
This logic currently isn't being utilized by the UI.  Additionally,
the app should use a 'since' value to only get mentions newer
than those stored in the DB, to avoid excessive web requests.

This will be implemented in a future commit.
2019-08-09 23:34:44 -04:00
Joseph Donofry
579bf23460
Add User Mentions Dialog
Add a RoomListItem-like button that opens a dialog
containing all of the messages that would result in a
highlight from the server (for example, the user is mentioned,
or @room is mentioned).

This is VERY rudimentary and will be completely reworked in the future
to take advantage of the existing TimelineView class, instead of
using a dialog like it does now. The button to show the mentions
also needs work.
2019-07-16 22:39:10 -04:00
Joseph Donofry
c0a010acbb
Fix deprecated function call issues with Qt 5.13
Update to mtxclient 0.3.0
2019-07-04 21:20:19 -04:00
Vitaly Zaitsev
eb4795390b
Removed RPATH from compiled binaries.
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2019-06-26 12:27:43 +02:00
Joseph Donofry
9159b9ce22
Initial Support for Rich Replies
Add placeholder UI for showing replies in the text entry widget.
Existing quoting capability has been removed (Temporarily), as
it was replaced with the new reply capability.  Replies sent from
nheko do not currently appear correctly in the timeline (this
will be fixed in a future commit).
2019-06-11 21:04:30 -04:00
Joseph Donofry
1b34b53afe
Update to v0.6.4 2019-05-22 22:29:31 -04:00
redsky17
4b7e9f7746
link boost dynamically 2019-05-08 22:57:21 -04:00
redsky17
75fb95855d
Nlohmann build updates 2019-02-24 20:05:11 +00:00
Joe
440d0b81ca Release Nheko 0.6.3
- Update version numbers and documentation
- Fix github releases oauth key
2019-02-08 14:49:53 -05:00
Joe
ebe5b19e76 Merge branch 'master' of https://github.com/redsky17/nheko 2019-02-08 14:06:37 -05:00
redsky17
fa6bc6a466 Tweak build settings 2019-02-08 03:20:03 +00:00
Joe
af57e95759 Add /bigobj for nheko MSVC build 2019-01-27 21:03:07 -05:00
redsky17
df5d24c87f Revert "Remove built-in emoji picker"
This reverts commit 4b807229aa.
2019-01-26 18:17:08 +00:00
redsky17
6c31f5fe7a Add initial support for QtIndenticon
Add initial loading of qt jdenticon plugin:
https://github.com/redsky17/qt-jdenticon

Currently, the library's functionality has not been integrated
into the rest of nheko.  Next step is to add a configuration
item in the User Settings and use the plugin to generate
avatars for users without their own picture.  These avatars
should be cached in the Cache object.
2019-01-26 18:03:49 +00:00
Konstantinos Sideris
a671bd62c4 v0.6.2 2018-10-07 17:53:09 +03:00
Konstantinos Sideris
4b807229aa Remove built-in emoji picker 2018-10-07 13:13:14 +03:00
Konstantinos Sideris
3fdfc9b69f Remove Scrollbar 2018-10-06 18:39:11 +03:00
Konstantinos Sideris
f58cbd7281 Remove debug logs from Windows builds 2018-10-06 17:45:56 +03:00
Konstantinos Sideris
4b1b062388 Enable debug logs 2018-09-30 14:33:54 +03:00
Konstantinos Sideris
c64a1bf759 Move TextLabel into its own file 2018-09-26 15:17:14 +03:00
Konstantinos Sideris
5ea47920ab v0.6.1 2018-09-26 09:27:58 +03:00
Konstantinos Sideris
dec643e6ea v0.6.0 2018-09-21 16:44:45 +03:00
Konstantinos Sideris
1b7816f7ca macOS: Use the native emoji picker
fixes #79
2018-09-19 23:38:36 +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
074608dec1 Switch to libcmark 2018-09-11 14:56:09 +03:00
Konstantinos Sideris
5267e0262b Remove custom stylesheet for qmenu 2018-09-08 14:55:30 +03:00
Konstantinos Sideris
9e8f0b7409 Initial support for sending markdown formatted messages
fixes #283
2018-09-07 20:05:30 +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
d2f1e641ba Forgot to update cmake project version 2018-09-01 14:16:44 +03:00
Konstantinos Sideris
990a3a97c7 Merge matrix-structs into the client lib 2018-09-01 13:35:10 +03:00
Konstantinos Sideris
199a4eaf51 Bump version to v0.5.4 2018-08-21 20:48:38 +03:00
Konstantinos Sideris
243ca55234 Bump version to 0.5.3 2018-08-12 11:35:56 +03:00
Konstantinos Sideris
04e4776886 Remove dash from version string when building outside of git 2018-08-08 14:18:29 +03:00
Konstantinos Sideris
f955ec762c Use archives instead of repos to fetch dependencies 2018-08-08 14:15:14 +03:00
Konstantinos Sideris
edf9f5242a v0.5.2 2018-07-28 13:51:14 +03:00
Konstantinos Sideris
d7e5171bfa Create user profile modal 2018-07-20 12:02:35 +03:00
Konstantinos Sideris
40facd116e Bump version to v0.5.1 2018-07-17 17:30:17 +03:00
Konstantinos Sideris
2e1e0efb06 Fix the download path for the Windows notification lib 2018-07-17 17:11:59 +03:00
Konstantinos Sideris
0e814da91c Move all files under src/ 2018-07-17 16:37:25 +03:00
Konstantinos Sideris
9e77f0e407 Bump version to 0.5.0 2018-07-15 10:25:06 +03:00
Konstantinos Sideris
73dbd3c8dd Re-enable groups 2018-07-14 12:08:16 +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
Johannes Walcher
cfaecaab17 Limit -Wshadow to non-gcc (#368) 2018-07-10 11:39:28 +03:00
Konstantinos Sideris
172d111d1c Add -Wshadow 2018-07-08 22:10:40 +03:00
Konstantinos Sideris
9a0e18dea7 Add a timeline message when encryption is enabled 2018-07-07 13:39:53 +03:00
Konstantinos Sideris
ec63a4fbf7 Mark third-party headers as system 2018-07-04 21:36:02 +03:00
Konstantinos Sideris
3bc8d791fb Don't download dependencies during build
fixes #346
2018-07-04 01:38:54 +03:00
Konstantinos Sideris
a8e82ba284 Add build target for doxygen
Includes documentation & dependency/call graphs
2018-07-02 18:39:49 +03:00
Konstantinos Sideris
95ce2ef920 Implement dekstop notifications on Windows (#290) 2018-07-01 00:23:16 +03:00
Konstantinos Sideris
8704265978 Merge branch 'e2ee'
- Support for e2ee rooms
- Implement categories & file logging
- Let the user know when the app can't reach the server (#93)

fixes #13
fixes #326
2018-06-17 19:18:12 +03:00
Konstantinos Sideris
c0d32ef319 Update CI instructions 2018-06-17 00:23:49 +03:00
Nicolas Riebesel
cce85f3ba8 Add Visual Studio 2017 support (#336) 2018-06-14 02:17:38 +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
Konstantinos Sideris
1366b01790 Install missing dependencies in travis-ci/appveyor 2018-06-04 16:07:47 +03:00
Konstantinos Sideris
0a9d95dfc9 Include mtxclient in the build 2018-06-04 13:54:51 +03:00
Konstantinos Sideris
70ffa43424 Bump version to v0.4.3 2018-06-02 10:22:24 +03:00
Konstantinos Sideris
f533d9d7ea Bump version to 0.4.2 2018-05-25 10:15:51 +03:00
Konstantinos Sideris
ec7b3e1e2b Bump version to 0.4.1 2018-05-24 02:25:19 +03:00
Konstantinos Sideris
506cf68072 Implement desktop notification for mac 2018-05-05 22:40:24 +03:00
Konstantinos Sideris
b47007d59a Add compile option for address sanitizers 2018-05-04 18:11:03 +03:00
Konstantinos Sideris
5caaa9d3c4 Bump version 2018-05-03 19:09:22 +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
2c9aa72d13 Add Qt5Svg dependency 2018-04-28 21:19:16 +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
9d825b07ca Remove dead code 2018-04-21 17:27:06 +03:00
Konstantinos Sideris
96617385bc Bump version to v0.3.1 2018-04-13 15:05:22 +03:00
Konstantinos Sideris
8dc17ccecb Bump version 2018-04-03 15:17:34 +03:00
Konstantinos Sideris
3afc76dbaa Adjust CMakeLists to make dependency downloading optional 2018-03-29 09:59:04 +03:00
Konstantinos Sideris
97326243db Link with pthread on Linux 2018-03-24 23:36:27 +02:00
Konstantinos Sideris
553a97c8bb Add basic support for username auto-completion
fixes #40
2018-03-24 23:16:15 +02:00
Konstantinos Sideris
2054aad975 Adjust version number for the windows build
[ci skip]
2018-03-22 19:13:38 +02:00
Konstantinos Sideris
8a2b29a3bf Be compatible with cmake 3.1 2018-03-22 16:34:11 +02:00
Konstantinos Sideris
f77a103209 Add version info in the settings menu
fixes #239
2018-03-22 16:20:22 +02:00
Konstantinos Sideris
4a6becacca Add fancy snackbar animation 2018-03-16 17:56:45 +02:00
Konstantinos Sideris
4659d0efc2 Implement user registration with reCAPTCHA
fixes #264
2018-03-12 22:23:26 +02:00
Konstantinos Sideris
7fc33a71fd Bump version 2018-03-04 14:08:46 +02:00
Konstantinos Sideris
7f7f3a805b Remove dead code & small refactorings using the std library 2018-03-03 22:08:56 +02:00
Konstantinos Sideris
564d51943e Pass arch flags for appveyor build
[ci skip]
2018-03-03 19:57:00 +02:00
Konstantinos Sideris
f9a662f7ad Specify install directory & arch for the matrix_structs library
[ci skip]
2018-03-03 18:46:31 +02:00
Konstantinos Sideris
4e4d2c5ce0 Remove git submodules in favor of cmake's ExternalProject 2018-03-03 13:02:33 +02:00
Konstantinos Sideris
9de1ec1b7b Fix crash when inviting users 2018-02-28 21:14:41 +02:00
Konstantinos Sideris
f525b7e6a9 Replace login request with the one from matrix-structs 2018-02-23 22:27:59 +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
6d08e67abd Simplify variant access with std::visit 2018-02-11 19:30:22 +02:00
Konstantinos Sideris
3fd257243c Update build instructions
fixes #226

[ci skip]
2018-02-10 13:46:26 +02:00
Vitaly Zaitsev
73bc1ffa7b Added AppData manifest file for Gnome Software (#224)
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2018-02-01 16:02:30 -07: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
e37c2e34ce Use the Accept-Content header to enable response compression
fixes #86
fixes #89
2018-01-21 15:12:21 +02:00
christarazi
ddfce136ed Add support for pasting images into a room (#180)
fixes #132
2018-01-10 09:52:59 +02:00
Bart Ribbers
3d321622bb Add make install and make uninstall rules to cmake (#196) 2018-01-09 20:34:01 +02:00
Max Sandholm
312df6f3bb Communities (#195) 2018-01-09 15:07:32 +02:00
Konstantinos Sideris
983aea7c76 Create widgets on demand for messages added to the end of the timeline 2018-01-05 00:27:32 +02:00
Konstantinos Sideris
eaf05748ff Initial support for read receipts 2018-01-03 18:06:29 +02:00
Konstantinos Sideris
155a9e828d Add deb and rpm packages on releases 2017-12-26 19:08:00 +02:00
Konstantinos Sideris
7e24a468b5 Remove submodules from matrix-structs
fixes #164
2017-12-16 18:37:08 +02:00
Konstantinos Sideris
65672d3dfb Allow only one application instance
fixes #141
2017-12-14 21:55:00 +02:00
Konstantinos Sideris
6aa635e4b9 Remove -march=native
[ci skip]
2017-12-12 09:48:04 +02:00
Konstantinos Sideris
544b623512 Add dialog to create rooms
fixes #25
2017-12-11 23:00:37 +02:00
Konstantinos Sideris
ef0b0f6879 Add menu to invite users 2017-12-10 23:59:50 +02:00
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
914bdecc0b Initial integration with matrix-structs 2017-12-03 02:47:37 +02:00
Konstantinos Sideris
432a2e1354 Add inline audio clip player (m.audio) (#143) 2017-12-01 15:39:50 +02:00
Konstantinos Sideris
eae069ad93 Group emoji and dialogs with namespaces 2017-11-30 20:02:46 +02:00
Konstantinos Sideris
32c8340577 Create directories for related files 2017-11-30 13:53:28 +02:00
Konstantinos Sideris
b21942a3e3 Add read support for m.file messages (#24) 2017-11-28 02:01:37 +02:00
Marcel
4ba1f2ea83 Windows icon fix and change the installer to QT Installer Framework on Windows (#85) 2017-11-06 17:17:21 +02:00
Konstantinos Sideris
886edd03fb Add dummy settings menu 2017-11-02 00:41:13 +02:00
Konstantinos Sideris
845228ac6a Add scroll-down button 2017-10-27 22:20:33 +03:00
Konstantinos Sideris
160fe1d668 Remove cache updates from the main thread 2017-10-21 21:17:01 +03:00
Rokas Kupstys
3205e5fdd3 Make sidebar topic expand on click and fix html formatting of elided text. (#96)
Fixes #95
2017-10-20 20:58:23 +03:00
Konstantinos Sideris
8390ff253d Fix icons for retina displays 2017-10-15 22:08:51 +03:00
Konstantinos Sideris
ac525970b0 Add snackbar 2017-10-08 22:01:18 +03:00
Konstantinos Sideris
d60c2b76e3 Receive typing notifications (#88) 2017-10-04 11:33:34 +03:00
Konstantinos Sideris
35355756e5 Build lmdb on appveyor 2017-10-01 22:38:46 +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
41a85832b3 Remove unnecessary animations 2017-09-30 17:05:05 +03:00
Konstantinos Sideris
d53a564c98 Handle missing git submodules automatically 2017-09-26 18:25:18 +03:00
Konstantinos Sideris
016bec1d13 Add march=native 2017-09-18 20:42:36 +03:00
Konstantinos Sideris
edff71bc24 Implement image uploads (#24) 2017-09-10 12:58:00 +03:00
Konstantinos Sideris
8d81489e05 Ghetto room switcher 2017-08-15 21:06:27 +03:00