Commit graph

643 commits

Author SHA1 Message Date
Sebastian Wolf
1317f6532e
Use chat list proxy model only if filtering is active 2020-12-17 09:24:20 +01:00
Sebastian Wolf
45bcc4f33d
Introduce filter capabilities for chat list 2020-12-16 23:32:42 +01:00
Slava Monich
25efbb8bc2 Added "Show all chats" switch to the Debug page 2020-12-16 16:04:15 +02:00
Slava Monich
72582c26f4 Added "Join chat by id" to the Debug page 2020-12-16 03:45:32 +02:00
Sebastian Wolf
335b8ed0c9 Merge latest changes (edit/reply) 2020-12-15 20:39:48 +01:00
Slava Monich
aee027219a Don't show Reply menu item if the message can't be replied to
Also moved the handling of the Edit action to the chat page where
it's actually being handled.
2020-12-15 20:19:06 +02:00
Sebastian Wolf
0d21174220 TDLib 1.7: MPEG4 thumbnails are too much, autostart animations 2020-12-08 19:56:29 +01:00
Sebastian Wolf
8e03b16243 Enable links in in-reply-to rows 2020-12-07 23:30:46 +01:00
Sebastian Wolf
6508c20a0d TDLib 1.7: Enable proper links in web previews 2020-12-07 22:46:25 +01:00
Sebastian Wolf
2cd86a95d9 TDLib 1.7: Video thumbnail is a 'file' not a 'video' anymore 2020-12-07 22:24:07 +01:00
Sebastian Wolf
44510901ac TDLib 1.7: Forward info - original sender ID remains unchanged 2020-12-07 22:13:51 +01:00
Sebastian Wolf
6e54988978 TDLib 1.7: Web page descriptions can be formatted now 2020-12-07 22:02:58 +01:00
Sebastian Wolf
63db26afc8 TDLib 1.7: Sticker IDs, message sender IDs 2020-12-07 21:43:09 +01:00
Sebastian Wolf
f6d72d8ef1 Next version will be 0.6 2020-12-06 21:50:38 +01:00
Slava Monich
b6c97c7f93 Optimized chat model a bit
1. Store and handle message ids as numbers rather than variants/strings
2. Incrementally update message id map
3. Expose additional roles and properties to avoid unnecessary lookups
2020-12-06 21:10:50 +02:00
Slava Monich
2ce1ad1f49 Animate display of selection panel 2020-12-06 16:50:03 +02:00
Slava Monich
bd695d1a91 Fix occasional crashes on long-tapping poll items
The crash was happening when Repeater was adding context menu items
instantiated by PollPreview to context menu owned by MessageListViewItem.

It's fixed by instantiating those extra menu items inside context menu
itself. Generic ListElement couldn't be used because it doesn't like
functions as property values, hence this NamedAction thing.
2020-12-06 01:52:19 +02:00
Slava Monich
6fc88fe0d5 Mark readonly properties as such 2020-12-05 20:00:11 +02:00
Slava Monich
782561273f Tweaked poll/quiz layout
Made it slightly more compact.
2020-12-05 19:41:47 +02:00
Sebastian Wolf
633f765c80 Remove 'offline' in user status, addresses majority vote in #219 2020-12-05 15:55:45 +01:00
Sebastian Wolf
878fbb901e
Merge pull request #227 from jgibbon/feature/general-press
press effect for more items
2020-12-05 15:31:47 +01:00
Sebastian Wolf
bc0f30bbe8
Merge pull request #203 from jgibbon/feature/functions-js-optimizations
Optimize functions.js
2020-12-05 15:19:10 +01:00
John Gibbon
d35419d656 press effect for more items
there are still a few areas where there's no press effect (message items themselves: Text, profile thumbnail, sent icon,…)
but for now I've just aligned the components to the image changes
2020-12-04 22:47:03 +01:00
Sebastian Wolf
8f9c46a05d
Merge pull request #226 from monich/press
Press effect for image preview items
2020-12-04 21:53:06 +01:00
John Gibbon
5145c54d94 Removed unused imports 2020-12-04 21:39:02 +01:00
John Gibbon
214e6d335b Implement suggested changes
- (rebase to current master)
 - put compareAndRepeat in debug.js
 - create a new DebugPage for tests instead of AboutPage; only visible in debug mode
 - finalize PR state (remove functionsOLD left for comparisons)
