Remove link confirmation dialog

Fix #347
Fix #348
This commit is contained in:
Carl Schwan
2021-05-07 01:55:08 +02:00
parent 471b525151
commit 1e7d3046aa
4 changed files with 3 additions and 56 deletions

View File

@@ -126,12 +126,6 @@ Kirigami.ApplicationWindow {
showPassiveNotification(i18n("Warning: %1", message));
}
}
function onOpenLink(url) {
openLinkConfirmationComponent.createObject(QQC2.ApplicationWindow.overlay, {
url: url,
}).open();
}
}
function pushReplaceLayer(page, args) {
@@ -376,38 +370,4 @@ Kirigami.ApplicationWindow {
}
}
}
Component {
id: openLinkConfirmationComponent
Kirigami.OverlaySheet {
id: openLinkConfirmation
required property var url;
header: Kirigami.Heading {
text: i18n("Confirm opening a link")
}
parent: QQC2.ApplicationWindow.overlay
contentItem: ColumnLayout {
QQC2.Label {
text: i18n("Do you want to open the link to %1?", `<a href='${url}'>${url}</a>`)
wrapMode: Text.WordWrap
}
QQC2.CheckBox {
id: dontAskAgain
text: i18n("Don't ask again")
}
}
footer: QQC2.DialogButtonBox {
standardButtons: QQC2.DialogButtonBox.Ok | QQC2.DialogButtonBox.Cancel
onAccepted: {
Config.confirmLinksAction = !dontAskAgain.checked;
Config.save();
Qt.openUrlExternally(url);
openLinkConfirmation.close();
}
onRejected: openLinkConfirmation.close();
}
}
}
}

View File

@@ -18,10 +18,6 @@
<label>Show notifications</label>
<default>true</default>
</entry>
<entry name="ConfirmLinksAction" type="bool">
<label>Confirm link before opening them</label>
<default>true</default>
</entry>
<entry name="MergeRoomList" type="bool">
<label>Merge Room Lists</label>
<default>false</default>

View File

@@ -164,15 +164,9 @@ void RoomManager::joinRoom(Quotient::Connection *account,
bool RoomManager::visitNonMatrix(const QUrl &url)
{
// Return true if the user cancels, treating it as an alternative normal
// flow (rather than an abnormal flow when the navigation itself fails).
if (NeoChatConfig::self()->confirmLinksAction()) {
Q_EMIT openLink(url);
} else {
if (!QDesktopServices::openUrl(url)) {
Q_EMIT warning(i18n("No application for the link"),
i18n("Your operating system could not find an application for the link."));
}
if (!QDesktopServices::openUrl(url)) {
Q_EMIT warning(i18n("No application for the link"),
i18n("Your operating system could not find an application for the link."));
}
return true;
}

View File

@@ -95,9 +95,6 @@ Q_SIGNALS:
/// Displays warning to the user.
void warning(const QString &title, const QString &message);
/// Ask user to open link and then open it.
void openLink(const QUrl &url);
private:
NeoChatRoom *m_currentRoom;
NeoChatRoom *m_lastCurrentRoom;