Skip to content
This repository was archived by the owner on Sep 12, 2024. It is now read-only.

Commit f1e46d5

Browse files
committed
Update SnipItemView.swift
1 parent 2cb35ba commit f1e46d5

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

Snip/Components/Sidebar/SnipItemView.swift

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ struct SnipItemView<Content: View>: View {
2121

2222
@State private var isExpanded: Bool = false
2323
@State private var isEditingName = false
24+
@State var hasTriggered: Bool = false
2425

2526
let content: () -> Content?
2627

@@ -72,6 +73,13 @@ struct SnipItemView<Content: View>: View {
7273
.frame(maxWidth: .infinity, alignment: .leading)
7374
.padding(EdgeInsets(top: 4, leading: 0, bottom: 4, trailing: 0))
7475
.background(themePrimaryColor)
76+
.introspectTextField { textField in
77+
if self.hasTriggered == false {
78+
textField.becomeFirstResponder()
79+
self.hasTriggered = true
80+
}
81+
}
82+
.onAppear(perform: {self.hasTriggered = false})
7583
.onHover { inside in
7684
if inside {
7785
NSCursor.iBeam.push()
@@ -168,11 +176,24 @@ struct SnipItemView<Content: View>: View {
168176
viewModel.onTrigger(.rename(id: viewModel.snipItem.id, name: viewModel.snipItem.name))
169177
}
170178
)
171-
.disabled(isEditingName == false)
172179
.foregroundColor(appState.selectedSnippetId == viewModel.snipItem.id && appState.selectedSnippetFilter.case == viewModel.activeFilter.case ? .white : .text)
173180
.frame(maxWidth: .infinity, alignment: .leading)
174181
.padding(.leading, 4)
175182
.background(themePrimaryColor)
183+
.introspectTextField { textField in
184+
if self.hasTriggered == false {
185+
textField.becomeFirstResponder()
186+
self.hasTriggered = true
187+
}
188+
}
189+
.onAppear(perform: {self.hasTriggered = false})
190+
.onHover { inside in
191+
if inside {
192+
NSCursor.iBeam.push()
193+
} else {
194+
NSCursor.pop()
195+
}
196+
}
176197
}
177198
else {
178199
Text(self.viewModel.snipItem.name)

0 commit comments

Comments
 (0)