2020-12-04 21:23:02 +01:00
John Gibbon
a2118edc3b Optimize functions.js 2020-12-04 21:23:02 +01:00
Slava Monich
eed1b06f97 Press effect for image preview items 2020-12-04 21:30:25 +02:00
John Gibbon
1e877dec22 extend #224 to LocationPreview and VideoPreview 2020-12-04 20:22:21 +01:00
Slava Monich
3fdfd8d7d2 Fixed long tap on an image
MouseArea filling the image was eating mouse events which should be
handled by the list item. Handle them all at the list item level and
forward the "clicked" event to the extra content items which declare
the clicked() function.
2020-12-04 05:12:00 +02:00
Sebastian Wolf
5d0398b071
Merge pull request #221 from monich/verified
Add verification badge to verified chats
2020-12-03 22:01:48 +01:00
Slava Monich
2638c3837d Improve preview of wide images
Avoid clipping. Also, handling file updates on C++ side should be good
for performance.
2020-12-03 04:54:19 +02:00
Slava Monich
38165c4f67 Add verification badge to verified chats 2020-12-03 02:13:35 +02:00
Sebastian Wolf
196abdd6d1 Workaround for ChatPage flickable issues (moving strangely sometimes) 2020-12-02 23:46:29 +01:00
Sebastian Wolf
a8fd0e0463 Chore: Change release version 2020-12-01 23:18:26 +01:00
Sebastian Wolf
98d07c86c4 Show some love to the editing functionality 2020-12-01 21:17:13 +01:00
Slava Monich
abfd408227 Allow any orientation for pickers 2020-12-01 05:31:38 +02:00
Sebastian Wolf
782599f905 Simplify remorse popups, see #206 2020-11-29 13:33:14 +01:00
Sebastian Wolf
4aedc56ca7 Merge incoming changes from secret chat/contacts 2020-11-29 12:44:50 +01:00
Sebastian Wolf
965f6db84e
Merge pull request #205 from Wunderfitz/new-chat-from-contacts-7
New chat from contacts, initial secret chat support
2020-11-29 12:41:25 +01:00
Sebastian Wolf
f446e35051 console.log -> Debug.log 2020-11-29 12:34:42 +01:00
Slava Monich
dff9b1668e Animate opening and closing of attachment picker row
And slightly tweaked the process of closing the sticker picker.
2020-11-29 06:48:55 +02:00
Sebastian Wolf
f7296daf4e Start with @-mentioning in own messages 2020-11-28 23:00:10 +01:00
Sebastian Wolf
48b5e14335 Improvements after feedback round 2020-11-28 19:11:51 +01:00
Sebastian Wolf
de945c7846 Merge remote-tracking branch 'origin/master' into new-chat-from-contacts-7 2020-11-27 21:14:59 +01:00
Sebastian Wolf
cc08ee3997 Switch to file picker for documents, fix short text for audios 2020-11-27 21:13:55 +01:00
Sebastian Wolf
4bcd4faca9 Merge remote-tracking branch 'origin/master' into new-chat-from-contacts-7 2020-11-27 19:51:56 +01:00
Sebastian Wolf
4cf35641c5 Secret chat identifer switches to qlonglong 2020-11-27 19:42:39 +01:00
John Gibbon
0ba4d9a408 Fix initial auth handling
This (hopefully, it at least LGTM) fixes two problems:
 - OverviewPage.onCompleted: It got the wrong AuthorizationState if qml was loaded too fast because it wasn't initialized. (c++)
