Commit graph

139 commits

Author SHA1 Message Date
Nicolas Werner
2c3d09edbb Try to smooth scrolling a bit by increasing cacheBuffer 2020-05-13 23:55:02 +02:00
Joseph Donofry
a1661f7006
merge master into reactions 2020-05-07 20:53:24 -04:00
Nicolas Werner
e48dfd15fe Add shortcuts to select/deselect reply targets 2020-05-06 13:33:13 +02:00
Nicolas Werner
e55a09906f Misc color fixes 2020-05-05 23:43:43 +02:00
Nicolas Werner
54013e4a00 Basic, broken reaction display 2020-05-04 13:14:54 +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
Nicolas Werner
2997155f56 Fix spacing of typing notifications 2020-04-30 22:02:41 +02:00
Lasath Fernando
21b33363ce Make pagination spinner inline 2020-04-29 13:52:39 -07: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
DeepBlueV7.X
19ec8d261d
Merge pull request #183 from shocklateboy92/features/smooth-scroll
Improve scrolling in timeline view
2020-04-29 22:15:53 +02:00
Nicolas Werner
3226d1787c Fix some smaller coloring issues 2020-04-29 21:41:46 +02:00
Lasath Fernando
c5d373e8f1 Address CR comments 2020-04-29 02:14:43 -07:00
Lasath Fernando
5c57de070e Remove commented out code; fix padding for Pill 2020-04-28 01:10:54 -07:00
Lasath Fernando
84c5ff0bcb Fix binding loops for height 2020-04-28 00:38:13 -07:00
Lasath Fernando
1555dc2296 Shamelessly steal ScrollHelper.qml from spectral
I mean, we're both GPL so... :P
2020-04-28 00:29:51 -07: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
dcddea6fb8 Fix reply not closing
fixes #124
2020-04-13 16:22:30 +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
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
6bdc75d073 Reset user colors on theme change (in qml timeline) 2020-02-20 20:51:07 +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
d330020fdd Improve styling a bit 2020-02-03 19:21:03 +01:00
Nicolas Werner
2053f67626 Close popup when clicking outside 2020-02-02 00:33:55 +01:00
Nicolas Werner
5f4efa9442 Speed up timeline by using global ToolTip and Menu 2020-02-02 00:27:51 +01:00
Nicolas Werner
735086371d Make page scrolling half height 2020-01-31 00:02:15 +01:00
Nicolas Werner
9b7c1cb7f9 Add scroll page shortcut 2020-01-30 23:57:39 +01:00
Nicolas Werner
c2d436942e Add explicit size to reply close button 2020-01-30 04:01:44 +01:00
Joseph Donofry
d205952fc8
Change tooltip palette settings for QML 2020-01-28 19:20:39 -05:00
Nicolas Werner
4951241d23 Simplify reply popup logic 2020-01-28 19:08:16 +01:00
Nicolas Werner
c2e0aee193 Improve styling of reply popup 2020-01-28 17:16:49 +01:00
Nicolas Werner
3319e0ec20 Fix resize loop of images in reply popup 2020-01-28 17:08:49 +01:00
Joseph Donofry
2b8b04a04b
Add initial QML Reply Popup 2020-01-27 23:28:11 -05:00
Nicolas Werner
84ac122c48 PixelAlign timeline view 2020-01-21 22:22:25 +01:00
Nicolas Werner
fcc7c0ce5b Account for spacing when checking for bottom message for read status 2020-01-21 20:46:12 +01:00
Nicolas Werner
c95f4d8276 Fix colors in typing display, when username contains emoji 2020-01-21 20:41:09 +01:00
Nicolas Werner
fe912240bc Move typing display to qml 2020-01-17 01:25:14 +01:00
Nicolas Werner
69ce94d1bd Reduce memory usage and make room switching quicker
May make scrolling more laggy or jumpy.
2020-01-14 22:37:23 +01:00
Nicolas Werner
01bd9f659d Adapt play buttons to theme and remove accidental message bg 2020-01-06 18:29:08 +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
dee49508de Simplify scroll logic 2019-12-08 01:26:00 +01:00
Nicolas Werner
8c44c5e2d0 Change scroll behaviour of timeline
This requires Qt 5.9 (to calculate overshoot).
The default scroll behaviour of list views has far too much inertia.
This should make scrolling feel more like scrolling the other scroll
areas of nheko.
2019-12-08 00:54:28 +01:00
Nicolas Werner
05aa7f948a Try to fix binding loop warning 2019-12-07 15:00:06 +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
c424e397b0 Add loading spinner and restore message send queue 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
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
2055c75f8b Organize qml files a bit 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
d90038cf20 Misc layout fixes 2019-11-23 20:06:15 +01:00
Nicolas Werner
b9076c5c4d Try out DelegateChooser
requires Qt5.12+
2019-11-23 20:06:15 +01:00
Nicolas Werner
489165d579 Lower requirement on QtQuick.Layouts version 2019-11-23 20:06:15 +01:00
Nicolas Werner
e196450428 Use QtQuick.Controls compatible with Qt 5.8 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
67d255a2de Add basic video messages
Size is fixed for now, otherwise the Video output ends up somewhere...
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
aee29c6ed5 Reenable redactions 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
82091999c4 Add lock to encrypted messages 2019-11-23 20:06:14 +01:00
Nicolas Werner
c8315d792b Make avatar in timeline smaller 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
5200db17e9 Implement basic placeholder and disable unimplemented event types 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
62d0cd74da Implement replies in qml timeline 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
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
7947ba57cc Make reply and options buttons smaller 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
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