Commit Graph

1385 Commits

Author SHA1 Message Date
Nicolas Werner db93e6b853 Fix warning about not registered Presence type 2020-06-11 18:37:09 +02:00
Nicolas Werner 488924c9b3 Allow deleting a status 2020-06-11 18:30:52 +02:00
Joseph Donofry 12c46e86b4
Fix linting 2020-06-11 00:37:54 -04:00
Joseph Donofry 5e355c36fd
Fix build issue on some versions of clang 2020-06-10 22:34:14 -04:00
Alexander 'z33ky' Hirsch 2b9860c3af Add setting to alert on notification 2020-06-10 12:34:26 +02:00
Joseph Donofry 6bb73f84a3
Merge master and fix conflicts 2020-06-09 20:51:36 -04:00
Nicolas Werner 0a23615dd7 Fix small formatting error 2020-06-09 13:29:24 +02:00
Nicolas Werner b9631753dd Reenable custom status messages
This still leaves out setting a client to online/offline, since that
seems to be causing the CPU issues with synapse.
2020-06-09 12:49:36 +02:00
Nicolas Werner 3baf11b5c4 Fix unused capture 2020-06-08 22:35:47 +02:00
Nicolas Werner 814868024c Disable presence and status_msg menu
It currently causes severe performance issues in synapse as well as many
random resets, so this is disabled until those issues are resolved.
2020-06-08 21:59:15 +02:00
Nicolas Werner f2bfa61e08 Add menu actions to set presence 2020-06-08 20:26:37 +02:00
Nicolas Werner 96f4169be9 Show presence and set custom status messages 2020-06-08 01:59:05 +02:00
Nicolas Werner e5a55ab1b9 Smooth scaling for images
Fixes some issues with inline images.
2020-06-07 14:53:35 +02:00
Nicolas Werner 43d2ebc095 Fix Qt5.15 issues
fixes #214
2020-06-05 23:34:00 +02:00
Nicolas Werner 50d5891493 Fix serialization bug introduced in 9eddcfc42f 2020-05-30 17:25:18 +02:00
Nicolas Werner 9eddcfc42f Remove some redundant functions 2020-05-30 16:38:11 +02:00
Nicolas Werner 6b60ff7713 Rename settings to be more consistent 2020-05-26 22:54:51 +02:00
Nicolas Werner f452bdf2b0 Make settings update immediately in qml and allow limiting timeline width
Limiting improves readability on wide monitors.

The immediate update of the settings is done by just exposing settings
as properties and then setting the settings as a context property.
2020-05-26 22:54:51 +02:00
Nicolas Werner 4ee9e5c27c Improve compile times a tiny bit 2020-05-26 22:54:51 +02:00
Nicolas Werner 937b35ca8a Fix some join messages showing as empty 2020-05-26 22:54:51 +02:00
lkito 60ad6ce277 Added an option to have descriptions for user settings. 2020-05-24 15:35:25 +04:00
Joseph Donofry 5228861b88
Add reaction/redaction for in-line Reactions 2020-05-21 21:21:35 -04:00
lkito d8b89e2ef0 Added an optional feature to show bigger emoji-only messages with 3 or less emoji 2020-05-21 16:31:27 +04:00
Joseph Donofry 1c521d1711
Merge origin/master into reactions 2020-05-18 21:13:41 -04:00
Nicolas Werner bdf1147a80 add a bit of additional logging to image paste 2020-05-18 14:02:54 +02:00
Nicolas Werner 23e4408fa8 Add /roomnick command 2020-05-18 14:02:14 +02:00
Nicolas Werner 7de1fc62e8 Tag rooms via context menu 2020-05-18 04:23:36 +02:00
Nicolas Werner 5abdad308d Fix crash when reacting to messages from /sync
Messages on /sync don't have a room_id
2020-05-17 02:36:04 +02:00
Nicolas Werner f0757a6426 Fix local echo for reactions 2020-05-16 22:48:43 +02:00
Joseph Donofry a5778bdf40
Merge remote-tracking branch 'origin/master' into reactions 2020-05-16 15:10:49 -04:00
lkito 2c21f6e3fa Implemented optional message body highlighting feature. 2020-05-16 17:15:43 +04:00
Nicolas Werner 576269c9e5 Prevent timeline being black on some platforms 2020-05-15 22:46:34 +02:00
CH Chethan Reddy 57b8cdbd4d remove #if defined __has_include 2020-05-15 17:48:27 +05:30
CH Chethan Reddy e4a7e85935 Change the commit hash for mtxclient 2020-05-15 17:48:27 +05:30
CH Chethan Reddy 30d61e3114 minor fixes 2020-05-15 17:48:27 +05:30
Joseph Donofry 6d2789f4d5
Merge master into reactions 2020-05-14 20:53:01 -04:00
Joseph Donofry 18f934efad
Add un-encrypted warning icon for messages in encrypted rooms 2020-05-14 20:35:29 -04:00
Nicolas Werner 279bcd1bf2 Show inline images
(This is such a hack and will probably break, but it works for now for
most cases...)
2020-05-14 00:41:10 +02:00
Joseph Donofry ee4dcef90f
Add new QML-based emoji picker (work in progress)
This is necessary to support having a picker within QML.
Eventually, this should replace the existing widget-based one.
2020-05-13 00:36:41 -04:00
Joseph Donofry 8984661187
Initial support for sending reactions 2020-05-09 22:39:25 -04:00
Nicolas Werner 000ab4853a Translation updates 2020-05-10 01:38:40 +02:00
Nicolas Werner 6befadeec8 Remove shadowing loginMethod 2020-05-10 01:00:20 +02:00
Nicolas Werner 9713284435 Fix not being able to log http status on login 2020-05-10 00:04:45 +02:00
Nicolas Werner 7b1fa60cc6 Add SSO
closes #94
2020-05-09 23:33:03 +02:00
Nicolas Werner 813790e603 Improve Login and Register page hinting 2020-05-09 23:33:03 +02:00
Joseph Donofry a1661f7006
merge master into reactions 2020-05-07 20:53:24 -04:00
DeepBlueV7.X 7beaf868ef
Merge pull request #192 from Nheko-Reborn/reactions
Reactions
2020-05-08 00:13:24 +02:00
Nicolas Werner a942ae9b93 Fix messages being immediately read again 2020-05-06 19:21:31 +02:00
Nicolas Werner 0b1d3a40f4 Remove unused binding name 2020-05-06 13:45:38 +02:00
Nicolas Werner e5a5a66716 Fix reaction redaction for real this time 2020-05-06 12:52:13 +02:00
Nicolas Werner ff54ce9334 Fix rooms with a lot of reactions not paginating correctly 2020-05-06 11:37:40 +02:00
Nicolas Werner e045e3eb1c Show displayname on reactions 2020-05-06 11:28:24 +02:00
Nicolas Werner 8348a6c35d Fix reaction count 2020-05-06 11:15:45 +02:00
Nicolas Werner e55a09906f Misc color fixes 2020-05-05 23:43:43 +02:00
Nicolas Werner 692c6119b4 Fix joined rooms dropping to the bottom at first 2020-05-05 19:08:59 +02:00
Nicolas Werner db24f174b1 Fix jumpy room list, when sort order is ambiguous 2020-05-05 19:08:59 +02:00
Nicolas Werner 54013e4a00 Basic, broken reaction display 2020-05-04 13:14:54 +02:00
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
Michele Guerini Rocco 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