- The QML could have tried to open the InitializationPage "onCompleted". But the initial pageStack operation is a parent in it's call stack,  so it is neither ready nor wants to accept "completeAnimation()". A zero interval Timer was added for this case.
2020-11-27 10:25:23 +01:00
Sebastian Wolf
deacb7f0ea Synchronize contacts with Telegram 2020-11-26 22:18:51 +01:00
Sebastian Wolf
7ab58d3730 Add option to close a secret chat 2020-11-26 16:11:12 +01:00
Sebastian Wolf
6f889437ed Merge latest upstream changes... 2020-11-26 15:38:15 +01:00
Sebastian Wolf
24ab5a5953
Merge pull request #200 from monich/optimizer
Added storage optimizer option
2020-11-26 15:11:01 +01:00
Sebastian Wolf
63824e77f2 Remove debug leftover in AboutPage 2020-11-26 15:10:26 +01:00
Sebastian Wolf
b31072ff82 Realign emojis to avoid strange text alignment 2020-11-26 14:44:02 +01:00
John Gibbon
12136a0e7e Add menu for "About" to InitializationPage
Also puts the account specific info from "AboutPage" into a Loader to make it optional without much effort.
2020-11-26 11:18:17 +01:00
Sebastian Wolf
90f7535fda Secret chats begin to work properly... 2020-11-26 00:25:15 +01:00
Sebastian Wolf
a6d8328b10 I can see secret chats... ;) 2020-11-25 00:23:38 +01:00
Sebastian Wolf
4713fbfba6 Apply a dumb filter on contacts 2020-11-24 17:28:41 +01:00
Sebastian Wolf
86599b2859 Move contacts to an own model 2020-11-24 16:13:16 +01:00
Slava Monich
b649b71868 Added storage optimizer option 2020-11-24 00:17:27 +02:00
Sebastian Wolf
7da8957423 Merge remote-tracking branch 'origin/master' into new-chat-from-contacts-7 2020-11-23 21:32:27 +01:00
Sebastian Wolf
20b773ac59 Check contacts requested via extra-attribute 2020-11-23 20:53:43 +01:00
John Gibbon
9e405918f7 fix functions scope; make appNotification global
I've left some instances of AppNotification items where they're supposed to be centered inside a component, not the whole page.
2020-11-23 20:15:28 +01:00
Sebastian Wolf
51cad07231 Yet another merge from master, need to be faster... ;) 2020-11-23 12:08:25 +01:00
John Gibbon
aec4666721 Fix copy paste artifacts 2020-11-23 08:27:56 +01:00
John Gibbon
c8f7f569a7 Another debug signal handler fix 2020-11-23 00:38:45 +01:00
John Gibbon
6140d54b18 Change debug signal handler 2020-11-23 00:13:58 +01:00
John Gibbon
7017818acb Add switchable Debug output (JS) 2020-11-23 00:08:04 +01:00
John Gibbon
b4a520ed93 Remove elide 2020-11-22 21:10:36 +01:00
John Gibbon
41af123d42 Update Twemoji images 2020-11-22 20:19:14 +01:00
John Gibbon
352493f100 Use TruncationMode.Fade 2020-11-22 20:19:14 +01:00
John Gibbon
07b8d35fb3 Remove obsolete emoji basePath workaround 2020-11-22 20:19:14 +01:00
John Gibbon
5650be60a8 Simplify twemoji.js 2020-11-22 20:19:14 +01:00
Sebastian Wolf
b26c6e81c2 Avoid strange layout if user name is veeeeeeeery long 2020-11-22 19:16:11 +01:00
Slava Monich
42ebec4503 Do not animate tab item width
It looks weird when they are moving around the screen after page
orientation changes.
2020-11-22 13:31:04 +02:00
Sebastian Wolf
c6fa5cf97f Options for creating new chats... 2020-11-21 22:13:37 +01:00
Sebastian Wolf
4d1bd029bc Merge remote-tracking branch 'origin/master' into new-chat-from-contacts-7 2020-11-21 10:21:53 +01:00
Sebastian Wolf
4bbeb4fa34 Only clear chat model if navigated back | update translation files 2020-11-21 10:12:59 +01:00
Slava Monich
2f2cbb4679 Added UI for notificationTurnsDisplayOn option 2020-11-21 01:43:08 +02:00
Sebastian Wolf
9d75cbbedf Showing sorted contacts, wow! 2020-11-20 23:00:50 +01:00
Sebastian Wolf
fe8199a1eb Merge remote-tracking branch 'origin/master' into new-chat-from-contacts-7 2020-11-20 21:48:37 +01:00
Slava Monich
d1ccf9f796 Show notification popups except for the current chat
And drop dependency on Ngf. Also, pre-initialize the chat photo when
pushing the chat page.
2020-11-20 21:42:23 +02:00
Sebastian Wolf
fb2e0786c9 Merge with master branch (notification hotfix) 2020-11-20 19:22:43 +01:00
Sebastian Wolf
dd6239c119 Hotfix: Use up-to-date chat information for open-by-notification 2020-11-20 19:08:05 +01:00
Sebastian Wolf
3dbf38a1fa Start implementing 'New Chat' functionality 2020-11-20 18:30:33 +01:00
Sebastian Wolf
82d0058746
Merge pull request #179 from jgibbon/bugfix/#20_translation_plurals
Bugfix/#20 translation plurals
2020-11-19 21:01:19 +01:00
Sebastian Wolf
baf4b27e60 Avoid stale state for chat page picture 2020-11-19 20:25:53 +01:00
Sebastian Wolf
e4dbb63a92 Properly encode HTML entities for chat's last message 2020-11-19 11:41:32 +01:00
John Gibbon
616658ab35 %n → %Ln; remove more .arg() 2020-11-19 11:27:10 +01:00
John Gibbon
8181e17fa2 remove unnecessary .arg (+warnings) 2020-11-19 11:27:10 +01:00
John Gibbon
b48ca728d2 change/enable plural handling 2020-11-19 11:27:10 +01:00
John Gibbon
cf1c25f156 [%n1|%L1] → %Ln 2020-11-19 11:27:10 +01:00
Sebastian Wolf
af47ae2c72 Some improvements as suggested by @jgibbon, add unpin feature 2020-11-18 15:01:16 +01:00
Sebastian Wolf
b35d268b12 Now able to pin messages and show in-reply-to messages in overlay 2020-11-18 15:00:05 +01:00
Sebastian Wolf
541036d796 Display extra content in message overlay 2020-11-18 14:59:51 +01:00
Sebastian Wolf
2830f50a35 React properly on pinned message changes, nice message overlay ;) 2020-11-18 14:59:35 +01:00
Sebastian Wolf
15be3862f6 Display pinned message in chat 2020-11-18 14:59:15 +01:00
Sebastian Wolf
f6b42eb3cb
Merge pull request #169 from jgibbon/bugfix/message-permissions
Bugfix/message permissions
2020-11-18 12:44:21 +01:00
Sebastian Wolf
97feb2f804
Merge pull request #176 from Wunderfitz/chat-header-alignment
Properly align custom header on chat page
2020-11-18 11:54:13 +01:00
John Gibbon
816ba6eca7 remove some semicolons; 2020-11-18 11:13:05 +01:00
John Gibbon
77efd43bde fix channel handling 2020-11-18 10:34:46 +01:00
John Gibbon
13fbd8e7a6 fix pulley menu 2020-11-18 10:34:13 +01:00
John Gibbon
95b0ddef8e align page header image; use space for text when image is further down 2020-11-18 10:27:48 +01:00
John Gibbon
b2f46b54f4 fix online member count 2020-11-18 10:08:37 +01:00
Sebastian Wolf
60ea95abec Properly align custom header on chat page 2020-11-17 23:21:38 +01:00
John Gibbon
59304527d2 fix typo; don't update group status while selecting 2020-11-17 16:21:20 +01:00
John Gibbon
3cce631aa7 optimize permission lookups 2020-11-17 11:14:36 +01:00
John Gibbon
813c7912fe chat info: review optimizations 2020-11-17 10:09:11 +01:00
John Gibbon
78cc3fbac4 chat info: fix imports 2020-11-17 10:09:11 +01:00
John Gibbon
182a2d1344 ChatInfoPage as attached page
fixes #150: Now basically everything is inside a loader; ChatInformationPage is added to ChatPage with pageStack.pushAttached

