Nicolas Werner
1eb2869fa8
Fix stuck unread messages by storing state events in the db
...
This may increase the db size by a factor of 1000 in the worst case and
it will need some fixes, when we decide to not show some events in the
timeline, but it should work for now.
2020-02-24 01:07:25 +01:00
Nicolas Werner
62b962cb44
Improve read status handling in room list
...
Only consider the room as unread, if there is a message in the room and
only consider message and sticker events as messages.
fixes #65
2020-02-23 22:48:54 +01:00
Nicolas Werner
e96241265e
Use third_party singleapplication helper
...
This may still not raise the application correctly on some WMs, because
they don't allow disturbing the user with windows popping up. I don't
think we want to work around that.
fixes #84
fixes #113
2020-02-23 13:44:05 +01:00
Nicolas Werner
3ef0d9db3c
Fix Registration
...
fixes #97
fixes #51
2020-02-23 13:44:05 +01:00
Adasauce
6e6fe0cad2
remove setStyleSheet calls directly from widget code
...
removed from:
- emoji panel scrollbars
- emoji category labels
- splitter image handles
- textfield setTextColor impl
small change to the category separator label for better contrast /
readability in dark mode.
removed setTextColor completely from TextField. Doesn't appear to be in
use anywhere, and focus going more toward qss themeing from qproperty
setting.
2020-02-21 15:38:19 -04:00
Nicolas Werner
55fb5532ee
Fix opaque widget in community list
...
fixes #126
2020-02-21 02:39:28 +01:00
DeepBlueV7.X
a8cdc20dd3
Merge pull request #125 from adasauce/118-dark-theme-issues
...
Tooltip and Combobox bugs with Breeze / Dark theme
2020-02-20 21:05:26 +01:00
Nicolas Werner
6bdc75d073
Reset user colors on theme change (in qml timeline)
2020-02-20 20:51:07 +01:00
Adasauce
8b8b844bda
Tooltip and Combobox bugs with Breeze / Dark theme
...
setStyleSheet was overriding default tooltip theme from the system,
causing themes like Breeze to render white text on a grey bg for
tooltips. Tooltips now render default for the system theme everywhere.
set a theme matching color on the dark theme comboboxes.
fixes #118
2020-02-20 15:51:07 -04:00
Nicolas Werner
2895162971
Clear user colors on theme change
2020-02-20 20:28:23 +01:00
Nicolas Werner
fcaec0d099
Fix html messages sent as just plain text
2020-02-20 18:27:29 +01:00
Nicolas Werner
4500bcd577
Use spacing for layouting settings
2020-02-20 18:11:49 +01:00
Adasauce
8aaf7e9e5d
Remove constant width, that was wrong.
...
Use Nico's suggestion to just leverage the width of the field, and leave
a comment.
2020-02-20 12:31:07 -04:00
Adasauce
105366f2b9
Clean up variable format
...
don't use members format camelCaseTail_
2020-02-20 11:57:16 -04:00
Adasauce
f86cbbe16a
Add constexpr for the minimum formlayout width
...
to save on recalculation of the size and having to subtract the margins
to do the tally, then re-apply.
2020-02-20 11:50:56 -04:00
Adasauce
b5aa615ef5
FormLayout cleanup
...
Removed empty labels in favour of a fixed height and bottom alignment.
2020-02-19 15:23:57 -04:00
Adasauce
53138d7f5c
Clean up placeholder string
...
use QString instead of std::string (QStringLiteral doesn't have a
constructor with int, str.)
remove temp variable, and just deal with it inline.
2020-02-19 15:00:49 -04:00
Adasauce
21b207d1f0
Review changes to UserSettingsPage
...
- Switch to {} widget initialization
- set fixed size on the Toggles so they don't scale down vertically
- add another setting section for INTERFACE
- add a placeholder value for deviceFingerprintValue_ so it can calculate the right size.
- fix warnings about `QLayout: Attempting to add QLayout "" to UserSettingsPage "",` in boxWrap
- hide widgets properly in Q_OS_MAC
- remove mainLayout_ completely
- clean up resizeEvent
2020-02-18 17:16:07 -04:00
Adasauce
111e4504ac
Replace QHBoxLayout with QFormLayout in UserSettings
...
This allows form fields to wrap dynamically when they are too long for
the view. This should help mobile and small screen users to configure
the app without having to force it into portrait mode, or not be able to
reach the settings fields at all.
2020-02-18 11:08:19 -04:00
Adasauce
b24165371c
Paginationg != Paginating in debug message
2020-02-17 17:13:28 +01:00
Nicolas Werner
65bd099372
Don't delete messages received out of order (fixup the flickering fix)
2020-02-16 18:58:38 +01:00
Nicolas Werner
ec9da9f42a
Try to fix flickering, if sync return event before send completes
2020-02-16 00:20:41 +01:00
Nicolas Werner
70f4a89d10
Quick hack to enable touch scrolling in settings and room list
2020-02-15 03:48:23 +01:00
Nicolas Werner
ef5edbb3ea
Lower general settings margins, if the window is narrow
2020-02-15 03:48:23 +01:00
DeepBlueV7.X
f70923f374
Merge pull request #117 from adasauce/file-download-path
...
use the standard system download path for file downloads
2020-02-15 03:28:22 +01:00
Adasauce
cb36050822
use QStandardPaths locations for all file dialogs.
2020-02-14 21:35:26 -04:00
Adasauce
17b5cc32dc
use the standard system download path for downloads
...
QFileDialog's dir arg (which was set to the incoming file name from the
Matrix download) can take a full path to suggest. By prepending
QStandardPaths::DownloadLocation, it opens to the system's download
folder and proposes the filename as the download name.
Using QStandardPaths should make this work on other platforms, and from
what I read, its possible for this to return an empty string on
platforms where it doesn't support it, so this should essentially
revert to the previous functionality if Qt can't determine the system's
download location.
2020-02-14 16:24:53 -04:00
DeepBlueV7.X
c062746c83
Merge pull request #116 from sorairolake/feature/japanese-translation
...
Add Japanese translation
2020-02-14 12:13:57 +01:00
Shun Sakai
2ceaead7fc
Change the initial of the proper noun to uppercase
...
markdown -> Markdown
2020-02-14 13:02:44 +09:00
Nicolas Werner
a2566b870e
show image dialog fullscreen instead of resizing to the size of the first desktop
2020-02-13 15:11:43 +01:00
Adasauce
95c2525218
Remove move() in ImageOverlay
...
it was causing the full screen image overlay to appear on the "primary
display" vs. the actual display nheko is running on.
removing the move() call makes the overlay follow the window.
2020-02-12 20:50:52 -04:00
Nicolas Werner
c5af3543e6
fix c++11 range-loop might detach Qt container
2020-02-07 02:56:03 +01:00
Nicolas Werner
d113733ce0
Don't leak the full file path when sending file
2020-02-06 22:25:03 +01:00
Nicolas Werner
1b039d0b16
Fix bug in html tag escaping
2020-02-06 22:04:55 +01:00
Nicolas Werner
46a77a8c11
Fix linter issue
2020-02-05 22:43:33 +01:00
DeepBlueV7.X
275d4dfed9
Fix integer overflow of cachesize on windows
2020-02-05 15:35:04 +01:00
Joseph Donofry
096db389d1
Make closing the reply popup actually clear the reply message
2020-02-04 18:17:14 -05:00
Nicolas Werner
9d90467e6a
Select first room on startup
2020-02-04 21:16:04 +01:00
Nicolas Werner
2b531227a8
modernize: use override
2020-02-04 15:18:26 +01:00
Nicolas Werner
7dab4d39ee
modernize: raw string literals
2020-02-04 05:19:55 +01:00
Nicolas Werner
7ccc120f63
modernize: use nullptr
2020-02-04 04:58:43 +01:00
Nicolas Werner
d330020fdd
Improve styling a bit
2020-02-03 19:21:03 +01:00
Nicolas Werner
aae8612482
use room rules for mentions
2020-02-02 18:55:07 +01:00
Nicolas Werner
96e3a7735d
Fix <displaynames>
2020-02-02 15:15:00 +01:00
Nicolas Werner
4612266a67
Add muting
2020-02-02 13:51:07 +01:00
DeepBlueV7.X
32375518de
Merge pull request #112 from Nheko-Reborn/sharp-logo
...
Update the logo to not be so asymmetric and add a scalable svg. I hope I fixed all the scaling issues, where the logo isn't pixel aligned in most resolutions. Also fixes an issue, where the blue bar seemed to be misaligned in some resolutions?
2020-02-02 00:10:18 +00:00
Joseph Donofry
5570250eed
more emojis
2020-02-01 15:30:10 -05:00
Nicolas Werner
657f48b139
Remove wildcard mtx.hpp includes
2020-01-31 17:12:20 +01:00
Nicolas Werner
bd3b6aefb4
Remove even more headers
2020-01-31 16:36:58 +01:00
Nicolas Werner
63f3071445
Remove more unneeded headers
2020-01-31 16:25:43 +01:00
Nicolas Werner
127fb9370b
Remove metatypes from headers
2020-01-31 16:08:30 +01:00
Nicolas Werner
4cd260bfcf
Optimize includes a bit
2020-01-31 15:11:21 +01:00
Nicolas Werner
995568814b
Use cleaned up logo
2020-01-31 03:40:27 +01:00
Nicolas Werner
558fd10f7b
Add next/prev room shortcuts
2020-01-31 01:39:51 +01:00
Nicolas Werner
b541cecd2e
Enable ban and kick button in UserProfile (and try to fix centering)
2020-01-30 03:45:27 +01:00
Nicolas Werner
a07e699811
Fix build with build system optimizations of mtxclient
2020-01-29 23:39:05 +01:00
Joseph Donofry
d6d4076d36
Merge branch '0.7.0-dev' of ssh://github.com/Nheko-Reborn/nheko into 0.7.0-dev
2020-01-28 19:20:51 -05:00
Joseph Donofry
d205952fc8
Change tooltip palette settings for QML
2020-01-28 19:20:39 -05:00
Nicolas Werner
75c5c01189
Merge branch 'plain-text-messages' into 0.7.0-dev
2020-01-29 00:42:46 +01:00
DeepBlueV7.X
247af99399
Merge pull request #111 from Nheko-Reborn/better-build
...
Improve build system and dependency bundling.
2020-01-28 23:38:16 +00:00
Nicolas Werner
b0ff1baa1d
Add command for invite,kick,ban and unban
2020-01-29 00:30:53 +01:00
Joseph Donofry
2b8b04a04b
Add initial QML Reply Popup
2020-01-27 23:28:11 -05:00
Nicolas Werner
760d4ddef9
Fix newlines in plain text messages again
2020-01-27 18:36:34 +01:00
Nicolas Werner
e81a4e8f9a
Don't send useless formatted_bodies
2020-01-27 17:25:09 +01:00
Nicolas Werner
9c368fa7f4
Fix reply rendering without markdown in riot
2020-01-27 17:05:40 +01:00
Nicolas Werner
e2f547149a
Allow sending messages as plain text
2020-01-27 15:59:25 +01:00
Nicolas Werner
f755550418
Add missing thread include
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
d10276253f
Fix include of lmdb++ with hunter
2020-01-26 16:38:31 +01:00
Nicolas Werner
73cf7b239b
Update emoji to unicode 13.0
2020-01-24 04:18:14 +01:00
Nicolas Werner
8fcb670bde
Remove translations from reply fallback
2020-01-24 01:10:40 +01:00
Nicolas Werner
453d6f5f64
Surpress qt binding warning message until we can depend on qt5.14
2020-01-23 23:59:46 +01:00
Joseph Donofry
74e2b0725d
Minor tweak to one instance of QSettings not necessarily using the same settings as everything else
2020-01-23 17:07:24 -05:00
Nicolas Werner
cbd428c584
Switch around dark theme colors again (after looking at some screenshots)
2020-01-23 21:28:17 +01:00
Nicolas Werner
e9267ffc76
Show event type string in placeholder
2020-01-23 20:59:17 +01:00
Nicolas Werner
c758cead9e
Remove loggin of encrypted message body
2020-01-23 20:45:23 +01:00
Nicolas Werner
86960e67ec
Implement display of membership events
2020-01-23 20:34:04 +01:00
Nicolas Werner
569c22b755
Fix blurry avatars
...
They accidentally used the same state key...
2020-01-23 13:54:40 +01:00
Nicolas Werner
1943d1c74d
Increase emoji range
2020-01-21 22:36:55 +01:00
Nicolas Werner
6aedd135a9
Remove useless logging
2020-01-21 22:12:59 +01:00
Nicolas Werner
aa7ac71cfe
Fix room avatars in settings
2020-01-21 21:33:35 +01:00
Nicolas Werner
c95f4d8276
Fix colors in typing display, when username contains emoji
2020-01-21 20:41:09 +01:00
Nicolas Werner
79e4e2e6e1
Improve emoji escaping
2020-01-21 04:18:17 +01:00
Nicolas Werner
dc44ac50a3
Linkify links before sending
2020-01-21 03:36:26 +01:00
Nicolas Werner
f5b8c9bb31
Remove use of deprecated enum
2020-01-19 19:07:04 +01:00
DeepBlueV7.X
0d6a65af07
Try to lower map size
...
Maybe this fixes the 1mb map size in my windows test environment?
2020-01-17 01:25:43 +01:00
Nicolas Werner
fe912240bc
Move typing display to qml
2020-01-17 01:25:14 +01:00
Nicolas Werner
8c5e4db42c
Remove embedded fonts
2020-01-16 20:37:07 +01:00
Nicolas Werner
719f1571b9
Don't require Qt5.12 just for QByteArray::compare
2020-01-16 20:36:44 +01:00
Nicolas Werner
4eb0e11740
Try to match old theme better
2020-01-14 20:44:11 +01:00
Nicolas Werner
54a16ae2d7
Fix duplicate messages in timeline after sending
2020-01-14 20:43:35 +01:00
Nicolas Werner
cdb11b1819
Reduce avatar cache size
2020-01-14 17:48:01 +01:00
Nicolas Werner
3f02b0bf56
Escape blacklisted html tags
2020-01-14 17:47:30 +01:00
Nicolas Werner
62f17dffbd
Fix replies in encrypted rooms
...
The relation needs to be unencrypted...
2020-01-13 12:37:02 +01:00
Nicolas Werner
4ca8da9a89
Allow replying with an image
2020-01-12 17:07:22 +01:00
Nicolas Werner
4727f1c2bb
Fetch missing events for replies
2020-01-11 18:53:32 +01:00
Nicolas Werner
2b3dc3d8b9
Implement fancy reply rendering
...
This currently assumes the event, that is replied to, is already
fetched. If it isn't, it will render an empty reply. In the future we
should fetch replies before rendering them.
2020-01-11 14:07:51 +01:00
Nicolas Werner
51d7e64992
Simplify read message logic with inverted timeline
2020-01-06 18:29:08 +01:00
Nicolas Werner
5af6f6528b
Use fetchMore for native lazy loading of item model data
2020-01-06 18:29:08 +01:00
Nicolas Werner
946ab4d0f2
invert timeline
2020-01-06 18:29:08 +01:00
Nicolas Werner
e084543cc0
Move visitors out of TimelineModel
2019-12-27 21:50:37 +01:00
Nicolas Werner
3bbd034781
Fix transitive dependencies on iostream
2019-12-23 05:22:03 +01:00
Nicolas Werner
ceb6f85ccb
Actually include header that provides std::signal instead of signal
2019-12-15 03:51:33 +01:00
Nicolas Werner
79f967da8c
Reduce Cache.h includes further via one forward declaration
2019-12-15 03:34:37 +01:00
Nicolas Werner
37fbcaf07b
Reduce includes of MatrixClient.h, as it is the most expensive header
2019-12-15 03:19:33 +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
935727864a
Increase max cache size and remove const from lmdb constants
...
fixes compilation issues with last released lmdb++
2019-12-14 23:41:54 +01:00
Nicolas Werner
13df852479
Reduce some include of Cache.h since it needs 11s on average
2019-12-14 23:40:32 +01:00
Nicolas Werner
659e36b113
Update to c++17
2019-12-14 18:59:38 +01:00
Nicolas Werner
932dbf38fe
Fix position of invite button and elide long button texts
2019-12-13 21:05:28 +01:00
Nicolas Werner
ba25771c08
Make invites always stick to the top
...
This also removes an ugly hack, that was needed before.
2019-12-13 20:49:27 +01:00
Nicolas Werner
9c1912ed93
Fix preview of sent encrypted images
2019-12-13 01:31:14 +01:00
Nicolas Werner
31b00c445b
Send encrypted files as generic mimetype and actually set url
2019-12-12 23:17:17 +01:00
Nicolas Werner
e98a61fea6
Show topic and name changes in timeline
2019-12-10 14:46:52 +01:00
Nicolas Werner
362efbf5b9
Restore linkification of messages
2019-12-06 02:57:08 +01:00
Nicolas Werner
43d7fe0d35
Implement sending encrypted files
2019-12-05 15:31:53 +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
a689118d71
lint
2019-12-03 19:49:56 +01:00
Nicolas Werner
b8f6e4ce64
Add encrypted file download
2019-12-03 02:48:29 +01:00
Nicolas Werner
6c2ec3fe67
Rename qml namespace from com.github.nheko to im.nheko
2019-11-30 01:43:39 +01:00
Nicolas Werner
9fd279c020
Show encryption enabled and use a non zero size for zero size vide
2019-11-23 20:07:15 +01:00
Nicolas Werner
7bd875004f
Only mark messages as read, when room is active
2019-11-23 20:07:15 +01:00
Nicolas Werner
5429b425e9
Lint
2019-11-23 20:07:15 +01:00
Nicolas Werner
cf88499ccb
Fix replies to encrypted events
2019-11-23 20:07:15 +01:00
Nicolas Werner
001c94865c
Fix windows build
...
No idea, why apply visitor doesn't work with temporaries?
2019-11-23 20:07:15 +01:00
Nicolas Werner
c424e397b0
Add loading spinner and restore message send queue
2019-11-23 20:07:15 +01:00
Nicolas Werner
562169965c
Show only messages in room list
2019-11-23 20:07:15 +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
1268e9f11c
Make replies format nicer
...
Also lays a bit of groundwork for better reply rendering
2019-11-23 20:06:15 +01:00
Nicolas Werner
88dc72df4f
Enable link handling
2019-11-23 20:06:15 +01:00
Nicolas Werner
993926e189
Make user clickable and improve button cursor look
2019-11-23 20:06:15 +01:00
Nicolas Werner
4f7a45a0a6
Improve avatar look and layouting
...
Thanks to red_sky for the feedback!
2019-11-23 20:06:15 +01:00
Nicolas Werner
bde71a6cbc
fixup bad room list translation commit
2019-11-23 20:06:15 +01:00
Nicolas Werner
2c37beba8d
Fix translation of roomlist message preview
...
This also makes long messages unreadable, because we don't shorten long
usernames anymore. We may eventually want to do that again, but it is
hard with translations and we probably want to shorten the displayname
more, as before this change the message was only ever as long as the
timestamp, which is usually just 5 characters...
2019-11-23 20:06:15 +01:00
Nicolas Werner
6b6085b270
Actually fix updating roomlist on new messages
2019-11-23 20:06:15 +01:00
Nicolas Werner
15badebc77
Show own messages in RoomList
2019-11-23 20:06:15 +01:00
Nicolas Werner
b1f1cb2b56
Redirect qt logger
2019-11-23 20:06:15 +01:00
Nicolas Werner
0d8bf6c676
lint
2019-11-23 20:06:15 +01:00
Nicolas Werner
3d6f502bcc
Incubate delegates asynchronously
2019-11-23 20:06:15 +01:00
Nicolas Werner
c8f97216fa
Small fixes to delegate chooser implementation
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
cff46d97a8
Add native themeing to QML (where possible)
2019-11-23 20:06:15 +01:00
Nicolas Werner
a83ae7e95f
Fix section layout issues and pagination issues
...
Pagination could get stuck, if the messages request failed.
Section height seemes to have been calculated to late, which would make
some section overlap the next message in some cases. Fix that by doing
the height calculation manually.
2019-11-23 20:06:15 +01:00
Nicolas Werner
0fd2199112
Load content if no scrollbar is needed
2019-11-23 20:06:15 +01:00
Nicolas Werner
8ebef4eed2
Size images/videos by timeline width
2019-11-23 20:06:15 +01:00
Nicolas Werner
ec6953d0c0
Fix linting issues
2019-11-23 20:06:15 +01:00
Nicolas Werner
241c0236fc
Try to fix windows Winsock.h compilation error
2019-11-23 20:06:15 +01:00
Nicolas Werner
425d534e22
Enable Sticker and Emote messages
2019-11-23 20:06:15 +01:00