I broke this in 409b6da160 making it not
possible to join a succeeding room. I decided to keep the old behavior
of not prompting you to join, because:
1. You are intentionally choosing to tap the button.
2. Room successions aren't random, a privileged user in the room is
creating it and there's already some implicit existing trust
(Also the current join confirmation dialog isn't useful enough yet to
make an actual informed decision anyway.)
37 lines
1.2 KiB
QML
37 lines
1.2 KiB
QML
// SPDX-FileCopyrightText: 2024 James Graham <james.h.graham@protonmail.com>
|
|
// SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
|
|
|
|
import QtQuick
|
|
import QtQuick.Layouts
|
|
|
|
import org.kde.kirigami as Kirigami
|
|
|
|
import org.kde.neochat
|
|
|
|
TimelineDelegate {
|
|
id: root
|
|
|
|
/**
|
|
* @brief The current room that user is viewing.
|
|
*/
|
|
required property NeoChatRoom room
|
|
|
|
width: parent?.width
|
|
rightPadding: NeoChatConfig.compactLayout && root.ListView.view.width >= Kirigami.Units.gridUnit * 20 ? Kirigami.Units.gridUnit * 2 + Kirigami.Units.largeSpacing : Kirigami.Units.largeSpacing
|
|
|
|
alwaysFillWidth: NeoChatConfig.compactLayout
|
|
|
|
contentItem: Kirigami.InlineMessage {
|
|
visible: true
|
|
text: i18n("This room has been replaced.")
|
|
type: Kirigami.MessageType.Information
|
|
actions: Kirigami.Action {
|
|
text: i18n("See new room…")
|
|
|
|
// We want to skip the join confirmation check here,
|
|
// Not only because the user is intentionally tapping this button but the room is trusted to be the successor already
|
|
onTriggered: RoomManager.resolveResource(root.room.successorId, "join_confirmed")
|
|
}
|
|
}
|
|
}
|