tdesktop/Telegram/SourceFiles/core/local_url_handlers.h

37 lines
844 B
C++

/*
This file is part of Telegram Desktop,
the official desktop application for the Telegram messaging service.
For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#pragma once
namespace qthelp {
class RegularExpressionMatch;
} // namespace qthelp
namespace Main {
class Session;
} // namespace Main
namespace Core {
struct LocalUrlHandler {
QString expression;
Fn<bool(
Main::Session *session,
const qthelp::RegularExpressionMatch &match,
const QVariant &context)> handler;
};
[[nodiscard]] const std::vector<LocalUrlHandler> &LocalUrlHandlers();
[[nodiscard]] QString TryConvertUrlToLocal(QString url);
[[nodiscard]] bool InternalPassportLink(const QString &url);
[[nodiscard]] bool StartUrlRequiresActivate(const QString &url);
} // namespace Core