Skip to content

Commit a1758b5

Browse files
committed
Carry the Action on Its Menu Item
1 parent 9a3bda2 commit a1758b5

2 files changed

Lines changed: 13 additions & 6 deletions

File tree

Package.resolved

Lines changed: 10 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Sources/Textual/Internal/TextInteraction/AppKit/NSTextInteractionView.swift

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@
227227
for action in selectionActions {
228228
let item = NSMenuItem(title: action.title, action: #selector(performSelectionAction(_:)), keyEquivalent: "")
229229
item.target = self
230-
item.representedObject = action.id
230+
item.representedObject = action
231231
if let systemImage = action.systemImage {
232232
item.image = NSImage(systemSymbolName: systemImage, accessibilityDescription: nil)
233233
}
@@ -292,10 +292,8 @@
292292

293293
@objc private func performSelectionAction(_ sender: NSMenuItem) {
294294

295-
guard let selectedRange = model.selectedRange,
296-
297-
let action = selectionActions.first(where: { $0.id == sender.representedObject as? String })
298-
295+
guard let selectedRange = model.selectedRange, !selectedRange.isCollapsed,
296+
let action = sender.representedObject as? TextSelectionAction
299297
else {
300298

301299
return

0 commit comments

Comments
 (0)