Commit Graph

831 Commits

Author SHA1 Message Date
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
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