Commit graph

87 commits

Author SHA1 Message Date
Slava Monich
2ded14deda Added "unread mention" indicator to the chat list (#530)
It's displayed in place of the "unread reaction" indicator. In case
if there are both unread mentions and reactions, "unread mention"
takes precedence.
2023-11-25 13:31:50 +03:00
Sebastian Wolf
026d32c92a Restore search in chats 2023-11-21 14:18:20 +03:00
Slava Monich
fb3d314ee2 Added UI for configuring session inactivity timeout (#527) 2023-11-20 00:50:41 +03:00
Slava Monich
c1c8729023 Adapt to changes in reply message info (#525)
1.8.14:
https://github.com/tdlib/td/commit/fa94aba

1.8.21:
https://github.com/tdlib/td/commit/811a7c6
https://github.com/tdlib/td/commit/5216ea1
2023-11-19 12:21:17 +03:00
Slava Monich
0b6a2db2f1 Adapt to changes in TdLib (#524)
* Adapt setTdlibParameters for TdLib > 1.8.5

For some reason tdlibParameters were inlined between 1.8.5 and 1.8.6
See https://github.com/tdlib/td/commit/f6a2ecd

* sponsoredMessage => sponsoredMessages in TdLib 1.8.8

See https://github.com/tdlib/td/commit/ec1310a

* Support another variant of messageReaction

The reaction field has changed from string to ReactionType somewhere
between 1.8.5 and 1.8.6

See https://github.com/tdlib/td/commit/b14708f

* Add support for new message reactions API

It has changed between 1.8.5 and 1.8.6

https://github.com/tdlib/td/commit/b14708f (ReactionType)
https://github.com/tdlib/td/commit/0b8e143 (ChatAvailableReactions)
https://github.com/tdlib/td/commit/6b2f6b4 (addMessageReaction)
https://github.com/tdlib/td/commit/d29d367 (updateActiveEmojiReactions)

etc.

* Highlight chosen reaction

* Support username in the new format

username attribute has been replaced with usernames in 1.8.8 and
now looks like this:

    "usernames": {
        "@type": "usernames",
        "active_usernames": [
            "whatever"
        ],
        "disabled_usernames": [
        ],
        "editable_username": "whatever"
    }

See https://github.com/tdlib/td/commit/897032e

* Support new reply_to message attribute

Since 1.8.15 it replaces reply_to_message_id and reply_in_chat_id.
Looks like this:

    "reply_to": {
        "@type": "messageReplyToMessage",
        "chat_id": -1001234567890,
        "is_quote_manual": false,
        "message_id": 234567890,
        "origin_send_date": 0
    },

See https://github.com/tdlib/td/commit/6116573

* Added support for MessageOrigin values

All of a sudden MessageForwardOrigin has been renamed into MessageOrigin
in TdLib 1.8.20 just because why not:

https://github.com/tdlib/td/commit/10c9e40
2023-11-19 12:01:27 +03:00
Sebastian Wolf
99910a3f3a
Bring unread mention/reactions to chat list 2022-06-06 15:55:21 +02:00
Sebastian Wolf
6d6b07b9a9
Get available message reactions 2022-04-30 23:51:47 +02:00
Sebastian Wolf
932f483b7a
TDLib 1.8.0: New format for sponsored messages 2022-01-07 22:03:58 +01:00
Slava Monich
7c8db1b739 Remove (some) unused entries from QVariantMaps
This may save megabytes of heap depending on how many stickers you have.
2021-12-18 06:40:06 +02:00
Sebastian Wolf
b8e5fb189c
Handle many direct message links properly, fixes #312 2021-12-11 18:29:31 +01:00
Sebastian Wolf
0f4e0eaf58
Better support sponsored message types 2021-12-08 00:33:35 +01:00
Slava Monich
84cfcb5150 Contigurable mess
There's no UI for that, you have to configure your mess manually))
Also, made sure that chats don't handle another char's mess.
2021-12-06 04:32:40 +02:00
Sebastian Wolf
a59d32b29d
Update to TDLib 1.7.9, preliminary support for sponsored messages 2021-12-05 22:06:05 +01:00
Sebastian Wolf
aef9fd8391
Support for managing Telegram sessions 2021-02-20 00:14:43 +01:00
Slava Monich
b1c4311990 Update message view counts in real time 2021-01-31 22:10:45 +02:00
Sebastian Wolf
9b820dad2b
Add and delete profile pictures 2021-01-26 23:26:40 +01:00
Sebastian Wolf
9a5db3e83f
Next steps towards supporting user preferences 2021-01-24 23:46:30 +01:00
John Gibbon
1ce981c147 Implement inline queries (among others) 2021-01-10 22:20:05 +01:00
Sebastian Wolf
fb161f3d24
Take chat list type into account when receiving new chat positions 2021-01-06 16:54:23 +01:00
Sebastian Wolf
9299205379
Show pinned chat icon in list 2021-01-06 10:42:12 +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
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
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
4fbdeb6366
TDLib 1.7: Set timeout back to 5s, repair user profile photos 2020-12-16 23:54:17 +01:00
Sebastian Wolf
a1f0e1c1c5 TDLib 1.7: Some 'fun' with the message database 2020-12-08 21:57:23 +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
4cf35641c5 Secret chat identifer switches to qlonglong 2020-11-27 19:42:39 +01:00
Sebastian Wolf
deacb7f0ea Synchronize contacts with Telegram 2020-11-26 22:18:51 +01:00
Sebastian Wolf
90f7535fda Secret chats begin to work properly... 2020-11-26 00:25: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
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
2830f50a35 React properly on pinned message changes, nice message overlay ;) 2020-11-18 14:59:35 +01:00
Slava Monich
2323c574b3 Handle updateChatPhoto message 2020-11-15 06:12:17 +02:00
Slava Monich
f25e3de029 Preallocate more QStrings in TDLibReceiver
For better performance.
2020-11-15 06:12:17 +02:00
Slava Monich
78720d48fc Silence 'Unhandled object type "ok"' message 2020-11-15 06:12:17 +02:00
Sebastian Wolf
5d3805759a Small UI fixes, error handling for joining chats 2020-11-09 23:22:24 +01:00
Sebastian Wolf
3175e641dc
Merge branch 'master' into const-refs 2020-10-26 21:28:39 +01: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
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
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
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
Sebastian Wolf
5509a555a0
Merge pull request #44 from monich/verbose
Enable verbose output in TDLibReceiver if DEBUG is defined
2020-10-04 13:37:55 +02:00