From 0e461a382257979037e8927e5f6b468635b0a7fe Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Mon, 13 Apr 2026 09:57:23 -0500 Subject: feat: add power user actions Implements: https://todo.sr.ht/~ccleberg/hutch/52 Implements: https://todo.sr.ht/~ccleberg/hutch/53 Implements: https://todo.sr.ht/~ccleberg/hutch/54 --- Hutch/Views/Builds/BuildListView.swift | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'Hutch/Views/Builds/BuildListView.swift') diff --git a/Hutch/Views/Builds/BuildListView.swift b/Hutch/Views/Builds/BuildListView.swift index d99d53a..aa98066 100644 --- a/Hutch/Views/Builds/BuildListView.swift +++ b/Hutch/Views/Builds/BuildListView.swift @@ -136,6 +136,29 @@ struct BuildListView: View { NavigationLink(value: job) { BuildRowView(job: job) } + .contextMenu { + Button { + appState.copyToPasteboard(String(job.id), label: "job ID") + } label: { + Label("Copy Job ID", systemImage: "doc.on.doc") + } + + if let note = job.note, !note.isEmpty { + Button { + appState.copyToPasteboard(note, label: "build note") + } label: { + Label("Copy Note", systemImage: "text.alignleft") + } + } + + if !job.tags.isEmpty { + Button { + appState.copyToPasteboard(job.tags.joined(separator: ", "), label: "build tags") + } label: { + Label("Copy Tags", systemImage: "tag") + } + } + } .swipeActions(edge: .leading, allowsFullSwipe: true) { if swipeActionsEnabled, job.status.isCancellable { Button { -- cgit v1.2.3