diff --git a/CodeEdit.xcworkspace/xcshareddata/swiftpm/Package.resolved b/CodeEdit.xcworkspace/xcshareddata/swiftpm/Package.resolved index e2e51f2768..cff01ee8a0 100644 --- a/CodeEdit.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/CodeEdit.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -63,15 +63,6 @@ "revision": "70a3af884c24dff9f1beeda04e889b5591f04f3c", "version": "1.0.7" } - }, - { - "package": "Introspect", - "repositoryURL": "https://github.com/siteline/SwiftUI-Introspect", - "state": { - "branch": null, - "revision": "f2616860a41f9d9932da412a8978fec79c06fe24", - "version": "0.1.4" - } } ] }, diff --git a/CodeEdit/Info.plist b/CodeEdit/Info.plist index 3d4127e5f8..c54a60c830 100644 --- a/CodeEdit/Info.plist +++ b/CodeEdit/Info.plist @@ -45,6 +45,6 @@ GitHash - 34d4572419ade3087bf6531df560021b18d57209 + 439a479db852314b49ca26938203f792cd03c83f diff --git a/CodeEditModules/Modules/AppPreferences/src/Sections/ThemePreferences/ThemePreferencesView.swift b/CodeEditModules/Modules/AppPreferences/src/Sections/ThemePreferences/ThemePreferencesView.swift index edfdd13488..326131e5ba 100644 --- a/CodeEditModules/Modules/AppPreferences/src/Sections/ThemePreferences/ThemePreferencesView.swift +++ b/CodeEditModules/Modules/AppPreferences/src/Sections/ThemePreferences/ThemePreferencesView.swift @@ -8,6 +8,7 @@ import FontPicker import SwiftUI import Preferences +import Design /// A view that implements the `Theme` preference section public struct ThemePreferencesView: View { diff --git a/CodeEditModules/Modules/Design/src/Extensions/List+RemoveBackground.swift b/CodeEditModules/Modules/Design/src/Extensions/List+RemoveBackground.swift deleted file mode 100644 index c12d64d113..0000000000 --- a/CodeEditModules/Modules/Design/src/Extensions/List+RemoveBackground.swift +++ /dev/null @@ -1,21 +0,0 @@ -// -// List+RemoveBackground.swift -// -// -// Created by Marco Carnevali on 05/04/22. -// - -import Introspect -import SwiftUI - -public extension List { - /// List on macOS uses an opaque background with no option for - /// removing/changing it. listRowBackground() doesn't work either. - /// This workaround works because List is backed by NSTableView. - func removeBackground() -> some View { - return introspectTableView { tableView in - tableView.backgroundColor = .clear - tableView.enclosingScrollView!.drawsBackground = false - } - } -} diff --git a/CodeEditModules/Modules/AppPreferences/src/HelperViews/SegmentedControl.swift b/CodeEditModules/Modules/Design/src/SegmentedControl.swift similarity index 71% rename from CodeEditModules/Modules/AppPreferences/src/HelperViews/SegmentedControl.swift rename to CodeEditModules/Modules/Design/src/SegmentedControl.swift index f37124ea35..0a5c83cacb 100644 --- a/CodeEditModules/Modules/AppPreferences/src/HelperViews/SegmentedControl.swift +++ b/CodeEditModules/Modules/Design/src/SegmentedControl.swift @@ -7,9 +7,14 @@ import SwiftUI -struct SegmentedControl: View { +/// A view that creates a segmented control from an array of text labels. +public struct SegmentedControl: View { - init(_ selection: Binding, options: [String]) { + /// A view that creates a segmented control from an array of text labels. + /// - Parameters: + /// - selection: The index of the current selected item. + /// - options: the options to display as an array of strings. + public init(_ selection: Binding, options: [String]) { self._preselectedIndex = selection self.options = options } @@ -17,7 +22,7 @@ struct SegmentedControl: View { @Binding var preselectedIndex: Int var options: [String] let color = Color.accentColor - var body: some View { + public var body: some View { HStack(spacing: 0) { ForEach(options.indices, id: \.self) { index in Text(options[index]) diff --git a/CodeEditModules/Modules/QuickOpen/src/QuickOpenView.swift b/CodeEditModules/Modules/QuickOpen/src/QuickOpenView.swift index 79efbaaf83..b7c1da6f62 100644 --- a/CodeEditModules/Modules/QuickOpen/src/QuickOpenView.swift +++ b/CodeEditModules/Modules/QuickOpen/src/QuickOpenView.swift @@ -65,8 +65,7 @@ public struct QuickOpenView: View { self.selectedItem = file } } - .removeBackground() - .frame(minWidth: 250, maxWidth: 250) + .frame(minWidth: 250, maxWidth: 250) if state.openQuicklyFiles.isEmpty { EmptyView() } else { diff --git a/CodeEditModules/Modules/WelcomeModule/src/RecentProjectsView.swift b/CodeEditModules/Modules/WelcomeModule/src/RecentProjectsView.swift index 54f6428b5f..b8fceb856c 100644 --- a/CodeEditModules/Modules/WelcomeModule/src/RecentProjectsView.swift +++ b/CodeEditModules/Modules/WelcomeModule/src/RecentProjectsView.swift @@ -136,7 +136,8 @@ public struct RecentProjectsView: View { .buttonStyle(.borderless) .keyboardShortcut(.defaultAction) } - }.removeBackground() + } + .listStyle(.sidebar) } else { emptyView } diff --git a/CodeEditModules/Package.swift b/CodeEditModules/Package.swift index f1b5423c77..0dff751446 100644 --- a/CodeEditModules/Package.swift +++ b/CodeEditModules/Package.swift @@ -99,11 +99,6 @@ let package = Package( url: "https://github.com/sindresorhus/Preferences.git", from: "2.5.0" ), - .package( - name: "Introspect", - url: "https://github.com/siteline/SwiftUI-Introspect", - from: "0.1.4" - ), .package( name: "CodeEditKit", url: "https://github.com/CodeEditApp/CodeEditKit", @@ -221,6 +216,7 @@ let package = Package( name: "AppPreferences", dependencies: [ "Preferences", + "Design", "FontPicker", ], path: "Modules/AppPreferences/src" @@ -244,9 +240,6 @@ let package = Package( ), .target( name: "Design", - dependencies: [ - "Introspect", - ], path: "Modules/Design/src" ), .target(