mirror of
https://github.com/kotatogram/kotatogram-desktop
synced 2025-10-07 13:46:05 +00:00
Show toast on forward attempt to premium required.
This commit is contained in:
@@ -18,29 +18,35 @@ rpl::producer<bool> Show::adjustShadowLeft() const {
|
||||
return rpl::single(false);
|
||||
}
|
||||
|
||||
Window::SessionController *Show::resolveWindow(WindowUsage usage) const {
|
||||
const auto session = &this->session();
|
||||
const auto check = [&](Window::Controller *window) {
|
||||
if (const auto controller = window->sessionController()) {
|
||||
if (&controller->session() == session) {
|
||||
return controller;
|
||||
ResolveWindow ResolveWindowDefault() {
|
||||
return [](not_null<Main::Session*> session, WindowUsage usage)
|
||||
-> Window::SessionController* {
|
||||
const auto check = [&](Window::Controller *window) {
|
||||
if (const auto controller = window->sessionController()) {
|
||||
if (&controller->session() == session) {
|
||||
return controller;
|
||||
}
|
||||
}
|
||||
return (Window::SessionController*)nullptr;
|
||||
};
|
||||
auto &app = Core::App();
|
||||
if (const auto a = check(app.activeWindow())) {
|
||||
return a;
|
||||
} else if (const auto b = check(app.activePrimaryWindow())) {
|
||||
return b;
|
||||
} else if (const auto c = check(app.windowFor(&session->account()))) {
|
||||
return c;
|
||||
} else if (const auto d = check(
|
||||
app.ensureSeparateWindowForAccount(
|
||||
&session->account()))) {
|
||||
return d;
|
||||
}
|
||||
return (Window::SessionController*)nullptr;
|
||||
return nullptr;
|
||||
};
|
||||
auto &app = Core::App();
|
||||
if (const auto a = check(app.activeWindow())) {
|
||||
return a;
|
||||
} else if (const auto b = check(app.activePrimaryWindow())) {
|
||||
return b;
|
||||
} else if (const auto c = check(app.windowFor(&session->account()))) {
|
||||
return c;
|
||||
} else if (const auto d = check(
|
||||
app.ensureSeparateWindowForAccount(
|
||||
&session->account()))) {
|
||||
return d;
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Window::SessionController *Show::resolveWindow(WindowUsage usage) const {
|
||||
return ResolveWindowDefault()(&session(), usage);
|
||||
}
|
||||
|
||||
} // namespace ChatHelpers
|
||||
|
Reference in New Issue
Block a user