Commit graph

183 commits

Author SHA1 Message Date
Santhosh Manikandan S
756a96e92c Merge branch 'master' into logout 2021-01-11 23:57:31 +05:30
Santhosh Manikandan S
62a17f722f Added option to logout and login 2021-01-11 23:35:55 +05:30
John Gibbon
1ce981c147 Implement inline queries (among others) 2021-01-10 22:20:05 +01:00
Sebastian Wolf
d4935a4968
Introduce online-only mode as non-default option, fixes #77 2021-01-10 13:35:34 +01:00
Sebastian Wolf
e3370bf73e
Add chat list menu option to pin/unpin chat 2021-01-07 22:47:42 +01:00
Sebastian Wolf
7453c60052
Add sourceSize to pin icon 2021-01-07 21:52:26 +01:00
Sebastian Wolf
9299205379
Show pinned chat icon in list 2021-01-06 10:42:12 +01:00
Sebastian Wolf
2b634471dc
Sending locations seems to work as well... 2021-01-03 01:22:30 +01:00
Sebastian Wolf
5213084fb1
Sending voice notes seems to work... 2021-01-02 17:22:09 +01:00
John Gibbon
753f322053 implement message drafts 2020-12-31 01:18:14 +01:00
Sebastian Wolf
232049422a
Add 'mark chat as read/unread' feature, fixes #240 2020-12-31 00:19:36 +01:00
Slava Monich
0cb19d833c Message API usage cleanup
1. Pass chat_id where appropriate
2. Pass message_id and chat_id (which are numbers) as numbers
3. Use pre-initialized QStrings more often
4. Don't pass numbers by const reference, it doesn't make sense
5. Removed some redundant const modifiers
2020-12-30 18:20:50 +02:00
Sebastian Wolf
283466ae95
Merging should be done right... :/ 2020-12-29 09:12:57 +01:00
Sebastian Wolf
78a71cfbab
Merge remote-tracking branch 'origin/master' into searching 2020-12-28 22:16:59 +01:00
Sebastian Wolf
e6fd5885aa
Force read all mentions in a chat when nothing is unread 2020-12-28 21:57:34 +01:00
Sebastian Wolf
72fd008dfc
Disable some stuff that is not needed in search mode 2020-12-28 17:12:21 +01:00
Sebastian Wolf
2e970f2003
Search for public chats... 2020-12-27 23:30:25 +01:00
Sebastian Wolf
0f28db0115
Merge remote-tracking branch 'origin/master' into searching 2020-12-27 12:06:54 +01:00
Sebastian Wolf
19a17ed3f3
Now you can search in a chat... 2020-12-27 00:16:25 +01:00
John Gibbon
d0f33969eb support basic bot messages (reply markup)
only inlineKeyboardButtonTypeCallback and inlineKeyboardButtonTypeUrl are implemented.
2020-12-27 00:01:59 +01:00
Sebastian Wolf
13a91fa0e7
Remove pinned message workaround, add more build information 2020-12-26 15:43:10 +01:00
Sebastian Wolf
fe0b390a87
TDLib 1.7: Bring back pinned messages (nobody noticed so far?) 2020-12-25 22:38:13 +01:00
Sebastian Wolf
4e680a9a3f
Don't display empty in-reply-to section if message wasn't found 2020-12-25 15:33:53 +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
Sebastian Wolf
a8fd0e0463 Chore: Change release version 2020-12-01 23:18:26 +01:00
Sebastian Wolf
4aedc56ca7 Merge incoming changes from secret chat/contacts 2020-11-29 12:44:50 +01:00
Sebastian Wolf
9aa1392b1e Postprocess at-mentions without username 2020-11-29 00:33:27 +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
3b8d284b2b Handle secret chat state for chat list 2020-11-25 22:09:47 +01:00
Sebastian Wolf
a6d8328b10 I can see secret chats... ;) 2020-11-25 00:23:38 +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
20b773ac59 Check contacts requested via extra-attribute 2020-11-23 20:53:43 +01:00
Sebastian Wolf
51cad07231 Yet another merge from master, need to be faster... ;) 2020-11-23 12:08:25 +01:00
Slava Monich
3d48125371 Add MceInterface object 2020-11-23 01:38:06 +02:00
Slava Monich
162e1ca996 Take logging categories into use
Logging can be enabled in release build like this:

QT_LOGGING_RULES="fernschreiber.*=true" harbour-fernschreiber

