Nicolas Werner
a8b22e49c3
Fix self counting as read message
2020-05-04 00:57:40 +02:00
Nicolas Werner
0c73c74574
Speed up initial load a bit
2020-05-04 00:57:40 +02:00
Nicolas Werner
d6685e8d61
Add delete pending_receipts migration
2020-05-02 17:24:45 +02:00
Nicolas Werner
dad2de7ba2
Add support for db migrations
2020-05-02 16:44:50 +02:00
DeepBlueV7.X
38417a374d
Merge pull request #184 from shocklateboy92/features/backlog-progress
...
Add visual indication that data is being fetched
2020-05-01 10:19:32 +02:00
Lasath Fernando
166ed0674d
Run linter
2020-04-30 22:40:27 -07:00
Nicolas Werner
9750241e73
Old Qt doesn't have .get...
2020-05-01 00:38:07 +02:00
Nicolas Werner
641a883bfd
Optimize RoomList sorting
...
Keep the almost sorted list around and sort by the raw timestamp value
instead of doing the expensive toMSecSinceEpoch conversion.
2020-04-30 23:59:17 +02:00
Nicolas Werner
e6fcccc8bd
Don't store pending receipts in cache
...
We don't get notified for every message. Sometimes we only get a read
receipt for the newest message, which means old read receipts accumulate
in the database. This least to some considerable CPU overhead, when
checking if the timeline should be notified for new read receipts.
Instead just always notify, since that has far less overhead in the
worst case and doesn't need complicated cache cleanup.
The old pending_receipts db is not removed for now. It should still have
minimal storage overhead and we don't have a good mechanism for cache
format upgrades atm.
2020-04-30 22:42:56 +02:00
Nicolas Werner
0716bbafff
Strip reply fallback from plain text body
2020-04-30 00:04:30 +02:00
Lasath Fernando
1f9d3024b1
Add visual indication that data is being fetched
...
This turns `paginationInProgress` field of `TimelineModel` into a `Q_PROPERTY`, so the Ui can bind to it.
For the moment, I'm showing the same spinner as we do during initial sync. It's not ideal, on the count of being giant and in the middle but it's better than nothing. We can make it more subtle later.
2020-04-29 13:52:39 -07:00
Nicolas Werner
bb66254c58
Make notifications a bit easier to read
2020-04-29 20:49:57 +02:00
Nicolas Werner
27350cf51e
Fix high CPU usage on high dpi screens
...
Fixes #180
2020-04-29 20:23:00 +02:00
Nicolas Werner
17c657a170
Send correct orientation for exif rotated images
2020-04-26 11:41:30 +02:00
Nicolas Werner
d6386546b3
Only prune old messages every 500 syncs
2020-04-26 11:29:05 +02:00
Nicolas Werner
28adc9dc9b
Respect exif rotation of images
...
Sometimes thumbnails still have the wrong dimensions, as they are scaled
to fit inside a rectange of the reported size in the image. Not sure,
who is wrong there, the media repo or we.
2020-04-26 11:26:51 +02:00
Nicolas Werner
d94ac86816
Fix double percent encoding of invites
2020-04-24 16:19:11 +02:00
Joseph Donofry
5893365439
Change decrypt setting again
2020-04-23 19:21:20 -04:00
Joseph Donofry
87c06f0fc9
Merge branch 'decrypt-sidebar' of ssh://github.com/Nheko-Reborn/nheko into decrypt-sidebar
2020-04-23 19:05:54 -04:00
Joseph Donofry
994edb836c
Change how decrypt value is retrieved from settings
2020-04-23 19:05:44 -04:00
Joseph Donofry
69b0b68f92
Merge branch 'master' into decrypt-sidebar
2020-04-23 18:40:07 -04:00
Nicolas Werner
b00e624fb0
Fix own messages not showing as encrypted
2020-04-23 15:28:46 +02:00
Nicolas Werner
d5e1475a5c
Fix encrypted messages not showing a user in the sidebar
2020-04-23 02:29:55 +02:00
Joseph Donofry
b298f01d92
Add signal/slot for decryption changes in last patch
2020-04-22 19:52:30 -04:00
Nicolas Werner
35601b6bef
Terminate user color calculation, when no solution can be found
...
fixes #172
2020-04-22 23:33:27 +02:00
Joseph Donofry
a4c280a4f9
Add ability to toggle sidebar messages for encrypted rooms
2020-04-21 22:40:58 -04:00
Nicolas Werner
0e1bb5137b
Add menu entry to show decrypted source
...
Also make hidden entries not consume space in Menus with some qml
styles.
2020-04-21 22:32:45 +02:00
Nicolas Werner
ba3d405513
Fix Binding restoreMode warning spamming logs
...
fixes #170
2020-04-21 21:09:29 +02:00
Nicolas Werner
e8271acd99
Fix own encrypted images not showing up after sending
2020-04-21 09:03:36 +02:00
Nicolas Werner
eff8af6fac
Try to fix messages getting stuck by sometimes sending them twice and never failing them
2020-04-19 15:07:23 +02:00
Nicolas Werner
695c3c0814
Fix registration on construct
2020-04-17 00:27:43 +02:00
Nicolas Werner
dd1dca3751
Add --debug switch
2020-04-15 23:28:04 +02:00
Nicolas Werner
a70044e67b
Cache decrypted events
2020-04-14 20:15:11 +02:00
Nicolas Werner
c739a0422d
Fix encrypted event indicator
2020-04-14 19:29:22 +02:00
Nicolas Werner
3ae4e49b5f
Remove unused paramters
2020-04-13 17:01:57 +02:00
Nicolas Werner
dcddea6fb8
Fix reply not closing
...
fixes #124
2020-04-13 16:22:30 +02:00
Nicolas Werner
82ec022f9c
Fix notification not being cleared, when read event didn't cause a notification
2020-04-11 23:28:34 +02:00
Nicolas Werner
2b24a978e1
Mid color is used for scrollbars it seems
2020-04-11 22:38:12 +02:00
Nicolas Werner
2022775dd0
Clear notifications when event is read
2020-04-11 01:09:47 +02:00
Nicolas Werner
d68b24188f
Size reply background by contents
2020-04-10 08:48:30 +02:00
Nicolas Werner
4fa12b52aa
Add comment on why we surpress some of those log messages
2020-04-08 23:12:18 +02:00
Nicolas Werner
6794b6472d
Add a few missing palette colors
2020-04-08 23:10:00 +02:00
Nicolas Werner
31a5972f2a
Fix UserProfile resizing
2020-04-01 01:28:05 +02:00
Nicolas Werner
8bf25f3d80
Set palette globally
2020-03-30 21:48:28 +02:00
Nicolas Werner
d35cc3dda4
Use palette for qml code for theming
...
Can't do it for QtWidgets code. We need to fully transition, before we
can fully switch over probably.
2020-03-29 22:11:33 +02:00
Emi Simpson
a9bbea881e
Removed double-sanitization of ... is typing names
2020-03-24 18:06:19 -04:00
Nicolas Werner
95272ce4ab
Try to fix avatars not updating after deletion
2020-03-22 20:43:45 +01:00
Nicolas Werner
7a2b996f18
Fix high CPU usage on 5XX error codes
2020-03-22 20:33:15 +01:00
Nicolas Werner
7df6529310
Fix avatar not being set for some rooms in the top bar
2020-03-22 18:14:53 +01:00
Nicolas Werner
b25e481418
Clean up unused avatar functions
2020-03-22 18:03:08 +01:00
Nicolas Werner
31a83c515e
Fix broken avatars in quick switcher
2020-03-22 14:22:42 +01:00
Adasauce
d0a1e81f43
Better image overlay handling when downloading
...
- hides the overlay when prompting for download location
- cancel re-shows the dialog
- success closes the overlay
- would be nice to have a return code from the download fn in
mtxclient.
Closes #140
2020-03-20 10:10:53 -03:00
Emi Simpson
5c308b1caf
Fixed bug caused by me forgetting what types im using (invites appearing at the bottom of the list instead of the top when priority sorting was off)
2020-03-15 17:05:21 -04:00
Emi Simpson
d51cbe7e32
Place invites on top of room list even when sorting by importance is off
2020-03-15 16:28:32 -04:00
Emi Simpson
78ac902549
Clean up stray comment
2020-03-15 16:19:45 -04:00
Emi Simpson
12aa94ad9a
Fixed compatibility with Qt < 5.11
2020-03-15 15:27:30 -04:00
Emi Simpson
bf5ae884de
Make toggle in settings revert between old behavior and new behavior for sorting by unreads
2020-03-15 14:56:39 -04:00
Emi Simpson
abac4c8d34
Sort room list on setting change
2020-03-15 14:30:21 -04:00
Emi Simpson
2320bfea26
Foiled by the linter once more
2020-03-15 12:43:41 -04:00
Emi Simpson
6bbe8ade0f
Made merge compatible with master
2020-03-15 12:16:01 -04:00
Emi Simpson
b6bd36ac16
Added toggle in the settings to ignore minor events
2020-03-15 11:19:22 -04:00
Emi Simpson
81c9cb5c79
Switched room importance to an enum
2020-03-15 10:38:56 -04:00
Emi Simpson
a5b388db15
Appease the linter
2020-03-14 09:16:08 -04:00
Emi Simpson
389117f1e8
Add a comment explaining room importance
2020-03-13 20:59:20 -04:00
Emi Simpson
0153dc7a39
Automatically move rooms down in the list once they've been read
2020-03-13 20:52:42 -04:00
Emi Simpson
b2a6232eb3
Fixed channels appearing out of order when only mentions were present, without any non-mentions
2020-03-13 20:40:52 -04:00
Emi Simpson
08125e8c44
Sort room list by room priority
2020-03-13 19:30:50 -04:00
Pushpam Choudhary
71ba8cb284
Add periods to terminate non-user messages in the timeline
2020-03-13 00:48:41 +05:30
Nicolas Werner
0f1a352dd7
Make buttons hideable via setting, button contents can still be accessed via context menu
2020-03-10 00:30:45 +01:00
Nicolas Werner
69a50c15c7
Reduce times we read upload data
2020-03-08 15:26:52 +01:00
DeepBlueV7.X
fc2f08a186
Merge pull request #137 from Nheko-Reborn/blurhash
...
Experimental Blurhash support
2020-03-05 21:07:18 +00:00
Nicolas Werner
b894ce4dcd
Make blurhash provider async
2020-03-04 01:56:58 +01:00
Nicolas Werner
5ac18f1f5f
Speed up blurhash code
2020-03-04 01:30:43 +01:00
Adasauce
ed4bb1a576
Add support for more room events in timeline
2020-03-03 15:06:52 -04:00
DeepBlueV7.X
7da5361995
Merge pull request #133 from adasauce/member1-and-too-many-others
...
total + first member shows as one too many room members
2020-03-03 01:36:12 +00:00
Nicolas Werner
0fc98b2692
Experimental blurhash implementation (MXC2448)
2020-03-03 02:34:26 +01:00
Adasauce
309461dcba
total + first member shows as one too many room members
...
i was confused when a room with me and two friends showed as "user1" and
3 others.
2020-03-02 21:30:19 -04:00
Nicolas Werner
328a3c7ebd
Fix avatar layering in room list
2020-03-03 01:23:04 +01:00
Nicolas Werner
2fd6385403
Make small sidebar sizing consistent
2020-02-28 19:56:08 +01:00
Nicolas Werner
b80697b072
Fix encrypted messages being pinned to the bottom after read marker fix
2020-02-28 19:29:43 +01:00
Nicolas Werner
095b59c01f
Delete unused variable
2020-02-28 09:00:26 +01:00
Nicolas Werner
9efa001bcf
Fix high dpi scaling of avatars
2020-02-28 03:20:27 +01:00
Nicolas Werner
b1eff0a37f
Improve link theming
2020-02-27 00:34:58 +01:00
Nicolas Werner
5115339636
Wrap error label on login page
...
fixes #30
2020-02-25 01:51:21 +01:00
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
Nicolas Werner
ea98d7b2ae
Add simple audio message widget
2019-11-23 20:06:15 +01:00
Nicolas Werner
a8166462ad
File messages (qml)
2019-11-23 20:06:15 +01:00
Nicolas Werner
ea12c9f9bc
Add basic read_event support (qml)
2019-11-23 20:06:15 +01:00
Nicolas Werner
1dd1a19b06
Update roomlist on new messages
2019-11-23 20:06:15 +01:00
Nicolas Werner
aee29c6ed5
Reenable redactions
2019-11-23 20:06:15 +01:00
Nicolas Werner
0d3c9390c6
Rename initialize to sync, since it does the same thing
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
9b18440b4f
Reenable ImageOverlay
2019-11-23 20:06:14 +01:00
Nicolas Werner
82091999c4
Add lock to encrypted messages
2019-11-23 20:06:14 +01:00
Nicolas Werner
a5ccd00be0
Remove noisy decrypted message
2019-11-23 20:06:14 +01:00
Nicolas Werner
bb60976e7e
Reenable encrypted messages
2019-11-23 20:06:14 +01:00
Nicolas Werner
6c7e6b0e86
Fix read indicator
2019-11-23 20:06:14 +01:00
Nicolas Werner
d34067a257
Enable read receipts action and sync read receipts from cache
2019-11-23 20:06:14 +01:00
Nicolas Werner
240b3a566b
Add send/received indicator
2019-11-23 20:06:14 +01:00
Nicolas Werner
d1fffd6617
Implement simple scroll state handling
2019-11-23 20:06:14 +01:00
Nicolas Werner
691c854201
Try to fix CI, no match for QString::arg(QStringRef)
2019-11-23 20:06:14 +01:00
Nicolas Werner
62d0cd74da
Implement replies in qml timeline
2019-11-23 20:06:14 +01:00
Nicolas Werner
5c87d6faa6
Implement sending other message types in qml timeline
...
not using placeholders in timeline for now
2019-11-23 20:06:14 +01:00
Nicolas Werner
a7595eab5a
Reimplement sending basic text messages
2019-11-23 20:06:14 +01:00
Nicolas Werner
a1c97fc8d6
Show redactions in qml timeline
2019-11-23 20:06:14 +01:00
Nicolas Werner
4efac5a247
Try to fix duplicate messages in certain edge cases (i.e. sync and pagination at the same time)
2019-11-23 20:06:14 +01:00
Nicolas Werner
f260b8b4ae
Fix shadow error
2019-11-23 20:06:14 +01:00
Nicolas Werner
e20501cec7
Reenable display of encrypted messages
2019-11-23 20:06:14 +01:00
Nicolas Werner
7aca8a9430
Reenable view raw message
2019-11-23 20:06:14 +01:00
Nicolas Werner
86f4119a05
Implement basic ImageMessages in qml timeline
...
I suck at sizing so the images in the message are currently hardcoded to
300 pixels in width...
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
aae295cb02
Fix new messages not arriving in qml timeline
2019-11-23 20:06:14 +01:00
Nicolas Werner
8727831de7
Fix QML emojis
2019-11-23 20:06:14 +01:00
Nicolas Werner
bbbd5df75f
Use system colors for now
2019-11-23 20:06:14 +01:00
Nicolas Werner
c4ba832331
Fix misc CI issues
2019-11-23 20:06:14 +01:00
Nicolas Werner
c1ee22a53e
Fix shadow warning
2019-11-23 20:06:14 +01:00
Nicolas Werner
34f5400e99
Implement TextMessage delegate
...
Text selection over multiple items doesn't work yet
2019-11-23 20:06:14 +01:00
Nicolas Werner
56e27ced25
Format date (close to) the old way in qml timeline
2019-11-23 20:06:14 +01:00
Nicolas Werner
ccedbde38b
Add avatar placeholder and scrollbar to qml timeline
2019-11-23 20:06:14 +01:00
Nicolas Werner
2dd636456c
Add basic sections and button placeholders to qml timeline
2019-11-23 20:06:14 +01:00
Nicolas Werner
699fd7b38e
Implement loading of history, when timeline is displayed
2019-11-23 20:06:14 +01:00
Nicolas Werner
47fbfd3f44
Add items to timline
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
rnhmjoj
1659176c0d
escape html before parsing commonmark
2019-09-25 01:18:01 +02:00
Aidan Hahn
34ac2c4f75
re-re-linted
2019-09-03 21:23:54 -07:00
Aidan Hahn
4a223ef508
relinted
2019-09-03 19:59:08 -07:00
Aidan Hahn
5326d29e56
group similar ui options on settings page
2019-09-02 23:40:42 -07:00
Aidan Hahn
69fbaf9ae6
ran make lint to apply style guidelines
2019-09-02 23:30:59 -07:00
Aidan Hahn
3677c58a17
ReImplement UserSettings::setAvatarCircles
2019-09-01 19:54:50 -07:00
Aidan Hahn
a38f390355
Merge branch '0.7.0-dev' of https://github.com/Nheko-Reborn/nheko into 0.7.0-dev-bugfix-71
2019-09-01 16:32:09 -07:00
Aidan Hahn
ce978589b7
removed leftovers from previous refactor
2019-09-01 16:28:19 -07:00
Aidan Hahn
1e6fc6e342
fixed typoes in code, added layout metadata to new settings toggle.
2019-09-01 16:10:11 -07:00
Aidan Hahn
a1c2aed36a
Refactored Avatar and RoomInfoListItem to access rounding settings in place
2019-09-01 14:41:23 -07:00
DeepBlueV7.X
5be967fb1d
Merge pull request #86 from Nheko-Reborn/avatar-memory-usage
...
Try to reduce memory usage by reusing avatar pixmaps
2019-08-30 23:15:09 +00:00
Joseph Donofry
98d4f14bd1
Fix themeing issues on mentions
2019-08-29 18:01:20 -04:00
Aidan Hahn
b10d453bd5
add controll bits for avatar rounding
2019-08-28 21:36:28 -07:00
Aidan Hahn
8a47388ec6
rounding options for Avatar class
2019-08-28 18:34:04 -07:00
Aidan Hahn
26002bf0e4
added logic in avatar class to determine rounding type
2019-08-27 23:31:04 -07:00
Nicolas Werner
c5f0c3221f
Fix usage of deprecated find
2019-08-28 08:21:07 +02:00
Nicolas Werner
8b5515d5c1
Remove unused variables
2019-08-26 08:51:56 +02:00
Nicolas Werner
52056a79fa
Try to reduce memory usage by reusing avatar pixmaps
2019-08-26 08:51:56 +02:00
Joseph Donofry
89015b9f18
Fix SIGNAL SLOT issue on mtx types
2019-08-19 20:44:58 -04:00
Joseph Donofry
8d04236fbd
Fix build issues w/ clang
2019-08-19 18:54:17 -04:00
Joseph Donofry
bcdd97c85f
More updates to mentions functionality
2019-08-19 18:11:38 -04:00
Joseph Donofry
52a2621776
Fix issues with caching and loading of mentions.
...
Mentions are now loaded from the cache instead of
directly from the web request. Mentions are also
properly saved to the cache now (instead of as empty
strings). Still lots of tweaks left on this feature.
2019-08-12 22:09:40 -04:00
Joseph Donofry
8839cb7d68
Fix missing include in prior commit
2019-08-10 13:20:13 -04:00
Joseph Donofry
d5bb0936bf
Use 'system' theme as default if QT_QPA_PLATFORMTHEME is set
...
On first launch, before the user has configured any settings,
check the value of the QT_QPA_PLATFORMTHEME environment var.
If it is set, use the system theme as the default instead of the
light theme. This fixes #72 .
2019-08-10 13:14:37 -04:00
Joseph Donofry
7c7889a04d
Fix linting issues w/ the last commit
2019-08-09 23:36:45 -04: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
41dc420edd
Fix linting issues
2019-08-06 08:16:19 -04:00
Joseph Donofry
dbdaf35907
Cache user mentions
2019-08-05 23:00:07 -04:00
Joseph Donofry
24a6495291
Fix lambda capture issue
2019-07-29 15:37:21 -04:00
Joseph Donofry
fd2d4d6db3
Update mentions dialog
...
Mentions are now separated into 'this room' and 'all rooms'
tab., which allows the user to filter on the current room
if they desire. Should add additional logic in the future
to show which room the mention was in the for the 'all rooms'
view.
2019-07-28 23:14:10 -04:00
Joseph Donofry
497774d623
Fix linting
2019-07-28 20:50:18 -04:00
Joseph Donofry
b875a8debc
Update translation context
2019-07-28 18:45:37 -04:00
Joseph Donofry
a9375add32
Address 'sent' translation issue
2019-07-28 18:40:23 -04:00
Nicolas Werner
0398c846f6
Add 'and' to typing display
2019-07-28 18:13:16 +02:00
Nicolas Werner
b28115eb37
Fix message_type not being initialized correctly
...
Fixes "sent an audio file" replies, that were actually replies to text
messages.
2019-07-28 16:50:10 +02:00
Nicolas Werner
dbb8eecf29
media->file in error message, when image upload fails
2019-07-28 16:16:02 +02:00
Nicolas Werner
50c3d4ed3a
Add decryption error messages to translations
2019-07-28 13:16:13 +02:00
Nicolas Werner
1c9cc33902
Try to localise timestamps
...
I'm not sure, if that is the right way, but Qt doesn't really have a way
to format custom localised dates, so I tried to find the closest
approximations to what we currently have.
Relates to #69
2019-07-28 12:55:08 +02:00
Joseph Donofry
f18a5dacda
Ignore badge label macos deprecations
2019-07-26 17:47:52 -04:00
Joseph Donofry
9fc079a4a9
Remove uneeded log message
2019-07-26 17:47:34 -04:00
Joseph Donofry
86888ee713
Fix bug with emoji font setting and clean linting
2019-07-26 17:44:44 -04:00
Joseph Donofry
778921be8a
Add emoji text selection option for non-mac
2019-07-26 17:31:59 -04:00
Nicolas Werner
78ed78c410
Improve layout of Emoji Picker
...
Respect system styling
Increase size of emojis (to remove empty space)
Add hover effect (partially adresses #41 )
Less hardcoding of sizes
Use emoji font (color)
2019-07-25 11:49:15 +02:00
Joseph Donofry
49ec388c1d
Merge branch '0.7.0-dev' of ssh://github.com/Nheko-Reborn/nheko into 0.7.0-dev
2019-07-21 21:58:48 -04:00
Joseph Donofry
8b2488b7ef
Update Mentions UI
...
Mentions are now an '@' icon in the upper right.
UI Popup is now a smaller dialog.
Still lots of work to be done here.
2019-07-21 21:58:11 -04:00
Nicolas Werner
cefe5fe719
Fix copy and pasting image from clipboard
...
If the QMimeData contains an image, it actually has a mime type of
application/x-qt-image. At least in some cases accessing the image/*
data returns a 0 length array. Accessing the data via ->imageData works
however. So we use that as our accessor and pass it to the preview
dialog.
2019-07-22 02:38:44 +02:00
Nicolas Werner
512db8c6ff
Actually set attributes before starting the app
...
fixes "Attribute Qt::AA_EnableHighDpiScaling must be set before
QCoreApplication is created."
2019-07-22 00:03:12 +02:00
Joseph Donofry
d2af827194
Fix linting issues
2019-07-16 22:50:23 -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
e5576f03d4
Fix additional Qt version issue
2019-07-05 16:31:01 -04:00
Joseph Donofry
4c0d4f35fe
Fix support for Qt versions < 5.11
2019-07-04 22:58:56 -04:00
Joseph Donofry
2484e0c118
Fix formatting issues
2019-07-04 21:31:28 -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
Joseph Donofry
175737c28b
Fix some linting issues
2019-07-04 13:18:32 -04:00
Nicolas Werner
713f9dbe89
Show room version in settings
2019-07-04 01:26:16 +02:00
Nicolas Werner
94a8c358d1
Fix typo in log message
2019-06-27 23:01:07 +02:00
Nicolas Werner
aa3d4c4f15
Reconfigure server url, when requested by login response
2019-06-27 15:55:04 +02:00
Nicolas Werner
52871cf93c
Support well-known for server discovery
2019-06-27 15:54:03 +02:00
Nicolas Werner
40d9b5c5fc
Fix santizize=undefined warning (overflow)
2019-06-27 14:57:32 +02:00
Joseph Donofry
cfd6c5703a
Further UI Updates to Rich Replies
2019-06-14 20:45:37 -04:00
Joseph Donofry
129beb57c9
Further Improve Reply Functionality
...
Quoted replies now include matrix.to links for the event and the user.
UI Rendering has been (slightly) improved... still very WIP.
Restructured the reply structure in the code for future usability
improvements.
2019-06-13 22:33:04 -04:00
redsky17
1d4966d5fd
Add style for reply popup. Fix ALL of the linting issues
2019-06-11 23:36:46 -04:00
redsky17
71c1cbcfd1
Fix lambda capture and lint issues
2019-06-11 22:34:15 -04:00
Joseph Donofry
756c7d1671
Fix linting issue
2019-06-11 21:06:18 -04: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
b9dde957a8
Add initial support for rich replies to nheko
2019-06-09 19:03:18 -04:00
redsky17
bca4d7eef6
Merge in master
2019-05-27 16:40:39 -04:00
redsky17
9671b1c0d6
Fix linting issues
2019-05-27 16:06:28 -04:00
redsky17
7c630b1363
Add reply and menu buttons to TimelineItem
2019-05-27 16:04:35 -04:00
Nicolas Werner
c8c0b41527
Raw string literals not allowed in MOC headers on OSX
2019-05-01 13:33:34 +02:00
Nicolas Werner
23eef9e1bc
Simplify linkifyMessage
...
Parsing html as xml has inherent problems, most notable there are many
matrix clients that don't escape ampersands in urls of mx-replies, etc.
(See issue #18 )
This also removes the replacement of <mx-reply> as it isn't strictly
needed.
Also the QRegExp is replaced with the Qt5 QRegularExpression for
perfomance and because it supports lookahead and lookbehind.
I'm pretty sure that the original code also replaced href="" with
href=\"\", which was probably wrong, but I'm not to sure about that.
Fixes #18
2019-05-01 12:11:19 +02:00
redsky17
4cb27f34f2
Fix linting
2019-04-04 22:24:21 +00:00
redsky17
994f79cfbc
Update nheko to export sessions using new format
...
(requires mtxclient updates as well).
2019-03-27 23:13:38 +00:00
Joseph Donofry
6f13b0df0d
Merge pull request #43 from vtronko/implicitconversion_fix
...
Get rid of implicit conversion in text input height calculation. Thanks @vtronko
2019-03-03 18:48:46 -05:00
Vladyslav tronko
c719e01f3d
Don't let multiline text background overlap top border of text widget
2019-03-04 00:54:53 +02:00
Vladyslav Tronko
d2a28072f6
Get rid of implicit conversion in text input height calculation
2019-03-03 20:34:57 +02:00
redsky17
8a2df06f3a
Fix linting issue
2019-02-25 03:10:02 +00:00
redsky17
75fb95855d
Nlohmann build updates
2019-02-24 20:05:11 +00:00
Andrew Johnson
b5733b2737
Attempt to fix issue #19 by increasing the lmdb max_dbs setting.
2019-02-16 17:05:25 -08:00
redsky17
13663ad5f8
Improve color generation performance
...
Colors are generated asynchronously now and the TimelineItem is
updated when the color generation finishes. This allows the UI
to stay responsive while new colors are being generated.
2019-02-08 01:58:00 +00:00
redsky17
bb345a9a9f
Merge branch 'ui-enhancements'
...
Preparing for 0.6.3 release
2019-02-07 23:15:25 +00:00
rnhmjoj
933fd22e49
escape id when joining a room
2019-02-07 13:51:18 +01:00
redsky17
6d629f1c90
Add download button to ImageOverlay
...
When opening images in the full-screen overlay, there is now
a download button next to the close button. This button utilizes
the same functionality as the right-click->save image button.
2019-01-30 18:01:36 -05:00
redsky17
f7255b7b49
Restore Emoji Picker, but remove forcing EmojiOne
...
Restored the emoji picker, but it now falls back to the system
instead of forcing Emoji One. The allows users to user the
picker for convenience, but doesn't enforce the emoji style on them.
2019-01-26 21:02:22 +00:00
redsky17
df5d24c87f
Revert "Remove built-in emoji picker"
...
This reverts commit 4b807229aa
.
2019-01-26 18:17:08 +00:00
redsky17
faff23ed38
Fix lint issues in last commit
2019-01-26 18:11:30 +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
redsky17
22a08ba6a4
Fix lint issue
2019-01-26 06:09:51 +00:00
redsky17
f869ff5ded
Fix inconsistent user color updates.
2019-01-26 06:03:52 +00:00
redsky17
2ba51c821e
Update user colors to use Cache vs Utils
...
User colors are now stored in cache. This is consistent
with other similar variables. I think there's a bug
right now where it doesn't properly refresh colors
for the TimeLineItem when the theme is changed.
2019-01-26 02:55:07 +00:00
redsky17
4185b8d121
Add unread notification color for user mentioned
...
When user is mentioned (via matrix 'highlight_count'), inactive
rooms will use a different color for the notification circle than
when only general unread messages exist.
2019-01-25 02:47:15 +00:00
redsky17
d70bc94f61
Fix lambda capture error
2019-01-24 04:54:35 +00:00
redsky17
237c7ad114
Author Color Fixes
...
Author color is now cached so that it will not be re-calculated
each time a new message is posted. This cache gets cleared when
the theme is changed.
Additionally, the author color is now automatically refreshed
when the theme is changed, fixing the issue where you had to
change rooms before the colors would switch.
2019-01-20 04:43:48 +00:00
redsky17
b3f7c13e2f
Update user id color generation
...
Update the author color generation. Now, instead of generating
an entire hex string based on the user id, the user id instead
is used to generate a hue value. After this hue value is created,
there is some logic to tweak first the lightness and then saturation
values to achieve a readable color (in contrast to the background).
This change makes it so that user colors will not vary as wildly
between the different themes.
The values still are not cached and still do not update
initially when the theme is changed. Both of these things
will be resolved.
2019-01-20 00:16:31 +00:00
redsky17
98102f4f09
Fix UserSettings UI not showing saved prefs
...
Theme and Font Family settings will now correctly display the stored
settings when nheko is re-launched. Previously, these combo boxes
would default to the first thing in the combo box, even if that
wasn't what the user selected.
2019-01-19 17:31:17 +00:00
redsky17
654b652db4
Add User Font Setting
...
User can now select a font from the installed fonts on their system
This font currently will only be applied when nheko is restarted
(similar to how font size and scaling currently work). This will
be addressed in a future commit. Additionally, the dropdown
does not correctly select the previously-chosen user font, and
instead defaults to the first font available on the system
(alphabetically). This is similar to the issue with the 'Theme'
combo defaulting to 'Light' even when another theme is selected.
2019-01-19 16:20:41 +00:00
redsky17
50e382f554
Modified the code that generates user's colors so that it will
...
work regardless of the theme choices the user makes. The code
now incorporates the contrast between the background color and the
color generated by the user_name when picking colors. It currently
has two 'big' issues:
1. Colors are not cached. I am planning on adding a QHash for this
a little later. This should improve performance by not calculating
the color for the same users over and over and over again.
2. Theme changes do not trigger the colors to get refreshed.
Currently, you will have to switch to a different room and back
to get the colors to refresh.
2019-01-18 17:17:25 +00:00
redsky17
1882198e4b
Make the author text slightly large.
...
Add author color generated based on user id.
2019-01-18 04:09:42 +00:00
redsky17
55883ec2de
Remove the code that removed paragraph tags from markdown -> html.
...
This fixes #2 , but reverts mujx#438. I do not think mujx#438 was a
valid issue, as it complained about the display of valid HTML on riot,
which speaks more to how Riot styles things than about an issue in
nheko itself.
2019-01-18 00:59:31 +00:00
redsky17
996a4c9590
Fix clang-format linting issue
2019-01-16 18:18:57 +00:00
redsky17
bcabf2fb73
Update travis ci config to point to redsky17 config and try to fix lint
...
errors
2019-01-13 03:48:07 +00:00
redsky17
3fceaeb203
Add hover color for timestamp.
...
Update dark and system themes to provide
colors for the hover states for title, subtitle, and timestamp.
2019-01-12 22:03:25 +00:00
Joe Donofry
ae91bab07d
Tweak some of the colors in the CSS rules for nheko.
...
Add room list hover title/subtitle color change support.
2019-01-12 14:35:56 +00:00
Konstantinos Sideris
6a90ed574e
Increase the height of the roomlist items
2018-10-10 22:02:59 +03:00
Konstantinos Sideris
184c8b28e9
Use a smaller font size for the timestamp
2018-10-07 16:32:46 +03:00
Konstantinos Sideris
f272d9221e
Use alignment instead of stretch
2018-10-07 14:18:44 +03:00
Konstantinos Sideris
aa486a5c0c
Adjustments for the minimized sidebar
2018-10-07 14:09:47 +03:00
Konstantinos Sideris
2295d681a4
Remove the bundled open sans font
2018-10-07 13:27:20 +03:00
Konstantinos Sideris
4b807229aa
Remove built-in emoji picker
2018-10-07 13:13:14 +03:00
Konstantinos Sideris
c2faaa4d39
Add the correct parent to scaleCombo
2018-10-07 12:58:38 +03:00
Konstantinos Sideris
4865f852d8
Remove room re-ordering option
2018-10-06 18:43:53 +03:00
Konstantinos Sideris
3fdfc9b69f
Remove Scrollbar
2018-10-06 18:39:11 +03:00
Konstantinos Sideris
675f1be777
Adjust the height of the bottom widgets
2018-10-06 18:07:02 +03:00
Konstantinos Sideris
748c5898be
Adjust the font sizes of the welcome page
2018-10-06 17:41:47 +03:00
Konstantinos Sideris
844443a324
Adjust the widget size of the room list items
2018-10-06 17:21:03 +03:00
Konstantinos Sideris
420937ab83
Derive widget sizing from the font size
2018-10-04 00:32:13 +03:00
Konstantinos Sideris
be1478183e
Remove some unnecessary calls
2018-10-02 13:16:44 +03:00
Konstantinos Sideris
3a57d1018e
Add option to configure the font size
...
fixes #161
2018-10-01 17:56:46 +03:00
Konstantinos Sideris
4b1b062388
Enable debug logs
2018-09-30 14:33:54 +03:00
Konstantinos Sideris
8f89ad15f7
Change the minimum width for modals
2018-09-30 13:37:38 +03:00
Konstantinos Sideris
9038c950ae
Remove pixel value from fonts
2018-09-30 13:24:36 +03:00
Konstantinos Sideris
d1e08e0008
Remove obsolete font/size setting
2018-09-29 14:26:47 +03:00
Konstantinos Sideris
29f442a9f9
Remove pixel values from the text input widget
2018-09-29 14:19:22 +03:00
Konstantinos Sideris
758be07a5a
Make the height of the bottom bar smaller
2018-09-29 14:05:59 +03:00
Victor Berger
18a98a7c1d
Display tags as sorting items in the community panel ( #401 )
2018-09-28 12:40:51 +00:00
Konstantinos Sideris
59a1b6b47c
Don't enable tray by default
2018-09-26 19:22:52 +03:00
Konstantinos Sideris
bbf37bf633
Don't clear selection when a context menu is requested
2018-09-26 19:21:10 +03:00
Konstantinos Sideris
c64a1bf759
Move TextLabel into its own file
2018-09-26 15:17:14 +03:00
Konstantinos Sideris
9bc7b6305e
Lint
2018-09-26 12:06:30 +03:00
Konstantinos Sideris
c9427c7f17
Clear text selection when focus is lost
...
fixes #409
2018-09-25 18:06:11 +03:00
Konstantinos Sideris
7a288cc2cb
Add infinite scroll in member list
...
fixes #446
2018-09-25 15:43:48 +03:00
Konstantinos Sideris
39b4c83bb0
Don't clear the member list when the modal is hidden
...
fixes #447
2018-09-25 14:53:07 +03:00
Konstantinos Sideris
adf2019c56
Use QPushButton on the preview modal
2018-09-25 14:41:47 +03:00
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
Konstantinos Sideris
9102a141f3
Handle OLM_MESSAGE type of messages properly
2018-06-15 01:35:31 +03:00
Konstantinos Sideris
7fc010fc4f
Fix CI errors on macOS & Windows
...
- Run the linter
- Explicitly use cmake for installing olm
2018-06-14 09:36:41 +03:00
Konstantinos Sideris
8e9d210a2a
Rename the log namespace to avoid symbol clash with the math function
...
- Patch the olm repo with a CMakeLists.txt file
2018-06-14 02:28:35 +03:00
Konstantinos Sideris
5d47cc3940
Add support for sending encrypted messages
2018-06-13 12:28:00 +03:00
Konstantinos Sideris
e5dd64c63a
Add method to convert PendingMessage's to event types
...
Add more logging during message sending
2018-06-12 22:35:10 +03:00
Konstantinos Sideris
a97528b432
Fix bug where cache was initialized twice in a row
2018-06-12 20:36:16 +03:00
Konstantinos Sideris
36cb62748b
Add menu option to enable encryption in a private room
2018-06-12 09:45:26 +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
0a9d95dfc9
Include mtxclient in the build
2018-06-04 13:54:51 +03:00
Konstantinos Sideris
0fe81ecd4a
Show Matrix ID tooltip when hovering over display name
...
fixes #212
2018-05-26 22:44:49 +03:00
Konstantinos Sideris
b371c15b5f
Properly resize Audio & File widgets
...
Remove empty space between username & timeline widgets
2018-05-26 17:05:57 +03:00
Konstantinos Sideris
90595beb16
Set fixed height for the DateSeparator & TextLabel
2018-05-26 10:34:34 +03:00
Konstantinos Sideris
bcba977f4c
Fix resize slowness on the TopBar
2018-05-25 16:13:38 +03:00
Konstantinos Sideris
5538a04690
Make the number of unread messages fit in the bubble
...
fixes #330
2018-05-25 10:01:53 +03:00
Konstantinos Sideris
3cf7ab9f04
Fix line break issue on timeline with long words
...
fixes #193
2018-05-23 16:33:30 +03:00
Konstantinos Sideris
9eb1c496a0
Retrieve the current room state from cache when the edit modal opens
2018-05-18 21:43:58 +03:00
Konstantinos Sideris
d88dee3185
Refresh the room info on the top bar after sync
2018-05-18 21:37:08 +03:00
Konstantinos Sideris
4ab42c68f4
Fix crash on unfinished animation & center the edit modal
2018-05-18 21:27:44 +03:00
Konstantinos Sideris
791a9d0a4d
Hide the edit menu when the user doesn't have enough power
2018-05-16 23:30:50 +03:00
Konstantinos Sideris
340c9ab9de
Add menu to modify the name & topic of the room
...
fixes #235
2018-05-16 20:41:15 +03:00
twahm
4bd43780d9
Add read support for room access options ( #324 )
...
- Join rules
- Guest access
2018-05-13 01:31:58 +03:00
Konstantinos Sideris
18061f0600
Use the correct avatar size for HiDPI displays
2018-05-11 16:00:14 +03:00
Konstantinos Sideris
05585ff8cf
Make explicit that MatrixClient & Cache are unique pointers
2018-05-11 13:41:46 +03:00
Konstantinos Sideris
701aa93b0a
Add scrollbar in the settings menu
2018-05-09 01:00:10 +03:00
Anton Karmanov
17896b1c82
Start in tray ( #319 )
2018-05-08 23:53:40 +03:00
Konstantinos Sideris
7d809be79f
Hide SnackBar initially & guard against access of an empty list
2018-05-08 23:38:57 +03:00
Konstantinos Sideris
ebed87ea57
Don't use shared pointers for cache
2018-05-08 20:30:09 +03:00
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
Konstantinos Sideris
3929261a8e
Use QSharedPointer to save RoomStates
2018-01-13 17:15:47 +02:00
krombel
f87b8fe817
Upload filter automatically and use filter_id ( #201 )
...
When a custom filter is inserted into nheko.conf or there was no filter
defined yet the default filter gets automatically uploaded.
After a successful upload the server-side generated filter-id is used.
This is done async as it is just an enhancement and it is not required
to upload the filter before the first request.
2018-01-13 14:49:51 +02:00
Konstantinos Sideris
daabb40bed
Use Q_NULLPTR to be compatible with qt5.7
...
fixes #199
2018-01-12 11:27:24 +02:00
Konstantinos Sideris
5b09c8e652
Handle surrogate pairs in avatars
2018-01-12 10:21:53 +02:00
Konstantinos Sideris
8beef5e61f
Dismiss modal by clicking on the overlay
2018-01-11 18:10:18 +02:00
Konstantinos Sideris
9521efab7e
Lint
...
[ci skip]
2018-01-11 16:34:43 +02:00
krombel
0570135253
Filter out content in sync that is currently unhandled ( #198 )
...
I had a look at sync.cpp and checked which parts of the sync response
are currently handled and which not. As I think it is unnecessary to let the
unhandled data be transmitted without being handled I added these filters.
In the same term I increased the timeout server-side to 30s as Riot
defaults to this value as well. Especially now when a lots of presence-updates
are not send anymore this value is more relevant.
It is now also possible to use a filter that is defined in`client/sync_filter`.
Advanced users might want to set an own filter here.
[ci skip]
2018-01-11 16:33:50 +02:00
Konstantinos Sideris
82341247f7
Remove Connection header
2018-01-10 23:38:34 +02:00
christarazi
ddfce136ed
Add support for pasting images into a room ( #180 )
...
fixes #132
2018-01-10 09:52:59 +02:00
Konstantinos Sideris
53f670096c
Make group's sidebar visible through an option
2018-01-09 21:57:41 +02:00
Max Sandholm
312df6f3bb
Communities ( #195 )
2018-01-09 15:07:32 +02:00
Konstantinos Sideris
81a706bf20
Make usernames in timeline less bold
2018-01-08 11:27:37 +02:00
Konstantinos Sideris
953634c9b5
Enable read receipts on messages sent through nheko
2018-01-05 15:28:38 +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
a7e84b63ac
Remove an extra colon from the receipt time
...
[ci skip]
2018-01-04 10:52:49 +02:00
Konstantinos Sideris
eaf05748ff
Initial support for read receipts
2018-01-03 18:06:29 +02:00
Konstantinos Sideris
f7003ddeb5
Load last content from all rooms
...
fixes #175
2017-12-30 18:16:11 +02:00
Konstantinos Sideris
5e0fbe87a0
Use toMSecsSinceEpoch
to be compatible with qt < 5.8
2017-12-30 17:44:47 +02:00
Konstantinos Sideris
208f957911
Re-order room list based on activity
...
fixes #2
2017-12-30 17:29:57 +02:00
Konstantinos Sideris
d1d8b92b37
Use qobject_cast on TimelineItem
2017-12-30 11:59:55 +02:00
Konstantinos Sideris
1ab55d4732
Add date separator in the timeline
...
fixes #157
2017-12-25 23:02:33 +02:00
Konstantinos Sideris
6835a97b15
Use a better regex to identify URLs
2017-12-24 13:13:07 +02:00
Konstantinos Sideris
e57f5f848b
Restrict display name width to 500px
2017-12-23 14:06:59 +02:00
Konstantinos Sideris
9d763c4de9
Don't keep fetching history on non-visible timelines
...
If the user switched to another timeline before the current timeline
filled up with messages, nheko would keep fetching history.
Now it will check periodically if the timeline became visible so
it can decide whether or not to stop fetching history.
2017-12-23 13:50:11 +02:00
Konstantinos Sideris
de61663e42
Use the "state_key" to assign avatars
...
fixes #113
fixes #173
2017-12-22 16:02:08 +02:00
Konstantinos Sideris
33f534c6f8
Cache room avatars ( #139 )
...
fixes #107
2017-12-22 00:00:48 +02:00
Konstantinos Sideris
ece20dd917
Add rounded corners to inline images
2017-12-21 18:27:57 +02:00
Konstantinos Sideris
32377dc027
Remove the 'Video' prefix from video links
2017-12-21 16:02:54 +02:00
Konstantinos Sideris
1705273bb8
Fix font size inconsistencies
2017-12-21 14:36:05 +02:00
Konstantinos Sideris
ccbcfe9fa4
Bold room names
2017-12-21 13:41:05 +02:00
Konstantinos Sideris
aaa4d8c323
Prevent emoji selector for closing
...
fixes #176
2017-12-21 13:17:38 +02:00
Konstantinos Sideris
f11044b5eb
Handle incoming invites
...
fixes #128
2017-12-19 22:36:12 +02:00
Konstantinos Sideris
101bf47443
Remove minimum height limit ( #160 , #163 )
2017-12-17 17:49:22 +02:00
Konstantinos Sideris
b5e692bb28
Improve logging on event parsing failure
2017-12-16 19:31:07 +02:00
Konstantinos Sideris
65672d3dfb
Allow only one application instance
...
fixes #141
2017-12-14 21:55:00 +02:00
Konstantinos Sideris
1d285993f7
Valgrind run
...
- Fix a memory leak where a layout was created without being used.
- Fix uninitialized value.
2017-12-12 09:31:00 +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
19bae2a2e6
Add gui option for joining rooms ( #25 )
2017-12-10 15:22:01 +02:00
Konstantinos Sideris
d872b1060b
Reset cache on breaking changes
...
fixes #154
2017-12-10 12:51:44 +02:00
Konstantinos Sideris
f176af0f7a
Catch deserialization exceptions on initial /sync
2017-12-06 21:25:56 +02:00
Konstantinos Sideris
c1d0bbaf0b
Prevent queue from getting blocked ( #142 )
...
Try sending a message when all the sent messages have been received
through /sync.
2017-12-06 02:59:15 +02:00
Konstantinos Sideris
6415c4125f
Add style colors for the ScrollBar
2017-12-05 14:13:26 +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
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
f4f78b1d8a
Add basic support for m.video messages
...
fixes #115
2017-12-01 18:28:26 +02:00
Konstantinos Sideris
5573548fb1
Allow audio clip uploads
2017-12-01 17:33:49 +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
5663c58dd9
Use templates for the TimelineItem generation
2017-11-30 13:19:34 +02:00
Konstantinos Sideris
deb1a6e292
Simplify timeline item creation
2017-11-30 12:55:30 +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
f1eb0bbac0
Remove another /messages call ( #139 )
2017-11-26 22:30:14 +02:00
Konstantinos Sideris
e4c8a555d6
Don't backfill messages automatically ( #139 )
2017-11-26 02:22:58 +02:00
Konstantinos Sideris
0dad256743
Reload theme without restart ( #137 )
2017-11-25 22:47:06 +02:00
Konstantinos Sideris
54cf3418bc
Paint RoomList's background ( #137 )
2017-11-25 22:20:34 +02:00
Konstantinos Sideris
f0ecf6eee6
Add dark theme
2017-11-25 18:19:58 +02:00
Konstantinos Sideris
f36e498503
Update system theme
2017-11-25 15:14:37 +02:00
Konstantinos Sideris
f4036f6f56
Use span tags to prevent html escaping
2017-11-25 14:01:01 +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
Konstantinos Sideris
fc34f373df
Remove unnecessary comments
2017-11-22 21:13:22 +02:00
Konstantinos Sideris
56d8be5a27
Fix emoji picker's theme
2017-11-22 21:03:53 +02:00
Konstantinos Sideris
552941118b
Fix minor stylistic issues on the nheko theme
2017-11-22 19:52:38 +02:00
Konstantinos Sideris
929b2df6fb
Merge branch 'theme'
2017-11-22 19:09:19 +02:00
Konstantinos Sideris
937caddacd
Keep track of newly joined rooms in the settings manager
...
fixes #134
2017-11-21 17:34:32 +02:00
Max Sandholm
19b526d453
Use system color scheme (using a Qt stylesheet) #104
...
The color scheme of nheko obeys the default color theme of Qt
(i.e. the system theme). It uses a Qt stylesheet to accomplish this,
which means replacing the color theme with a custom theme would only
be a matter of writing a new style sheet and loading it into the app.
2017-11-16 16:33:52 +02:00
Konstantinos Sideris
21fdb26bd4
Don't send empty messages
2017-11-16 14:42:13 +02:00
Konstantinos Sideris
4166a863b4
Lint
2017-11-15 18:42:21 +02:00
Jani Mustonen
4e1c8dd663
Implement a per-room send queue. ( #118 )
...
[ci skip]
2017-11-15 18:38:50 +02:00
Konstantinos Sideris
e40dab9f98
Improve settings menu layout
2017-11-09 22:04:40 +02:00
Konstantinos Sideris
b586a2329c
Fix roomlist borders
2017-11-09 11:39:21 +02:00
Konstantinos Sideris
9c331905e6
Fix initial sidebar width
2017-11-09 00:17:08 +02:00
Konstantinos Sideris
a6b84fac45
Remove unnecessary layouts
2017-11-08 23:09:15 +02:00
Konstantinos Sideris
26904fe992
Remove obsolete artifact from appveyor
2017-11-07 09:16:39 +02:00
Konstantinos Sideris
dc0ffc26dd
Merge remote-tracking branch 'ralith/fix-newlines'
2017-11-07 09:15:30 +02:00
Konstantinos Sideris
24dd76ee0b
Parse unsigned key
2017-11-06 22:14:16 +02:00
Benjamin Saunders
097dac4f79
Fix wacky newline/linkification interaction
2017-11-05 16:23:19 -08:00
Benjamin Saunders
e19775443a
Fix newlines not being displayed ( #122 )
...
Fixes #64
2017-11-06 00:29:02 +02:00
Benjamin Saunders
d0d15f8f58
Fix a formatting issue that snuck in between PRs ( #123 )
2017-11-06 00:25:47 +02:00
Benjamin Saunders
5bd5555a51
Use C++11 braced list style ( #121 )
2017-11-05 23:04:55 +02:00
Benjamin Saunders
4ccb5ed81f
Add input history, enable multi-line input, refactor commands ( #119 )
...
This also fixes the transmission of mis-typed commands as messages,
fixes inability to send messages that start with a command, and does
some initial work towards automatically resizing the input field to fit
the input message.
2017-11-05 23:01:21 +02:00
Konstantinos Sideris
595d11cfa0
Exclude modifier keys from triggering typing notifications
...
fixes #116
2017-11-05 00:19:56 +02:00
Jani Mustonen
8c5a331c73
Simple SOCKS proxy support ( #110 )
2017-11-04 13:28:50 +02:00
Konstantinos Sideris
7e03ca4359
Reset the sender's name when paginating backwards
...
The first message of the timeline would have an avatar and
the rest of the messages would use the previous to be configured
(whether or not should have an avatar).
fixes #63
2017-11-03 14:25:01 +02:00
Jani Mustonen
13cb0521fa
Improvements to the quick switcher ( #109 )
...
- Ghetto disambiguation for the quick switcher
- Fix the Ctrl+K shortcut
- Fix keyboard focus when the quick switcher is closed
fixes #114
2017-11-03 08:54:17 +02:00
Konstantinos Sideris
beda0db543
Update issue template
2017-11-02 22:02:31 +02:00
Jani Mustonen
84741adc16
Implement a setting for the tray icon ( #108 )
2017-11-02 22:00:43 +02:00
Konstantinos Sideris
886edd03fb
Add dummy settings menu
2017-11-02 00:41:13 +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
e224440f5d
Display user avatar changes
2017-10-28 21:11:40 +03:00
Konstantinos Sideris
c18a49915b
Save the changes between syncs in cache
...
- Fixes high cpu issues caused by the serialization of the whole
in-memory state.
- Display name changes are now visible in the timeline.
2017-10-28 20:46:34 +03:00
Konstantinos Sideris
a17b6dffaf
Clean up headers
2017-10-28 15:46:39 +03:00
Konstantinos Sideris
845228ac6a
Add scroll-down button
2017-10-27 22:20:33 +03:00
Konstantinos Sideris
8e15a5080d
Adjust scrollbar only after pagination ( #94 )
...
The scrollbar will stay in the same position if new messages
are added to the bottom of the timeline.
2017-10-27 13:36:26 +03:00
Konstantinos Sideris
c6e1068e0e
Lint
2017-10-23 00:19:35 +03:00
Konstantinos Sideris
143ed5176a
Use callbacks on MatrixClient
2017-10-22 22:51:50 +03:00
Konstantinos Sideris
c0e55378c3
Remove extra inline keywords
2017-10-22 19:03:55 +03:00
Konstantinos Sideris
160fe1d668
Remove cache updates from the main thread
2017-10-21 21:17:01 +03:00
Konstantinos Sideris
3cae6c3983
Remove ui flickering when adding new timeline events
2017-10-21 18:53:15 +03:00
Konstantinos Sideris
47d1546adf
Clean unread count when the user logs out
...
fixes #60
2017-10-21 16:46:11 +03:00
Konstantinos Sideris
13e526c27d
Retry initial sync ( #19 )
2017-10-20 22:32:48 +03:00
Konstantinos Sideris
8a9a513ecd
Move ctrl-k callback to the MainWindow
2017-10-20 21:39:05 +03:00
Konstantinos Sideris
9b60fdd620
Remove sync timer
2017-10-20 21:21:04 +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
8299a74775
Elide room topic
2017-10-19 19:04:51 +03:00
Konstantinos Sideris
8390ff253d
Fix icons for retina displays
2017-10-15 22:08:51 +03:00
Konstantinos Sideris
513f69e88a
Scroll to the bottom on new messages
...
Bug introduced on the last commit
2017-10-09 13:59:44 +03:00
Konstantinos Sideris
ac8e42b926
Reduce timeline flickering
2017-10-09 01:32:25 +03:00
Konstantinos Sideris
76ddfb792b
Add /join command support
2017-10-08 22:38:38 +03:00
Konstantinos Sideris
ac525970b0
Add snackbar
2017-10-08 22:01:18 +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
6e1285bb0e
Prevent FOUC
2017-10-07 20:51:35 +03:00
Konstantinos Sideris
bc4b47a5e3
Use shared pointer for the modals
2017-10-07 20:51:35 +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
28b3a3fde0
Put typing notifications above the text input
2017-10-04 22:00:26 +03:00
Konstantinos Sideris
d60c2b76e3
Receive typing notifications ( #88 )
2017-10-04 11:33:34 +03:00
Konstantinos Sideris
88349eae90
Recover from corrupted cache data
...
Make Cache constructor exception free
fixes #74
2017-10-03 21:16:31 +03:00
Victor Berger
73222aa900
Fix unicode handling of replaceEmoji ( #84 )
2017-10-02 20:52:21 +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
6e0ae807d5
Update badge counter only on change
2017-10-01 18:15:23 +03:00
Konstantinos Sideris
0c0ac68bc2
Remove extra clang-format options
2017-10-01 12:51:29 +03:00
Rokas Kupstys
da6e7c11dc
Fixes #50 .
...
On KDE desktop icon failed to appear because TrayIcon requested a zero-size rect. Implementing MsgCountComposedIcon::availableSizes() method fixes that.
After icon became visible it was not transparent, and places that should have been transparent contained artifacts likely due to uninitialized memory. Implementing MsgCountComposedIcon::pixmap() which returns a pixmap with alpha channel fixes that.
2017-10-01 12:15:38 +03:00
Konstantinos Sideris
775d2e88f5
Don't move scrollbar to the bottom when it's active
...
fixes #55
2017-09-30 22:26:33 +03:00
Konstantinos Sideris
96562c078d
Add custom logging format
2017-09-30 21:36:40 +03:00
Konstantinos Sideris
748f480077
Add missing update calls
2017-09-30 20:44:18 +03:00
Konstantinos Sideris
41a85832b3
Remove unnecessary animations
2017-09-30 17:05:05 +03:00
Konstantinos Sideris
ff1bc797de
Refactor the welcome page
2017-09-30 16:39:24 +03:00
Konstantinos Sideris
b9521b0809
Stop sync timer after logout
...
Silence errors from redacted events
2017-09-30 15:52:14 +03:00
krombel
4c00e64f3f
Allow handling of incomplete /sync responses ( #67 )
...
matrix-org/synapse#2358 proposes a change to only contain objects
in the sync stream where values get updated.
The current behavior leads nheko to fail when that is used.
2017-09-29 21:10:11 +03:00
Konstantinos Sideris
2f488bd9e3
Don't mangle bot's display name
2017-09-28 22:26:24 +03:00
Konstantinos Sideris
03da01423d
Use a valid value for setWeight
2017-09-28 14:42:16 +03:00
Konstantinos Sideris
9def76aa08
Linting
2017-09-24 17:39:06 +03:00
Konstantinos Sideris
f351b00075
Manually remove KDE accelerators
...
fixes #14
2017-09-24 15:25:57 +03:00
Max Sandholm
b1214a9ae8
Ctrl-Q from the main window quits the application ( #69 )
...
Ctrl-Q from the main window now quits the application.
fixes #61
2017-09-24 13:58:36 +03:00
Konstantinos Sideris
ed5a96341b
Properly handle html tags
2017-09-22 22:12:36 +03:00
Konstantinos Sideris
1024198228
Fix reverse iterator crash
2017-09-22 21:34:31 +03:00
Konstantinos Sideris
b45f35cb51
Remove hdpi scaling
2017-09-22 21:33:29 +03:00
Konstantinos Sideris
3d13e1416a
Use white as the background color
2017-09-20 23:17:11 +03:00
Konstantinos Sideris
e7b7bf86c5
Do not capitalise the organization name
2017-09-18 20:50:51 +03:00
Konstantinos Sideris
fd552b8a9c
Remove off-white color
2017-09-16 17:43:34 +03:00
Konstantinos Sideris
29e21e2970
Merge branch 'images'
2017-09-10 13:13:02 +03:00
Konstantinos Sideris
1bfe48de75
Style change again
2017-09-10 12:59:21 +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
a44a4f36af
Add read support for m.emote events ( #41 )
2017-09-02 16:47:59 +03:00
Konstantinos Sideris
6797cbc943
Linkify URLs in room topics
...
closes #52
2017-08-26 15:36:10 +03:00
Konstantinos Sideris
177dd6a5b0
Remove cache data when the user logs out
2017-08-26 14:31:23 +03:00
Konstantinos Sideris
7fbfe3af15
Update the cache state at once to avoid being in an invalid state
2017-08-26 13:49:16 +03:00
Konstantinos Sideris
43b1bdfe63
Remove nick colors
2017-08-26 11:33:26 +03:00
Konstantinos Sideris
18625d9d27
Fix login UX
...
The mxid input will not prevent the user from entering any invalid
value.
closes #22
2017-08-21 20:55:35 +03:00
Konstantinos Sideris
c6ec20fa40
Place the completion popup under the search widget
2017-08-20 21:13:00 +03:00
Konstantinos Sideris
2644e4acca
Small style change
2017-08-20 13:47:22 +03:00
Konstantinos Sideris
8d81489e05
Ghetto room switcher
2017-08-15 21:06:27 +03:00
Konstantinos Sideris
69036967ff
Focus on the text input when switching rooms
2017-08-14 18:25:43 +03:00
Konstantinos Sideris
9c28ba28a8
Update the last sender from the initial pagination
2017-08-14 00:26:57 +03:00
Konstantinos Sideris
f8505fe0bc
Don't overwrite last user
2017-08-13 21:04:43 +03:00
Konstantinos Sideris
9189782d3b
macOS: Get rid of text field's focus border
2017-08-12 13:21:52 +03:00
Konstantinos Sideris
c428ef4b6a
Remove unused variable
2017-08-06 22:37:55 +03:00
Konstantinos Sideris
7a56f65fb3
Use 'You' instead of your own user id
2017-08-06 22:28:54 +03:00
Konstantinos Sideris
146aaa8746
Display the most recent message instead of the topic
...
closes #11
2017-08-06 18:53:31 +03:00
Konstantinos Sideris
4fccc6270e
Fix full screen image viewer on macOS sierra
2017-08-06 10:35:32 +03:00
Konstantinos Sideris
93e8297b61
The emoji panel shouldn't steal focus from other windows
2017-08-05 21:34:24 +03:00
Konstantinos Sideris
dd30b5d06e
Rename Event.h header to avoid header conflict
2017-08-05 17:02:53 +03:00
Konstantinos Sideris
b1c7e58585
Remove extra exception catch
2017-08-05 16:27:30 +03:00
Konstantinos Sideris
af0f22fc91
Keep fetching history until the scrollbar gets activated
2017-08-05 15:59:24 +03:00
Konstantinos Sideris
748eb949a7
Parse utf-8 data properly
2017-08-01 19:42:42 +03:00
Konstantinos Sideris
8d05073547
Initial support for state cache
...
- Adds detection for duplicate events
2017-07-30 14:30:55 +03:00
Konstantinos Sideris
e5ccb73a20
Add serialization on matrix events
2017-07-30 14:30:55 +03:00
Konstantinos Sideris
c6c024ccbf
Append backwards events after the spacer
2017-07-30 14:02:15 +03:00
Konstantinos Sideris
622fc3f9c3
Save and restore app's window size
...
closes #46
2017-07-30 13:59:28 +03:00
Konstantinos Sideris
3c1f9696df
Fix small timestamp misalignment
2017-07-15 19:18:34 +03:00
Konstantinos Sideris
30fb46e25b
Use pixels to specify the font sizes
...
Basically reverts the last font related commits since pointSize isn't
as reliable as pixelSize.
Also some layout values (margins, spacings) have been moved out to Config.h.
2017-07-15 17:11:46 +03:00
Konstantinos Sideris
847ae37df2
Linting
2017-07-09 22:27:20 +03:00
Konstantinos Sideris
b382dfbee6
Remove custom badge counter from mac and windows ( #42 )
...
- Add icon set on mac for future packaging
2017-07-09 12:49:17 +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
george99g
03437cc693
Fix emoji alignment issue ( #43 )
2017-07-04 23:40:41 +03:00
Konstantinos Sideris
140cbd3c27
Slow down spinner
2017-07-02 16:44:05 +03:00
Konstantinos Sideris
06cacc13d1
Show unread count on MacOs toolbar
2017-07-01 16:34:36 +03:00
Konstantinos Sideris
97ca8d0ed1
Remove hardcoded font sizes on the top bars and text input
2017-07-01 15:52:46 +03:00
Konstantinos Sideris
22d0f50e36
Add option for the default font size
2017-07-01 15:21:07 +03:00
Konstantinos Sideris
0ed2350664
Set emoji size relative to the default font
2017-07-01 14:03:00 +03:00
Konstantinos Sideris
730a56f58e
Remove hardcoded font sizes, margins etc
...
- Fixes small font issue on MacOs
2017-07-01 12:46:58 +03:00
Konstantinos Sideris
82b48d926d
Don't collapse room list
2017-06-06 15:03:11 +03:00
Konstantinos Sideris
da190593c8
Repaint when the room avatar is received
2017-06-05 20:19:20 +03:00
Konstantinos Sideris
26dfbfd08c
Lazy load initial timeline events
2017-06-05 19:54:45 +03:00
Konstantinos Sideris
36d25951dc
Fix scrolling flickering on backwards pagination
2017-06-05 19:21:19 +03:00
Konstantinos Sideris
95c492bad8
Experimental support for user avatars in timeline
2017-06-05 02:14:05 +03:00
Konstantinos Sideris
b8c8fed655
Show confirmation dialog on logout
...
Minor stylistic refactoring
closes #29
2017-06-02 18:04:51 +03:00
Konstantinos Sideris
5c283a5cda
Don't mark messages from local user as unread
...
closes #37
2017-06-01 18:55:42 +03:00
Konstantinos Sideris
af80c251d7
Add context menu on RoomList items
2017-05-31 19:42:07 +03:00
Konstantinos Sideris
c184362044
Add menu to toggle notifications
2017-05-31 17:06:03 +03:00
Konstantinos Sideris
5197f8a886
Add drop shadow to emoji panel
...
- Minor refactoring
2017-05-31 02:35:28 +03:00
Konstantinos Sideris
0f72808858
Create a named device on login
2017-05-30 14:28:04 +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
0cd9e3b1e5
Resolve name and avatar on 1-on-1 rooms
2017-05-26 21:34:16 +03:00
Konstantinos Sideris
251f569a5c
Add custom scrollbar on the timeline
2017-05-24 22:45:13 +03:00
Konstantinos Sideris
0237fec90c
Don't show the landing page when there is an active user
2017-05-22 18:03:37 +03:00
Konstantinos Sideris
9772f52876
Increase tray icon's bubble size
2017-05-22 17:35:17 +03:00
Konstantinos Sideris
0e04e4d00e
pixelSize -> pointSize
2017-05-22 00:08:33 +03:00
Konstantinos Sideris
23431362d9
Properly quit app on tray icon's action
...
closes #30
2017-05-21 23:21:02 +03:00
Konstantinos Sideris
0fddb7ebff
Be explicit about room's name color
2017-05-21 22:52:38 +03:00
Konstantinos Sideris
a45582585d
Minimize to tray
2017-05-21 16:36:06 +03:00
Konstantinos Sideris
c480f8f4bc
Snappy sidebar
2017-05-19 19:55:38 +03:00
Konstantinos Sideris
30fce32161
Remove RoomList UI form
2017-05-19 17:23:36 +03:00
Konstantinos Sideris
f2ff4772a7
Reverse colors on selection for the unread message bubble
2017-05-19 16:49:25 +03:00
Konstantinos Sideris
48618b438f
Add hover color on RoomList items
2017-05-19 03:45:46 +03:00
Konstantinos Sideris
f4522f9bbf
Simplify room list item
2017-05-19 03:28:15 +03:00
Konstantinos Sideris
c470e49aa9
Add geometry animation on emoji picker
2017-05-16 21:21:31 +03:00
Konstantinos Sideris
992af5611b
Show user info even if the display name or avatar are missing
2017-05-16 15:43:29 +03:00
Konstantinos Sideris
49831a2390
Clear room state on logout
2017-05-16 15:23:31 +03:00
Konstantinos Sideris
a568d60cef
Remove MainWindow ui form
2017-05-14 21:10:03 +03:00
Konstantinos Sideris
e5ef84617c
Add missing parents
2017-05-14 17:32:12 +03:00
Konstantinos Sideris
b3bb0531de
Make InputValidator class members static
2017-05-14 16:36:30 +03:00
Konstantinos Sideris
7502f167ae
Use QSharedPointer to manage TimelineViews and RoomInfoListItems
2017-05-14 16:31:59 +03:00
Konstantinos Sideris
ccad3f6bd6
Fix ripple size on RoomListItem
2017-05-14 01:27:30 +03:00
Konstantinos Sideris
c060a136a9
Update prev_batch only while paginating
2017-05-13 19:58:48 +03:00
Konstantinos Sideris
0368d854cf
Initial support for backwards pagination
2017-05-12 15:43:35 +03:00
Konstantinos Sideris
ff611c1b39
Highlight URLs in TimelineView
2017-05-11 01:28:06 +03:00
Konstantinos Sideris
f2ce910b16
Prefer non UserId as display names
2017-05-10 18:04:57 +03:00
Konstantinos Sideris
6f065530ae
Restrict inline image size to its minimum
2017-05-10 13:12:50 +03:00
Konstantinos Sideris
d277d5c68b
Check for nullptr before delete
2017-05-10 12:45:53 +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
1f10403ace
Add settings panel for homeserver's domain
2017-05-09 13:25:43 +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
8825e072f2
Add matrix::events namespace
2017-05-04 17:11:04 +03:00
Konstantinos Sideris
4ea76503fb
Add base Event class
2017-05-04 17:11:04 +03:00
Konstantinos Sideris
b064df8b45
Add event contents
2017-05-04 17:11:04 +03:00
Matthew Hodgson
9cc9b623eb
macOS fixes ( #15 )
...
- Improve build instructions.
- Fix fullscreen image sizing.
- Remove horizontal overscroll of RoomInfoListItem.
2017-05-04 13:11:04 +03:00
Konstantinos Sideris
fb76118309
Set application attributes before QApplication
2017-05-03 23:32:51 +03:00
Konstantinos Sideris
9de94061ec
Set text color for QLineEdit
2017-05-03 21:42:51 +03:00
Konstantinos Sideris
3d77438878
Don't set the font size with a stylesheet
2017-05-02 14:15:13 +03:00
Konstantinos Sideris
e3acb533ad
Enable high dpi
2017-05-01 16:03:42 +03:00
Konstantinos Sideris
4a7b005c64
Add lint rule
2017-04-30 15:10:59 +03:00
Konstantinos Sideris
e6fd80f87f
Fix MainWindow being out of focus when the fullscreen overlay is closed
...
That was probably a Linux specific issue or my mouse is buggy.
2017-04-30 13:00:11 +03:00
Konstantinos Sideris
41f6dbe053
Close fullscreen overlay with out of contents click
2017-04-30 03:47:12 +03:00
Konstantinos Sideris
57332553c4
Add full screen overlay for image display
2017-04-30 01:55:10 +03:00
Konstantinos Sideris
ec14e5e556
Show image text overlay on hover
2017-04-30 01:10:01 +03:00
Konstantinos Sideris
c9d03b793b
Add initial support for inline images
2017-04-28 14:56:45 +03:00
Konstantinos Sideris
4b4035eebc
Rename History to Timeline
...
In order to be compatible with the Matrix terminology
2017-04-27 03:14:12 +03:00
Konstantinos Sideris
1a82150aa8
Exclude m.room.member events from initial sync
2017-04-27 00:32:33 +03:00
Konstantinos Sideris
415ef7e9c7
Add spinner to hide uninitialized layout after login
2017-04-26 02:24:10 +03:00
Konstantinos Sideris
da39975047
Bundle fonts into the app
...
- Create QApplication instance before font initialization, otherwise
QFontDatabase crashes.
- Fix broken QRC font paths
2017-04-25 17:36:52 +03:00
Konstantinos Sideris
46af37490f
Set allowed TLD size to 63 chars
2017-04-24 20:33:42 +03:00
Konstantinos Sideris
9d9b5e4f68
Don't set initial room with an empty room list
2017-04-24 20:05:24 +03:00
Konstantinos Sideris
6d9acc8621
Add common style for the scroll bars
2017-04-24 17:06:34 +03:00
Konstantinos Sideris
42bb9bb63a
Add full emoji support
2017-04-23 21:31:08 +03:00
Konstantinos Sideris
fa83ae1cf8
Add logo icons
2017-04-21 17:16:29 +03:00
Konstantinos Sideris
f046dc8ac6
Add initial read-only emoji support
2017-04-19 19:38:39 +03:00
Konstantinos Sideris
e680865593
Update unread messages for the current room when the app is inactive
2017-04-16 22:34:57 +03:00
Konstantinos Sideris
e1d48367f8
Show the unread message count on the window title
2017-04-15 19:04:02 +03:00
Konstantinos Sideris
e02dd2b8c5
Move the main window to the center
2017-04-15 17:23:35 +03:00
Konstantinos Sideris
3b0ff1a4cd
Add initial support for unread message count
...
- Add border width on Badge
2017-04-15 02:56:04 +03:00
Konstantinos Sideris
a5ebff5949
Use color generator for nick names
2017-04-14 17:10:18 +03:00
Konstantinos Sideris
8358720d8e
Use light theme
2017-04-14 15:13:09 +03:00
Konstantinos Sideris
bb03a402d7
Add proper struct initialization
2017-04-13 04:32:18 +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
718562737c
Don't use icons as room avatars
2017-04-12 17:14:53 +03:00
Konstantinos Sideris
9092ae3db8
Use less contrast on the sidebar
2017-04-12 02:44:01 +03:00
Konstantinos Sideris
e8aae26aea
Small stylistic changes
2017-04-12 01:29:25 +03:00
Konstantinos Sideris
532b1ab38f
Add style for m.notice
...
Tone down the main text color
2017-04-12 00:52:56 +03:00
Konstantinos Sideris
c431eee401
Use a single nick to color map
2017-04-11 22:48:02 +03:00
Konstantinos Sideris
68d0696ca4
Decrease button's animation duration
2017-04-11 18:54:24 +03:00
Konstantinos Sideris
193490bd9e
Remove halo animation
2017-04-11 18:45:01 +03:00
Konstantinos Sideris
40722b7af7
Remove capitalization
2017-04-11 18:25:39 +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
792011c1c9
Allow message text selection
2017-04-10 19:08:27 +03:00
Konstantinos Sideris
1c9e92b8bd
Handle room avatars in top bar without an icon
2017-04-10 19:01:09 +03:00
Konstantinos Sideris
a859145983
Hide horizontal scroll bar on history view
2017-04-10 18:49:24 +03:00
Konstantinos Sideris
ee72d8b7b7
Use QString::simplified instead of regex
2017-04-10 18:17:41 +03:00
Konstantinos Sideris
0f3cffcfd9
Use Matrix ID for login
2017-04-10 01:47:15 +03:00
Konstantinos Sideris
87ecb28558
Sanitize room info for display
2017-04-10 01:34:53 +03:00
Konstantinos Sideris
b301a2828e
Remove exception specifications
2017-04-09 18:09:09 +03:00
Konstantinos Sideris
3d3f2ec33e
Add travis CI
2017-04-09 03:54:39 +03:00
Konstantinos Sideris
407afcd2f2
Clear text fields after login
2017-04-09 02:32:48 +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
c7c3ee19ee
Use QLabel to display registration errors
2017-04-07 19:25:06 +03:00
Konstantinos Sideris
73e73f46ea
Use const refs for the deserialized data
2017-04-06 19:56:33 +03:00
Konstantinos Sideris
5bcaaa3aa3
Initialize sync timer
2017-04-06 15:17:58 +03:00
Konstantinos Sideris
4f45575c79
Initial commit
2017-04-06 02:06:42 +03:00