// Copyright Mirage authors & contributors // SPDX-License-Identifier: LGPL-3.0-or-later import QtQuick 2.12 import QtQuick.Layouts 1.12 import "../Base" import "../Base/Buttons" HFlickableColumnPopup { id: root property string userId property string targetUserId property string targetDisplayName property bool ignore function apply() { py.callClientCoro(userId, "ignore_user", [targetUserId, ignore]) root.close() } page.footer: AutoDirectionLayout { ApplyButton { id: ignoreButton icon.name: root.ignore ? "ignore-user" : "stop-ignore-user" text: root.ignore ? qsTr("Ignore") : qsTr("Stop ignoring") onClicked: root.apply() } CancelButton { onClicked: root.close() } } onOpened: ignoreButton.forceActiveFocus() SummaryLabel { readonly property string userText: utils.coloredNameHtml(root.targetDisplayName, root.targetUserId) textFormat: Text.StyledText text: root.ignore ? qsTr("Ignore %1?").arg(userText) : qsTr("Stop ignoring %1?").arg(userText) } DetailsLabel { text: root.ignore ? qsTr( "You will no longer see their messages and invites.\n\n" + "Their name, avatar and online status will also be hidden " + "in room member lists." ) : qsTr( "You will receive their messages and room invites again.\n\n" + "Their names, avatar and online status will also become " + "visible in room member lists.\n\n" + "After restarting %1, any message or room invite they had " + "sent while being ignored will become visible." ).arg(Qt.application.displayName) } }