Don't expand urls same as text.
This commit is contained in:
parent
ae340a0b76
commit
663e2cc133
3 changed files with 18 additions and 7 deletions
|
|
@ -41,13 +41,16 @@ QString UrlClickHandler::copyToClipboardContextItemText() const {
|
|||
: Ui::Integration::Instance().phraseContextCopyLink();
|
||||
}
|
||||
|
||||
QString UrlClickHandler::url() const {
|
||||
if (isEmail()) {
|
||||
return _originalUrl;
|
||||
QString UrlClickHandler::EncodeForOpening(const QString &originalUrl) {
|
||||
if (IsEmail(originalUrl)) {
|
||||
return originalUrl;
|
||||
}
|
||||
|
||||
QUrl u(_originalUrl), good(u.isValid() ? u.toEncoded() : QString());
|
||||
QString result(good.isValid() ? QString::fromUtf8(good.toEncoded()) : _originalUrl);
|
||||
const auto u = QUrl(originalUrl);
|
||||
const auto good = QUrl(u.isValid() ? u.toEncoded() : QString());
|
||||
const auto result = good.isValid()
|
||||
? QString::fromUtf8(good.toEncoded())
|
||||
: originalUrl;
|
||||
|
||||
if (!result.isEmpty()
|
||||
&& !QRegularExpression(
|
||||
|
|
|
|||
|
|
@ -59,11 +59,17 @@ public:
|
|||
const auto at = url.indexOf('@'), slash = url.indexOf('/');
|
||||
return ((at > 0) && (slash < 0 || slash > at));
|
||||
}
|
||||
[[nodiscard]] static QString EncodeForOpening(const QString &originalUrl);
|
||||
[[nodiscard]] static bool IsSuspicious(const QString &url);
|
||||
[[nodiscard]] static QString ShowEncoded(const QString &url);
|
||||
|
||||
protected:
|
||||
QString url() const override;
|
||||
[[nodiscard]] QString originalUrl() const {
|
||||
return _originalUrl;
|
||||
}
|
||||
QString url() const override {
|
||||
return EncodeForOpening(_originalUrl);
|
||||
}
|
||||
QString readable() const override {
|
||||
return _readable;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3270,7 +3270,9 @@ TextForMimeData String::toText(
|
|||
return;
|
||||
}
|
||||
const auto skipLink = (entity.type == EntityType::CustomUrl)
|
||||
&& (entity.data.startsWith(qstr("internal:")));
|
||||
&& (entity.data.startsWith(qstr("internal:"))
|
||||
|| (entity.data
|
||||
== UrlClickHandler::EncodeForOpening(full.toString())));
|
||||
if (composeExpanded) {
|
||||
result.expanded.append(full);
|
||||
if (entity.type == EntityType::CustomUrl && !skipLink) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue