pragma ComponentBehavior: Bound import QtQuick import QtQuick.Controls as QQC2 import org.kde.plasma.extras as PlasmaExtras import org.kde.kirigami as Kirigami /* * One share row in the popup: title = share name, primary button toggles * mount/unmount, context menu opens the mounted folder. Purely presentational — * it emits signals; main.qml owns the mount logic. */ PlasmaExtras.ExpandableListItem { id: item property string shareName: "" property string hostLabel: "" property string comment: "" property string mountpoint: "" property bool mounted: false property bool busy: false signal mountToggled() signal openRequested() icon: "folder-network" iconEmblem: mounted ? "emblem-mounted" : "" title: shareName subtitle: { if (busy) return mounted ? i18n("Unmounting…") : i18n("Mounting…"); if (mounted) return mountpoint; if (comment.length > 0) return comment; return i18n("Not mounted"); } isBusy: busy enabled: !busy defaultActionButtonAction: QQC2.Action { text: item.mounted ? i18n("Unmount") : i18n("Mount") icon.name: item.mounted ? "media-eject" : "drive-harddisk" onTriggered: item.mountToggled() } contextualActions: [ QQC2.Action { text: i18n("Open in File Manager") icon.name: "document-open-folder" enabled: item.mounted onTriggered: item.openRequested() } ] }