Add internalLinkTypeDefaultMessageAutoDeleteTimerSettings.
This commit is contained in:
parent
7e1d550870
commit
1a3789e88d
@ -4435,6 +4435,9 @@ internalLinkTypeChangePhoneNumber = InternalLinkType;
|
||||
//@description The link is a chat invite link. Call checkChatInviteLink with the given invite link to process the link @invite_link Internal representation of the invite link
|
||||
internalLinkTypeChatInvite invite_link:string = InternalLinkType;
|
||||
|
||||
//@description The link is a link to the default message auto-delete timer settings section of the app
|
||||
internalLinkTypeDefaultMessageAutoDeleteTimerSettings = InternalLinkType;
|
||||
|
||||
//@description The link is a link to the filter settings section of the app
|
||||
internalLinkTypeFilterSettings = InternalLinkType;
|
||||
|
||||
|
@ -285,6 +285,12 @@ class LinkManager::InternalLinkConfirmPhone final : public InternalLink {
|
||||
}
|
||||
};
|
||||
|
||||
class LinkManager::InternalLinkDefaultMessageAutoDeleteTimerSettings final : public InternalLink {
|
||||
td_api::object_ptr<td_api::InternalLinkType> get_internal_link_type_object() const final {
|
||||
return td_api::make_object<td_api::internalLinkTypeDefaultMessageAutoDeleteTimerSettings>();
|
||||
}
|
||||
};
|
||||
|
||||
class LinkManager::InternalLinkDialogInvite final : public InternalLink {
|
||||
string url_;
|
||||
|
||||
@ -1122,6 +1128,10 @@ unique_ptr<LinkManager::InternalLink> LinkManager::parse_tg_link_query(Slice que
|
||||
// premium_offer?ref=<referrer>
|
||||
return td::make_unique<InternalLinkPremiumFeatures>(get_arg("ref"));
|
||||
} else if (!path.empty() && path[0] == "settings") {
|
||||
if (path.size() == 2 && path[1] == "auto_delete") {
|
||||
// settings/auto_delete
|
||||
return td::make_unique<InternalLinkDefaultMessageAutoDeleteTimerSettings>();
|
||||
}
|
||||
if (path.size() == 2 && path[1] == "change_number") {
|
||||
// settings/change_number
|
||||
return td::make_unique<InternalLinkChangePhoneNumber>();
|
||||
|
@ -110,6 +110,7 @@ class LinkManager final : public Actor {
|
||||
class InternalLinkBotStartInGroup;
|
||||
class InternalLinkChangePhoneNumber;
|
||||
class InternalLinkConfirmPhone;
|
||||
class InternalLinkDefaultMessageAutoDeleteTimerSettings;
|
||||
class InternalLinkDialogInvite;
|
||||
class InternalLinkFilterSettings;
|
||||
class InternalLinkGame;
|
||||
|
@ -153,6 +153,9 @@ TEST(Link, parse_internal_link) {
|
||||
auto chat_invite = [](const td::string &hash) {
|
||||
return td::td_api::make_object<td::td_api::internalLinkTypeChatInvite>("tg:join?invite=" + hash);
|
||||
};
|
||||
auto default_message_auto_delete_timer_settings = [] {
|
||||
return td::td_api::make_object<td::td_api::internalLinkTypeDefaultMessageAutoDeleteTimerSettings>();
|
||||
};
|
||||
auto filter_settings = [] {
|
||||
return td::td_api::make_object<td::td_api::internalLinkTypeFilterSettings>();
|
||||
};
|
||||
@ -966,6 +969,7 @@ TEST(Link, parse_internal_link) {
|
||||
parse_internal_link("tg://settings/themes/?as#rad", theme_settings());
|
||||
parse_internal_link("tg://settings/themes/a", settings());
|
||||
parse_internal_link("tg://settings/asdsathemesasdas/devices", settings());
|
||||
parse_internal_link("tg://settings/auto_delete", default_message_auto_delete_timer_settings());
|
||||
parse_internal_link("tg://settings/devices", active_sessions());
|
||||
parse_internal_link("tg://settings/change_number", change_phone_number());
|
||||
parse_internal_link("tg://settings/folders", filter_settings());
|
||||
|
Loading…
x
Reference in New Issue
Block a user