mirror of
https://github.com/XcodesOrg/XcodesApp.git
synced 2026-04-26 14:57:37 +00:00
Make XcodeListViewRow.appState a normal property
It doesn't need to be a DynamicProperty because it only invokes its methods.
This commit is contained in:
parent
70ca8c37bf
commit
70872f441a
2 changed files with 18 additions and 8 deletions
|
|
@ -32,7 +32,7 @@ struct XcodeListView: View {
|
||||||
|
|
||||||
var body: some View {
|
var body: some View {
|
||||||
List(visibleXcodes, selection: $selectedXcodeID) { xcode in
|
List(visibleXcodes, selection: $selectedXcodeID) { xcode in
|
||||||
XcodeListViewRow(xcode: xcode, selected: selectedXcodeID == xcode.id)
|
XcodeListViewRow(xcode: xcode, selected: selectedXcodeID == xcode.id, appState: appState)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,9 @@ import SwiftUI
|
||||||
import Version
|
import Version
|
||||||
|
|
||||||
struct XcodeListViewRow: View {
|
struct XcodeListViewRow: View {
|
||||||
@EnvironmentObject var appState: AppState
|
|
||||||
let xcode: Xcode
|
let xcode: Xcode
|
||||||
let selected: Bool
|
let selected: Bool
|
||||||
|
let appState: AppState
|
||||||
|
|
||||||
var body: some View {
|
var body: some View {
|
||||||
HStack {
|
HStack {
|
||||||
|
|
@ -112,29 +112,39 @@ struct XcodeListViewRow_Previews: PreviewProvider {
|
||||||
Group {
|
Group {
|
||||||
XcodeListViewRow(
|
XcodeListViewRow(
|
||||||
xcode: Xcode(version: Version("12.3.0")!, installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: true, icon: nil),
|
xcode: Xcode(version: Version("12.3.0")!, installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: true, icon: nil),
|
||||||
selected: false
|
selected: false,
|
||||||
|
appState: AppState()
|
||||||
)
|
)
|
||||||
|
|
||||||
XcodeListViewRow(
|
XcodeListViewRow(
|
||||||
xcode: Xcode(version: Version("12.2.0")!, installState: .notInstalled, selected: false, icon: nil),
|
xcode: Xcode(version: Version("12.2.0")!, installState: .notInstalled, selected: false, icon: nil),
|
||||||
selected: false
|
selected: false,
|
||||||
|
appState: AppState()
|
||||||
)
|
)
|
||||||
|
|
||||||
XcodeListViewRow(
|
XcodeListViewRow(
|
||||||
xcode: Xcode(version: Version("12.1.0")!, installState: .installing(.downloading(progress: configure(Progress(totalUnitCount: 100)) { $0.completedUnitCount = 40 })), selected: false, icon: nil),
|
xcode: Xcode(version: Version("12.1.0")!, installState: .installing(.downloading(progress: configure(Progress(totalUnitCount: 100)) { $0.completedUnitCount = 40 })), selected: false, icon: nil),
|
||||||
selected: false
|
selected: false,
|
||||||
|
appState: AppState()
|
||||||
)
|
)
|
||||||
|
|
||||||
XcodeListViewRow(
|
XcodeListViewRow(
|
||||||
xcode: Xcode(version: Version("12.0.0")!, installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: false, icon: nil),
|
xcode: Xcode(version: Version("12.0.0")!, installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: false, icon: nil),
|
||||||
selected: false
|
selected: false,
|
||||||
|
appState: AppState()
|
||||||
)
|
)
|
||||||
|
|
||||||
XcodeListViewRow(
|
XcodeListViewRow(
|
||||||
xcode: Xcode(version: Version("12.0.0+1234A")!, installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: false, icon: nil),
|
xcode: Xcode(version: Version("12.0.0+1234A")!, installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: false, icon: nil),
|
||||||
selected: false
|
selected: false,
|
||||||
|
appState: AppState()
|
||||||
|
)
|
||||||
|
|
||||||
|
XcodeListViewRow(
|
||||||
|
xcode: Xcode(version: Version("12.0.0+1234A")!, identicalBuilds: [Version("12.0.0-RC+1234A")!], installState: .installed(Path("/Applications/Xcode-12.3.0.app")!), selected: false, icon: nil),
|
||||||
|
selected: false,
|
||||||
|
appState: AppState()
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
.environmentObject(AppState())
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue