diff --git a/src/ui/NhekoGlobalObject.cpp b/src/ui/NhekoGlobalObject.cpp index 15f2a5af..a93466d2 100644 --- a/src/ui/NhekoGlobalObject.cpp +++ b/src/ui/NhekoGlobalObject.cpp @@ -61,7 +61,17 @@ Nheko::openLink(QString link) const QUrl url(link); // Open externally if we couldn't handle it internally if (!ChatPage::instance()->handleMatrixUri(url)) { - QDesktopServices::openUrl(url); + const QStringList allowedUrlSchemes = { + "http", + "https", + "mailto", + }; + + if (allowedUrlSchemes.contains(url.scheme())) + QDesktopServices::openUrl(url); + else + nhlog::ui()->warn("Url '{}' not opened, because the scheme is not in the allow list", + url.toDisplayString().toStdString()); } } void