See https://doc.qt.io/qt-5/qloggingcategory.html for more details.
2020-11-22 16:40:55 +02:00
Sebastian Wolf
c6fa5cf97f Options for creating new chats... 2020-11-21 22:13:37 +01:00
Sebastian Wolf
9d75cbbedf Showing sorted contacts, wow! 2020-11-20 23:00:50 +01:00
Sebastian Wolf
3dbf38a1fa Start implementing 'New Chat' functionality 2020-11-20 18:30:33 +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
2830f50a35 React properly on pinned message changes, nice message overlay ;) 2020-11-18 14:59:35 +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
1c82072c15
Merge pull request #160 from monich/updateChatPhoto
Update chat photo
2020-11-15 17:19:57 +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
Slava Monich
66551e9590 Initialize TDLibWrapper::joinChatRequested 2020-11-14 06:33:39 +02:00
Sebastian Wolf
301f52603a Integrate latest translation updates 2020-11-12 21:37:17 +01:00
Sebastian Wolf
5d3805759a Small UI fixes, error handling for joining chats 2020-11-09 23:22:24 +01:00
Sebastian Wolf
89e0576adc Support open-with from external sources (e.g. web links) 2020-11-08 21:13: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
Sebastian Wolf
6d3b3464bf Experiment a bit with opening new chats 2020-11-05 00:02:27 +01:00
Sebastian Wolf
84bfb003b0 Prepare to join/see chats by link 2020-11-03 23:39:09 +01:00
Sebastian Wolf
bbd8e3eabf Start chat from @-mention 2020-11-03 22:21:01 +01:00
Slava Monich
4c2f9dba19 Moved chatTypeFromString from ChatListModel to TDLibWrapper
So that it can be used elsewhere
2020-10-31 21:19:34 +02:00
Sebastian Wolf
3175e641dc
Merge branch 'master' into const-refs 2020-10-26 21:28:39 +01:00
John Gibbon
d3324bfab2 slot/primitive considerations from #103 2020-10-24 19:28:20 +02:00
Slava Monich
080244ecb1 Removed useless slots from TDLibWrapper
Signals can be connected directly to signals.
2020-10-24 03:24:56 +03:00
Slava Monich
460eaa878f Don't pass primitive data as a const reference
It just doesn't make any sense.

Reference (essentially a pointer) can't be smaller than a primitive
type, except for 64-bit numbers on a 32-bit platform. In terms of
performance, an additional indirection can't be better than picking
the value directly from the stack, let alone a register.
2020-10-24 03:13:08 +03: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
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
John Gibbon
74a732a5b6 implement chat info page
includes some basic group administration features
2020-10-19 12:48:55 +02:00
Sebastian J. Wolf
a95dcc4efc Ignore already existing file when download is requested, fixes #67 2020-10-18 22:14:48 +02:00
Sebastian J. Wolf
a78f60f974 Search for emojis with :<keyword> 2020-10-18 18:57:01 +02:00
Sebastian J. Wolf
e578c6bef3 Use GridView for sticker picker 2020-10-18 16:29:34 +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
256244a08e Some additional preparations to send stickers 2020-10-12 22:44:21 +02:00
Sebastian J. Wolf
c0269b5502 Display information for forwarded messages 2020-10-07 22:17:44 +02:00
Slava Monich
caecdb0f56 Moved app settings to a separate object 2020-10-06 04:40:39 +03:00
Sebastian J. Wolf
c1ea773fae Prepare getting some stickers :D 2020-10-05 23:08:47 +02:00
Sebastian Wolf
d4846d5f26
Merge pull request #45 from monich/hide-irrelevant-chats
Hide irrelevant chats
2020-10-04 14:09:45 +02:00
Slava Monich
56bc1135a7 Don't show irrelevant groups by default
chatListModel.showAllChats property can be used to switch visibility
of irrelevant groups on and off.
2020-10-04 04:33:42 +03:00
Slava Monich
1b261c224f Shortened log statements in TDLibWrapper
Macro is a good replacement for copy/paste.

And I'm not sure if this "[TDLibWrapper]" prefix is really necessary
since Qt adds the class and method to the debug messages which makes
another such prefix redundant. The LOG macro makes it easy to get rid
of it.
2020-10-04 04:28:46 +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
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
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
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
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
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
aa3a841fee Prepare notification manager 2020-09-02 22:49:15 +02:00
Sebastian J. Wolf
436bce0966 Enable Telegram Notification API 2020-09-01 23:14:59 +02:00