File tree Expand file tree Collapse file tree 3 files changed +14
-0
lines changed
CodeEdit/Features/NavigatorArea/ProjectNavigator/OutlineView Expand file tree Collapse file tree 3 files changed +14
-0
lines changed Original file line number Diff line number Diff line change 6
6
//
7
7
8
8
import AppKit
9
+ import SwiftUI
9
10
10
11
extension ProjectNavigatorMenu {
11
12
/// - Returns: the currently selected `CEWorkspaceFile` items in the outline view.
@@ -150,6 +151,9 @@ extension ProjectNavigatorMenu {
150
151
func trash( ) {
151
152
selectedItems ( ) . forEach { item in
152
153
workspace? . workspaceFileManager? . trash ( file: item)
154
+ withAnimation {
155
+ sender. editor? . closeTab ( file: item)
156
+ }
153
157
}
154
158
reloadData ( )
155
159
}
@@ -165,6 +169,13 @@ extension ProjectNavigatorMenu {
165
169
} else {
166
170
workspace? . workspaceFileManager? . batchDelete ( files: selectedItems)
167
171
}
172
+
173
+ withAnimation {
174
+ selectedItems. forEach { item in
175
+ sender. editor? . closeTab ( file: item)
176
+ }
177
+ }
178
+
168
179
reloadData ( )
169
180
}
170
181
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import Combine
12
12
struct ProjectNavigatorOutlineView : NSViewControllerRepresentable {
13
13
14
14
@EnvironmentObject var workspace : WorkspaceDocument
15
+ @EnvironmentObject var editorManager : EditorManager
15
16
16
17
@StateObject var prefs : Settings = . shared
17
18
@@ -21,6 +22,7 @@ struct ProjectNavigatorOutlineView: NSViewControllerRepresentable {
21
22
let controller = ProjectNavigatorViewController ( )
22
23
controller. workspace = workspace
23
24
controller. iconColor = prefs. preferences. general. fileIconStyle
25
+ controller. editor = editorManager. activeEditor
24
26
workspace. workspaceFileManager? . addObserver ( context. coordinator)
25
27
26
28
context. coordinator. controller = controller
Original file line number Diff line number Diff line change @@ -36,6 +36,7 @@ final class ProjectNavigatorViewController: NSViewController {
36
36
var expandedItems : Set < CEWorkspaceFile > = [ ]
37
37
38
38
weak var workspace : WorkspaceDocument ?
39
+ weak var editor : Editor ?
39
40
40
41
var iconColor : SettingsData . FileIconStyle = . color {
41
42
willSet {
You can’t perform that action at this time.
0 commit comments