mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-04-16 22:27:20 +02:00
Add proof-of-concept support for keyboardButtonWebView.
This commit is contained in:
parent
1d8aac26ce
commit
20bdbf531a
3 changed files with 17 additions and 7 deletions
|
@ -222,7 +222,14 @@ void activateBotCommand(
|
|||
} break;
|
||||
|
||||
case ButtonType::WebView: {
|
||||
|
||||
if (const auto m = CheckMainWidget(&msg->history()->session())) {
|
||||
if (const auto bot = msg->getMessageBot()) {
|
||||
m->controller()->requestAttachWebview(
|
||||
bot,
|
||||
bot,
|
||||
button->data);
|
||||
}
|
||||
}
|
||||
} break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -429,12 +429,14 @@ void SessionNavigation::resolveAttachWebview(
|
|||
|
||||
void SessionNavigation::requestAttachWebview(
|
||||
not_null<PeerData*> peer,
|
||||
not_null<UserData*> bot) {
|
||||
not_null<UserData*> bot,
|
||||
const QByteArray &url) {
|
||||
using Flag = MTPmessages_RequestWebView::Flag;
|
||||
_api.request(MTPmessages_RequestWebView(
|
||||
MTP_flags(0),
|
||||
MTP_flags(url.isEmpty() ? Flag(0) : Flag::f_url),
|
||||
peer->input,
|
||||
bot->inputUser,
|
||||
MTPstring(), // start_param
|
||||
MTP_bytes(url),
|
||||
MTPDataJSON() // theme_params
|
||||
)).done([=](const MTPWebViewResult &result) {
|
||||
result.match([&](const MTPDwebViewResultUrl &data) {
|
||||
|
|
|
@ -208,6 +208,10 @@ public:
|
|||
void resolveAttachWebview(
|
||||
not_null<PeerData*> peer,
|
||||
const QString &botUsername);
|
||||
void requestAttachWebview(
|
||||
not_null<PeerData*> peer,
|
||||
not_null<UserData*> bot,
|
||||
const QByteArray &url = QByteArray());
|
||||
[[nodiscard]] auto inlineResultConfirmed() const
|
||||
-> rpl::producer<InlineBots::ResultSelected>;
|
||||
|
||||
|
@ -278,9 +282,6 @@ private:
|
|||
not_null<PeerData*> peer,
|
||||
const PeerByLinkInfo &info);
|
||||
|
||||
void requestAttachWebview(
|
||||
not_null<PeerData*> peer,
|
||||
not_null<UserData*> bot);
|
||||
void requestAddToMenu(not_null<UserData*> bot, Fn<void()> callback);
|
||||
void showAttachWebview(
|
||||
not_null<PeerData*> peer,
|
||||
|
|
Loading…
Add table
Reference in a new issue