@@ -77,30 +77,16 @@ final class ProjectNavigatorViewController: NSViewController {
7777 self . view = scrollView
7878
7979 self . outlineView = ProjectNavigatorNSOutlineView ( )
80- self . outlineView. style = . inset
81- self . outlineView. dataSource = self
82- self . outlineView. delegate = self
83- self . outlineView. autosaveExpandedItems = true
84- self . outlineView. autosaveName = workspace? . workspaceFileManager? . folderUrl. path ?? " "
85- self . outlineView. headerView = nil
86- self . outlineView. menu = ProjectNavigatorMenu ( self )
87- self . outlineView. menu? . delegate = self
88- self . outlineView. doubleAction = #selector( onItemDoubleClicked)
89- self . outlineView. allowsMultipleSelection = true
90-
91- self . outlineView. setAccessibilityIdentifier ( " ProjectNavigator " )
92- self . outlineView. setAccessibilityLabel ( " Project Navigator " )
93-
94- let column = NSTableColumn ( identifier: . init( rawValue: " Cell " ) )
95- column. title = " Cell "
96- outlineView. addTableColumn ( column)
97-
98- outlineView. setDraggingSourceOperationMask ( . move, forLocal: false )
99- outlineView. registerForDraggedTypes ( [ . fileURL] )
80+ configureOutlineView ( )
10081
10182 scrollView. documentView = outlineView
10283 scrollView. contentView. automaticallyAdjustsContentInsets = false
103- scrollView. contentView. contentInsets = . init( top: 10 , left: 0 , bottom: 0 , right: 0 )
84+ if #available( macOS 26 , * ) {
85+ scrollView. clipsToBounds = false
86+ scrollView. contentView. clipsToBounds = false
87+ } else {
88+ scrollView. contentView. contentInsets = . init( top: 10 , left: 0 , bottom: 0 , right: 0 )
89+ }
10490 scrollView. scrollerStyle = . overlay
10591 scrollView. hasVerticalScroller = true
10692 scrollView. hasHorizontalScroller = false
@@ -130,6 +116,32 @@ final class ProjectNavigatorViewController: NSViewController {
130116 ] )
131117 }
132118
119+ private func configureOutlineView( ) {
120+ if #available( macOS 26 , * ) {
121+ self . outlineView. style = . inset
122+ self . outlineView. clipsToBounds = false
123+ }
124+ self . outlineView. dataSource = self
125+ self . outlineView. delegate = self
126+ self . outlineView. autosaveExpandedItems = true
127+ self . outlineView. autosaveName = workspace? . workspaceFileManager? . folderUrl. path ?? " "
128+ self . outlineView. headerView = nil
129+ self . outlineView. menu = ProjectNavigatorMenu ( self )
130+ self . outlineView. menu? . delegate = self
131+ self . outlineView. doubleAction = #selector( onItemDoubleClicked)
132+ self . outlineView. allowsMultipleSelection = true
133+
134+ self . outlineView. setAccessibilityIdentifier ( " ProjectNavigator " )
135+ self . outlineView. setAccessibilityLabel ( " Project Navigator " )
136+
137+ let column = NSTableColumn ( identifier: . init( rawValue: " Cell " ) )
138+ column. title = " Cell "
139+ outlineView. addTableColumn ( column)
140+
141+ outlineView. setDraggingSourceOperationMask ( . move, forLocal: false )
142+ outlineView. registerForDraggedTypes ( [ . fileURL] )
143+ }
144+
133145 init ( ) {
134146 super. init ( nibName: nil , bundle: nil )
135147 }
0 commit comments