fixes #166: Replaces the clunky VisualItemModel in tab view and doesn't initialize multiple times.
2020-11-17 10:09:11 +01:00
John Gibbon
c76d079e03 permissions: replace leftover debug changes; fix another copy/paste 2020-11-16 22:31:37 +01:00
John Gibbon
c4947260f7 forwarding permissions: possibly prevent some unneccessary loops 2020-11-16 22:07:21 +01:00
John Gibbon
ac10e600bf fix restricted member permission copy/paste issue 2020-11-16 22:07:21 +01:00
John Gibbon
d5a2d315db forwarding/new message/attachment permissions
enhances #159 PR, hopefully fixes #164 issue
2020-11-16 22:07:21 +01:00
Sebastian Wolf
9141b8e68b Fix crash when forwarding to some chats, introduce iterative init 2020-11-16 16:52:48 +01:00
Sebastian Wolf
6e6396eac4 Fix erroneous display for some web page previews 2020-11-16 15:12:18 +01:00
Sebastian Wolf
aeca799006 Harmonize error handling, ignore 404 (for now) 2020-11-16 14:37:14 +01:00
Sebastian Wolf
c8c0044815 Display all error messages (let's see how it works...) 2020-11-15 23:29:04 +01:00
Sebastian Wolf
85d1bebc3a Load last read messages, enable lazy-loading the future, might fix #136 2020-11-15 23:05:22 +01:00
Sebastian Wolf
1c82072c15
Merge pull request #160 from monich/updateChatPhoto
Update chat photo
2020-11-15 17:19:57 +01:00
Sebastian Wolf
955ebfc853
Merge pull request #159 from jgibbon/feature/messageActions
multiple message selection
2020-11-15 17:00:05 +01:00
Sebastian Wolf
6f9a0a672a Disabling space replacer for now - a performance nightmare with (probably) small benefit 2020-11-15 10:05:27 +01:00
Slava Monich
2323c574b3 Handle updateChatPhoto message 2020-11-15 06:12:17 +02:00
John Gibbon
a8ca33fa3d multiple message selection 2020-11-14 23:50:12 +01:00
Sebastian Wolf
6666cf494a More progress bars & fix some web page previews 2020-11-14 22:53:51 +01:00
Sebastian Wolf
fa470f73ba Progress bar for video downloads 2020-11-14 21:01:52 +01:00
Sebastian Wolf
d994f8f102 Fix UI glitches in forward info, support video notes 2020-11-14 20:02:34 +01:00
Sebastian Wolf
fcf1bb2118 Display state of last message if it was sent by the user, fixes #152 2020-11-14 14:10:24 +01:00
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
301f52603a Integrate latest translation updates 2020-11-12 21:37:17 +01:00
Sebastian Wolf
4aa1542ee3 Add rlottie to About page, prepare changelog for 0.4 2020-11-11 17:54:44 +01:00
Sebastian Wolf
f93f62e88c Fix sticker width/height on smaller devices 2020-11-11 13:33:20 +01:00
Slava Monich
8ca5956722 Made sticker animation configurable 2020-11-11 13:22:43 +02:00
Slava Monich
449784883e Support for animated stickers
TGS are gzipped Lottie-Animations.
2020-11-11 13:22:31 +02:00
Sebastian Wolf
3607ca98a0 Fix flickering image during resize on chat information page 2020-11-10 21:11:25 +01:00
Sebastian Wolf
5d3805759a Small UI fixes, error handling for joining chats 2020-11-09 23:22:24 +01:00
John Gibbon
bb90fe0c85 Merge remote-tracking branch 'upstream/master' into feature/qml-runtime-optimizations 2020-11-08 21:17:42 +01:00
Sebastian Wolf
89e0576adc Support open-with from external sources (e.g. web links) 2020-11-08 21:13:04 +01:00
John Gibbon
ac9d761742 add sourceSize to ProfileThumbnail 2020-11-08 20:37:52 +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
Slava Monich
9e8038b1b6 Added TDLibFile and optimized ProfileThumbnail
Profile images seem to be loading significantly faster after
moving file fetching logic to the native code and removing the
artificial delay.

TDLibFile is a generic object which can hopefully be used
elsewhere as an efficient replacement for JavaScript.
2020-11-08 06:08:32 +02: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
7d28f72e98 add some message type descriptions 2020-11-05 14:06:41 +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
84bfb003b0 Prepare to join/see chats by link 2020-11-03 23:39:09 +01:00
Sebastian Wolf
8e46661d78 Start chat from avatar or user name 2020-11-03 22:32:36 +01:00
Sebastian Wolf
d709473ae4 Merge branch 'master' of https://github.com/Wunderfitz/harbour-fernschreiber 2020-11-03 22:21:21 +01:00
Sebastian Wolf
bbd8e3eabf Start chat from @-mention 2020-11-03 22:21:01 +01:00
Sebastian Wolf
56c5fe2d36
Merge pull request #128 from jgibbon/bugfix/entity-sort
entity sort offset+length
2020-11-03 20:46:38 +01:00
Sebastian Wolf
fd74da2408 Restore web page preview 2020-11-03 08:18:46 +01:00
John Gibbon
7240bbbf44 entity sort offset+length 2020-11-03 00:03:00 +01:00
Sebastian Wolf
1b345a6654 Add a tap-to-change date format for messages, fixes #47 2020-11-02 23:42:23 +01:00
Sebastian Wolf
179ef885b5 Chat Information Page: More tweaks 2020-11-02 23:19:50 +01:00
Sebastian Wolf
5ee71dda29 Chat Information Page: Improvements for channels 2020-11-02 22:51:12 +01:00
John Gibbon
5903fbc4da Set initial scroll position for ChatPage
Fixes #1
2020-11-02 20:54:18 +01:00
Sebastian Wolf
f91079ca43 Try to fix HTML entity replacements for QML elements with styled text 2020-11-01 22:55:43 +01:00
Sebastian Wolf
6eed093e7b
Merge pull request #121 from monich/dbus-open
Don't animate ChatPage transition when notification is tapped
2020-11-01 19:52:36 +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
Slava Monich
96dcbdde22 Don't animate ChatPage transition when notification is tapped
And simplified unrolling of the page stack.
2020-11-01 20:36:59 +02:00
Sebastian Wolf
11a1018ad9
Merge pull request #118 from jgibbon/feature/copy-chat-invite-link
Remove clipboard workaround
2020-11-01 19:28:03 +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
70dc3c8571 Remove clipboard workaround
Turns out, I somehow forgot about the Clipboard type while implementing the info page. Thanks @chstem
2020-10-31 20:40:54 +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
John Gibbon
c185ba1b42 add poll preview type output
as discussed in d45eb28daa
2020-10-30 19:07:06 +01:00
Sebastian Wolf
d45eb28daa Minor changes to poll display & translation adjustments 2020-10-29 22:39:43 +01:00
John Gibbon
894e9af0c0 Fix two issues in PollPreview
- The new emoji basePath workaround also works for TextSwitch content.
 - Checking which context menu entries get added for the poll preview didn't quite work nicely "OnCompleted".
2020-10-28 08:11:14 +01:00
John Gibbon
8c69e04e83 Fix emoji paths for chat information Items 2020-10-27 21:42:39 +01:00
Sebastian Wolf
3402fddaa6
Merge branch 'master' into feature/use-svgs 2020-10-26 22:17:13 +01:00
Sebastian Wolf
2a4325f4ed
Merge pull request #105 from monich/image-page
Tweaked ImagePage behavior
2020-10-26 21:55:32 +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
Slava Monich
79e06bd4c4 Tweaked ImagePage behavior
This should made reaction to a single tap more reliable and
flicking back easier.
2020-10-25 03:14:07 +03:00
John Gibbon
c4d67de8a5 streamline behaviours/animations 2020-10-24 19:32:21 +02: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
John Gibbon
214a6c780c Fix crash with no groups in common 2020-10-19 21:06:28 +02:00
Sebastian J. Wolf
98e2bea69f Prepare translation files for #87 2020-10-19 19:51:33 +02:00
Sebastian J. Wolf
91ae3651ef Change license header to reflect number of contributions 2020-10-19 19:34:47 +02:00
Sebastian Wolf
d20008bb4c
Merge branch 'master' into feature/chatInfoPage 2020-10-19 18:29:07 +02:00
carlosgonz
2f80cf0a5d
Update InitializationPage.qml 2020-10-19 10:02:34 -04:00
John Gibbon
74a732a5b6 implement chat info page
includes some basic group administration features
2020-10-19 12:48:55 +02:00
carlosgonz
3d04e7365b
Update InitializationPage.qml 2020-10-18 20:00:17 -04: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
Slava Monich
f86e60b4a2 Let context menu to appear when sticker is long-pressed
And don't load placeholder image too quickly.
2020-10-18 21:10:26 +03:00
Sebastian J. Wolf
a78f60f974 Search for emojis with :<keyword> 2020-10-18 18:57:01 +02:00
Sebastian J. Wolf
3410903afb Adjust text for notification settings & German translation 2020-10-18 17:46:08 +02:00
Slava Monich
f75e5a3f4b Added "Notification feedback" combo box 2020-10-18 18:02:44 +03:00
Sebastian J. Wolf
e578c6bef3 Use GridView for sticker picker 2020-10-18 16:29:34 +02:00
Sebastian Wolf
a9f7a10033
Merge pull request #79 from monich/about-icon
Adjusted app icon size on the about page (again)
2020-10-18 15:16:58 +02:00
Slava Monich
93e54b8ab4 Adjusted app icon size on the about page
It was still too large on a 4:3 tablet screen in landscape.
2020-10-18 01:56:11 +03:00
Slava Monich
9a4246e275 Tweaked InitializationPage UI
1. Only load app icon once
2. Removed come unused ids and attributes
3. EnterKey magic
4. Use FadeAnimation
2020-10-18 01:45:39 +03: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
d30a72e372 Merge branch 'master' of https://github.com/Wunderfitz/harbour-fernschreiber 2020-10-14 23:26:16 +02:00
Sebastian J. Wolf
537725566b Supporting stickers is quite some work... :/ 2020-10-14 23:25:56 +02:00
Slava Monich
8e54b898d7 Fixed the app icon size on the About page in landscape
It was ridiculously large.
2020-10-14 04:03:35 +03: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
Sebastian Wolf
3c073b4840
Merge pull request #61 from monich/image-only
Toggle "Image only" mode on tap
2020-10-11 18:34:12 +02:00
Slava Monich
f4c84daebf Show stickers as stickers when showStickersAsImages is off 2020-10-11 00:39:22 +03:00
Slava Monich
4e65375234 Added "Show stickers as images" checkbox 2020-10-11 00:39:22 +03:00
Slava Monich
2be36d10a1 Toggle "Image only" mode on tap 2020-10-10 23:13:44 +03:00
Sebastian J. Wolf
0dbc0e5887 Don't double-escape ampersand 2020-10-07 23:14:02 +02:00
Sebastian J. Wolf
d758648dc2 Document message caption is now shown, fixes #59 2020-10-07 22:59:00 +02: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
92a869f7db Re-introduce chatChanged as chat list update is no longer properly working after #40 2020-10-04 16:06:20 +02:00
Sebastian J. Wolf
12119c38bc Add sticker icon 2020-10-04 15:09:06 +02:00
Sebastian J. Wolf
3973cdf976 Include @monich's suggestions in #42 2020-10-04 13:36:30 +02:00
Sebastian Wolf
d79ecb8d4f
Merge branch 'master' into feature/userRegistration 2020-10-04 12:27:25 +02:00
Sebastian J. Wolf
79c77c426b Don't display 'unknown' for channels in chat list 2020-10-03 21:06:50 +02:00
Sebastian Wolf
b62078e380
Merge pull request #40 from monich/chatlist-roles
Expose more roles from ChatListModel
2020-10-03 20:50:00 +02:00
Sebastian J. Wolf
873c9b2669 Handle ampersands in messages correctly, fixes #43 2020-10-03 20:04:32 +02:00
Slava Monich
39ecc7a058 Expose more roles from ChatListModel
Roles can now be directly bound to individual UI elements.

Replaced per-delegate timestamp refresh timers with a single
one refreshing all timestamps with a single dataChanged signal.

Removed chatChanged signal from since it's no longer necessary.
2020-10-03 21:02:33 +03:00
John Gibbon
3149cb38cb handle empty chat list after registration
also translate some strings from b0d85840 to german
2020-10-01 13:20:43 +02:00
John Gibbon
6c1fc77f0c handle user registration 2020-10-01 12:51:43 +02:00
Sebastian J. Wolf
9eb396c9ca Fixes here and there... 2020-09-30 21:41:49 +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
5fa2a1200f Adjust new sorting logic to TDLib 1.6.0, add contributors' info 2020-09-28 20:47:03 +02:00
Sebastian Wolf
c333a968d6
Merge pull request #37 from monich/order
Fix chat ordering and optimize chat data storage
2020-09-28 20:21:26 +02:00
Sebastian J. Wolf
30f208d9fb Initial steps to upload videos and documents 2020-09-27 23:24:22 +02:00
Slava Monich
f10d8a4045 Fix chat ordering and optimize chat data storage 2020-09-27 19:15:13 +03: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
Sebastian J. Wolf
5b0c3df4d3 Escape <>, fixes #29 2020-09-24 21:54:36 +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
a361b787c2 Two-step authentication seems to work... 2020-09-18 22:27:00 +02:00
Sebastian J. Wolf
815bb5d592 Prepare two-step authentication 2020-09-16 22:36:43 +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
1a5aa9de3f Start work on un/muting chats 2020-09-16 00:15:43 +02:00
Sebastian J. Wolf
0daea61bd9 Display mute symbol for muted chats 2020-09-15 23:03:41 +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
d39b1c4a10 Open chat directly from notification 2020-09-15 21:17:44 +02:00
Sebastian J. Wolf
266a72036b Open Fernschreiber from notification 2020-09-14 23:43:21 +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
c52a544e51 Better notification texts 2020-09-12 23:22:33 +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
ed170dc374 Don't display zeros in webpage previews 2020-08-30 15:59:34 +02:00
Sebastian J. Wolf
0849fadadd Translations adjustments, trigger history reload earlier 2020-08-30 15:04:15 +02:00
Sebastian J. Wolf
d4954e0d7e Busy indicator for chat list 2020-08-30 13:42:22 +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
391dd597e2 Initial performance improvements 2020-08-29 16:32:43 +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
7fb1344be3 Don't display short texts for stickers in regular chats 2020-08-26 23:14:29 +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
Sebastian J. Wolf
bfbc310bc9 Two more message types on chat list 2020-08-21 12:53:03 +02:00
Sebastian J. Wolf
543ba5d46b Force list item update after changed chats 2020-08-21 09:29:19 +02:00
Sebastian J. Wolf
588fbd11a8 Support some message types in chat list 2020-08-20 23:56:21 +02:00
Sebastian J. Wolf
13ce878b05 Display unread message count on chat list 2020-08-20 20:06:59 +02:00
Sebastian J. Wolf
d87b5b84fb Surrendering - trying delta updates only after successful initialization 2020-08-20 18:45:56 +02:00
Sebastian J. Wolf
d29b3bd79b Completed automated sorting, proper UI updates still missing 2020-08-20 17:06:47 +02:00
Sebastian J. Wolf
3948920a93 Sorting and updating is complicated 2020-08-20 14:58:32 +02:00
Sebastian J. Wolf
0a04169f4f Sorting seems to work, we'll see... 2020-08-20 10:50:47 +02:00
Sebastian J. Wolf
8555716113 Display last message in chat list, start ordering them 2020-08-20 00:24:24 +02:00
Sebastian J. Wolf
ddd894bdfa Display chat pictures properly 2020-08-19 16:47:59 +02:00
Sebastian J. Wolf
c44d85732c First steps to get a chat list on screen :) 2020-08-19 09:55:13 +02:00
Sebastian J. Wolf
48be585561 Finally the onboarding process seems to work properly 2020-08-18 11:11:03 +02:00
Sebastian J. Wolf
d55aa19a72 The onboarding UX doesn't like me... 2020-08-17 23:44:37 +02:00
Sebastian J. Wolf
666acdf1db Every app needs a nice cover page :) 2020-08-16 23:31:20 +02:00
Sebastian J. Wolf
ee31736f83 Cache discovered chats 2020-08-16 17:38:51 +02:00
Sebastian J. Wolf
39587a7724 Add nice rounded corners for thumbnail 2020-08-14 11:11:34 +02:00
Sebastian J. Wolf
41ac3c4829 Bring own profile picture to the about page 2020-08-14 10:33:42 +02:00
Sebastian J. Wolf
1ef7d0b9ad Give some credits to twemoji 2020-08-13 22:42:54 +02:00
Sebastian J. Wolf
fdffb99029 Add user information & add Emojis 2020-08-13 22:33:08 +02:00
Sebastian J. Wolf
446338363f Store user information & introduce connection status 2020-08-13 17:08:14 +02:00
Sebastian J. Wolf
6b68d8a276 First successful authentication, yeah! :) 2020-08-13 15:35:43 +02:00
Sebastian J. Wolf
bd59896896 Asking Telegram for an authentication code 2020-08-13 10:15:26 +02:00
Sebastian J. Wolf
26a885400d Bring TDLib version to the UI 2020-08-12 10:50:01 +02:00
Sebastian J. Wolf
6d864b3623 Initialize Fernschreiber repository 2020-08-10 14:17:29 +02:00