Sebastian Wolf
63ce0f92d2
Fix 'mute chat' for chats that have never been muted, fixes #144
2020-11-13 22:43:50 +01:00
Sebastian Wolf
5d3805759a
Small UI fixes, error handling for joining chats
2020-11-09 23:22:24 +01:00
John Gibbon
68e2dab715
set some properties readonly
2020-11-08 20:37:17 +01:00
John Gibbon
c3ccaa069d
qml runtime optimizations
2020-11-08 17:30:04 +01:00
Sebastian Wolf
9bb24b4862
Joining/leaving chats seems to work...
2020-11-07 20:29:44 +01:00
John Gibbon
fdb8cc5852
replace variant with var
...
https://doc.qt.io/archives/qt-5.6/qtquick-performance.html
In general, "property var" should be considered to be superior to "property variant" for every use-case from QtQuick 2.0 and newer (note that "property variant" is marked as obsolete), as it allows a true JavaScript reference to be stored (which can reduce the number of conversions required in certain expressions).
2020-11-05 23:23:37 +01:00
John Gibbon
37bede461b
differentiate between simple/normal messages
2020-11-05 14:05:33 +01:00
Sebastian Wolf
6d3b3464bf
Experiment a bit with opening new chats
2020-11-05 00:02:27 +01:00
John Gibbon
02a4b057d6
delay viewMessage calls; animate changes
2020-11-04 12:26:57 +01:00
Sebastian Wolf
8e46661d78
Start chat from avatar or user name
2020-11-03 22:32:36 +01:00
Sebastian Wolf
fd74da2408
Restore web page preview
2020-11-03 08:18:46 +01:00
Sebastian Wolf
1b345a6654
Add a tap-to-change date format for messages, fixes #47
2020-11-02 23:42:23 +01:00
John Gibbon
5903fbc4da
Set initial scroll position for ChatPage
...
Fixes #1
2020-11-02 20:54:18 +01:00
Sebastian Wolf
cccb48ced5
Merge pull request #119 from jgibbon/feature/qml-import-versions
...
clean up qml imports
2020-11-01 19:37:49 +01:00
Sebastian Wolf
8e97d19a02
Update Copy-to-Clipboard functionality & README
2020-11-01 19:20:21 +01:00
Sebastian Wolf
e26cd3d9d3
Merge branch 'master' into clipboard
2020-11-01 19:12:52 +01:00
Sebastian Wolf
30decc8f84
Make document picker work again, fix image picker
2020-11-01 17:54:00 +01:00
John Gibbon
3f454711cf
remove some unused imports
2020-10-31 21:09:59 +01:00
John Gibbon
f4d0a4800e
QtMultimedia 5.6
2020-10-31 20:50:32 +01:00
John Gibbon
2cd4012b6a
QtQuick 2.6
2020-10-31 20:49:03 +01:00
John Gibbon
fb5cf0d382
Remorse.itemAction; content Loader height preset
2020-10-31 20:02:18 +01:00
Christian Stemmle
a9fe6d51d2
Add context menu item: copy message to clipboard
2020-10-31 15:23:58 +01:00
John Gibbon
1fa7192728
Reduce ChatPage.qml jit compile time
...
First of all: Take all measurements I mention with a grain of salt – all of them are rough and not necessarily measured more than a few times. All times were measured on an Xperia X run via SDK.
Visiting a chat page can take a long time, especially before the qml is cached by the engine.
When opening it for the first time after application launch, it sometimes takes >1000ms from onClicked (OverviewPage) to Component.OnCompleted (Chatpage).
Subsequent activations take roughly 470-480ms.
With these changes, I was able to reduce these times to ~450ms for the first, ~100ms for subsequent activations of the ChatPage on my test device.
Things changed:
- The components for displaying extra content to a message are (mostly) gone and replaced by a single Loader. This Loader does not use sourceComponent to trade the initial compilation boost for a neglegible bit of runtime penalty.
- Connections were consolidated
- I was surprised how costly the inclusion of the RemorseItem was (compiling ~75ms, initializing up to ~20ms for every delegate). So I traded a bit for a compromise. deleteMessageRemorseItem is now defined on the appWindow level, where it gets a bit mitigated by the animations at application start. Also, only one deletion at a time is now possible. We can easily revert this change, but I thought it worthwhile despite its drawbacks.
- profileThumbnailComponent is now defined directly as sourceComponent, removing the need for its id. Probably didn't do anything.
- InReplyToRow had width: parent.width, so I removed horizontalCenter. Also probably didn't change compilation time at all.
- Another compromise I was willing to take – your opinion may differ: The PickerPages took ages (~200ms) to just parse/compile inside those Components, so I replaced them with the "string notation" of pageStack.push. Drawback: The first time a picker gets activated, you'll see how slow it is. Subsequent activations aren't that bad – also for the other pickers.
2020-10-30 20:37:25 +01:00
Sebastian Wolf
3402fddaa6
Merge branch 'master' into feature/use-svgs
2020-10-26 22:17:13 +01:00
John Gibbon
d38490fb09
use svg icons
...
Closes #102 .
Doesn't use Shader/HighlightImage for background/placeholder, since that neither matched the previous look nor meet my visual expectations at all. I created both previously available color variations as svg accordingly.
Implementation of the background images has been outsourced to a dedicated qml file to reduce duplication and ensure the same layout. Padding is now "medium" everywhere (stickers had none, audio had "small").
For the Icons, some (Highlight-)Image+MouseArea combinations have been changed to IconButton.
Regarding videos, I'm not actually sure if the missing "highlight" on the fullscreen icon was intentional. An issue with videos possibly having the same color as the icon remains basically the same. Nonetheless, if this isn't desired, I'll revert to just using the white image.
The sticker icon actually does look a bit differently now – it's a bit smaller. I've redrawn it from scratch but mostly kept the dimensions of icon-m-other (which doesn't look good when zoomed in, btw). Perhaps I actually did made a mistake drawing the previous one. Either way, I think it fits well enough.
The notification icon remains png, but I managed to reduce its file size by ~60% without visibly impacting it much imho.
This may be the longest commit message I've ever written.
2020-10-26 15:15:53 +01:00
John Gibbon
c7843919a7
hide poll IconButton if not applicable
2020-10-26 10:24:50 +01:00
John Gibbon
924ff9deda
implement polls
2020-10-23 10:29:56 +02:00
John Gibbon
6970dc3625
implement "mark all messages as read" MenuItem
...
contributes to #70 (doesn't mark anything as unread, though, and does not use toggleChatIsMarkedAsUnread at all)
2020-10-19 21:08:32 +02:00
Sebastian J. Wolf
91ae3651ef
Change license header to reflect number of contributions
2020-10-19 19:34:47 +02:00
John Gibbon
74a732a5b6
implement chat info page
...
includes some basic group administration features
2020-10-19 12:48:55 +02:00
Sebastian J. Wolf
dba973b522
Introduce explicit clear button for in-reply-to and edit message, fixes #69
2020-10-18 21:54:15 +02:00
Sebastian J. Wolf
a78f60f974
Search for emojis with :<keyword>
2020-10-18 18:57:01 +02:00
Sebastian J. Wolf
7d84fcb3bf
Change logo/icon - thanks to @iamnomeutente
2020-10-16 23:00:08 +02:00
Sebastian J. Wolf
cb9ae27bef
Some post-sticker cleanup...
2020-10-16 00:02:58 +02:00
Sebastian J. Wolf
f9221fe95e
Now the sticker picker looks much better...
2020-10-15 23:43:55 +02:00
Sebastian J. Wolf
537725566b
Supporting stickers is quite some work... :/
2020-10-14 23:25:56 +02:00
Sebastian J. Wolf
bfba8acc2d
Web page preview changes height a little more dynamically
2020-10-13 21:37:06 +02:00
Sebastian J. Wolf
256244a08e
Some additional preparations to send stickers
2020-10-12 22:44:21 +02:00
Sebastian J. Wolf
d3295bc49a
Make some space for lazy-loaded elements, part 2
2020-10-11 23:11:37 +02:00
Sebastian J. Wolf
67669cf63f
Make some space for lazy-loaded elements, part 1
2020-10-11 22:02:30 +02:00
Slava Monich
f4c84daebf
Show stickers as stickers when showStickersAsImages is off
2020-10-11 00:39:22 +03:00
Sebastian Wolf
03208e47f8
Merge pull request #58 from monich/self-delete
...
Allow to delete messages from your own private chat
2020-10-07 22:19:05 +02:00
Sebastian J. Wolf
c0269b5502
Display information for forwarded messages
2020-10-07 22:17:44 +02:00
Slava Monich
f342b47e38
Allow to delete messages from your own private chat
...
They have "can_be_deleted_for_all_users": false and yet you can delete
those because you are the only one who has access to your own private
chat.
2020-10-07 02:27:54 +03:00
Slava Monich
caecdb0f56
Moved app settings to a separate object
2020-10-06 04:40:39 +03:00
Sebastian J. Wolf
12119c38bc
Add sticker icon
2020-10-04 15:09:06 +02:00
Sebastian J. Wolf
bfe3084d2e
Differentiate text between other people and user
2020-09-30 00:09:51 +02:00
Sebastian J. Wolf
97e72bac9b
Introduce upload status bar
2020-09-29 23:37:56 +02:00
Sebastian J. Wolf
f19b3ae4cb
Add support for venues
2020-09-29 21:58:14 +02:00
Sebastian Wolf
d92ea9fbae
Merge pull request #38 from jgibbon/feature/messageLocation
...
Handle display of messageLocation
2020-09-29 21:12:29 +02:00
Sebastian J. Wolf
f03da2127d
Handle enter key in a more relaxed way
2020-09-29 21:00:23 +02:00
John Gibbon
75ef6e70a4
update live locations
2020-09-29 15:50:21 +02:00
Sebastian J. Wolf
35e9373f49
Uploading pictures, videos and documents work, status bar still missing
2020-09-28 23:08:22 +02:00
John Gibbon
b58e33b2a4
Handle display of messageLocation
...
resolves #36
2020-09-28 22:59:47 +02:00
Sebastian J. Wolf
30f208d9fb
Initial steps to upload videos and documents
2020-09-27 23:24:22 +02:00
Sebastian J. Wolf
ad1cec1dfb
Enable image attachments :)
2020-09-27 13:49:06 +02:00
Sebastian J. Wolf
d2f5031485
Bring back replies, accidentially deleted before...
2020-09-24 22:27:17 +02:00
John Gibbon
a48148cf99
CoverPage change for large numbers of messages
2020-09-24 09:55:05 +02:00
Sebastian J. Wolf
e222ab115d
Prepare message attachments
2020-09-23 23:41:17 +02:00
Sebastian J. Wolf
b0d35aac6c
Limit height of message input field
2020-09-23 21:38:20 +02:00
Sebastian J. Wolf
0e1169e7f4
Some delay for lazy loading...
2020-09-22 22:46:48 +02:00
Sebastian J. Wolf
2704e29d41
Avoid fast and immediate re-reload of older messages
2020-09-22 21:05:24 +02:00
Sebastian J. Wolf
fcc46fbc94
Auto-scroll to message if user sent it
2020-09-22 20:32:35 +02:00
Sebastian J. Wolf
ea123b08ea
Put an action behind new message count circle, fixes #13
2020-09-22 19:26:49 +02:00
Sebastian J. Wolf
266dd12570
Lazy-load profile thumbnail
2020-09-21 23:07:30 +02:00
Sebastian J. Wolf
c5dade71b0
Introduce some lazy loading
2020-09-21 22:10:03 +02:00
Sebastian J. Wolf
32fce5b965
Try to tweak updates and list positioning
2020-09-20 14:26:09 +02:00
Sebastian J. Wolf
64b6c8607e
Deleting messages seems to work...
2020-09-20 00:13:42 +02:00
Sebastian J. Wolf
b78a0f8731
Edit message seems to work
2020-09-19 20:33:51 +02:00
Sebastian J. Wolf
c2492efa0f
Real estate adjustments for chat page, fix unread indicator bug
2020-09-19 18:49:11 +02:00
Sebastian J. Wolf
b625ce84ef
Prepare edit message
2020-09-18 23:43:23 +02:00
Sebastian J. Wolf
3acdf46439
React properly on show/hide keyboard
2020-09-18 22:55:59 +02:00
Sebastian J. Wolf
4d573f1f43
Option to send message by pressing enter
2020-09-16 22:04:02 +02:00
Sebastian J. Wolf
b5f39f78c0
Mark all messages as read in small chats
2020-09-16 21:12:39 +02:00
Sebastian J. Wolf
9070caa2a3
Mute/unmute chats both from list and in chat
2020-09-16 20:43:36 +02:00
Sebastian J. Wolf
fbb1fbcf90
Highlight unread messages in chat
2020-09-15 22:47:39 +02:00
Sebastian J. Wolf
f9c027981d
Position message vertically centered
2020-09-15 21:27:16 +02:00
Sebastian J. Wolf
8f3f7cfa9b
New chat positioning method: Faster, but less exact
2020-09-13 23:25:48 +02:00
Sebastian J. Wolf
386c4c871f
More space for message input field
2020-09-13 22:21:27 +02:00
Sebastian J. Wolf
d35d15a7e0
Display read/unread checkmark correctly after incremental update
2020-09-01 22:37:48 +02:00
Sebastian J. Wolf
a04332d4b6
Fix chat positioning and sent/read indicator
2020-08-31 21:51:52 +02:00
Sebastian J. Wolf
cff06cc32d
Try to get pending message state into the chat
2020-08-30 23:52:22 +02:00
Sebastian J. Wolf
a131aa739b
Add read/unread info to own messages
2020-08-30 19:04:16 +02:00
Sebastian J. Wolf
0849fadadd
Translations adjustments, trigger history reload earlier
2020-08-30 15:04:15 +02:00
Sebastian J. Wolf
a6768bc9dd
Hide new message bar in channels
2020-08-30 11:12:13 +02:00
Sebastian J. Wolf
138db9e78e
Add German translation, some small fixes
2020-08-29 23:59:29 +02:00
Sebastian J. Wolf
5fcca3c405
Try it again with loading more messages automatically
2020-08-29 23:06:14 +02:00
Sebastian J. Wolf
5c16a13b25
Add display of unread message count to chat
2020-08-29 21:39:57 +02:00
Sebastian J. Wolf
cca241ed9a
Fix infinite loading for small amount of messages
2020-08-29 18:28:57 +02:00
Sebastian J. Wolf
63833b3c5c
A little bit of lazy loading for the chat view...
2020-08-29 18:04:23 +02:00
Sebastian J. Wolf
a527009f86
Don't do stuff which is not needed ;)
2020-08-29 16:58:48 +02:00
Sebastian J. Wolf
6c269780b2
Add web page preview
2020-08-29 15:51:48 +02:00
Sebastian J. Wolf
b447d2bd24
Make reply-to-message work again
2020-08-29 13:38:28 +02:00
Sebastian J. Wolf
a24bf81355
Some work on reply management, still some work to do...
2020-08-29 11:22:18 +02:00
Sebastian J. Wolf
402c0ed671
Add possibility to send replies
2020-08-28 17:40:25 +02:00
Sebastian J. Wolf
ecf4c859e8
Add support for documents
2020-08-28 16:18:33 +02:00
Sebastian J. Wolf
0b77f1527d
Add support for voice notes
2020-08-28 14:14:05 +02:00
Sebastian J. Wolf
b55be4289c
Add support for animated GIFs
2020-08-28 13:02:54 +02:00
Sebastian J. Wolf
50a67bb037
Add fullscreen video page
2020-08-28 11:43:51 +02:00
Sebastian J. Wolf
c741a157b7
Introduce video preview
2020-08-28 10:41:18 +02:00
Sebastian J. Wolf
8a3b07e537
Load older chat messages if needed
2020-08-26 22:52:06 +02:00
Sebastian J. Wolf
abdf9072e7
Display stickers (use thumbnails for animated ones)
2020-08-26 10:46:43 +02:00
Sebastian J. Wolf
a889c95899
Display original message excerpt in replies
2020-08-25 16:42:46 +02:00
Sebastian J. Wolf
b899d03660
Display images in messages and introduce image page
2020-08-24 23:02:08 +02:00
Sebastian J. Wolf
a4318376e5
Support almost all text formatting options
2020-08-24 16:30:19 +02:00
Sebastian J. Wolf
2ee8eceb18
Initial message formatting (bold only so far ;))
2020-08-24 15:27:44 +02:00
Sebastian J. Wolf
1b18a78efc
Display profile pictures and names in groups
2020-08-23 19:17:30 +02:00
Sebastian J. Wolf
63966f052a
React properly if no messages are there...
2020-08-23 17:24:05 +02:00
Sebastian J. Wolf
cc266aa58b
Sending text messages works... :D
2020-08-23 00:17:34 +02:00
Sebastian J. Wolf
c472e70775
React to new messages in chat
2020-08-22 23:49:02 +02:00
Sebastian J. Wolf
59a7c8381d
Mark display messages as read
2020-08-22 23:05:45 +02:00
Sebastian J. Wolf
ca7abb2a2f
First chat message list :)
2020-08-22 21:43:20 +02:00
Sebastian J. Wolf
2750764de9
Skeleton for chat model
2020-08-22 17:30:02 +02:00
Sebastian J. Wolf
2f5d725f7b
Display chat status (members/online)
2020-08-21 18:03:51 +02:00
Sebastian J. Wolf
b42a8e4181
Opening and closing chat officially on entering/leaving page
2020-08-21 14:47:08 +02:00
Sebastian J. Wolf
a7b8dc54bd
Initial skeleton for chat page
2020-08-21 14:26:56 +02:00