Pārlūkot izejas kodu

project: fix iOS TCI build

osy 3 gadi atpakaļ
vecāks
revīzija
1921a8b43d

+ 2 - 6
Platform/iOS/VMSessionState.swift

@@ -43,12 +43,6 @@ import SwiftUI
     @Published var allUsbDevices: [CSUSBDevice] = []
     @Published var allUsbDevices: [CSUSBDevice] = []
     
     
     @Published var connectedUsbDevices: [CSUSBDevice] = []
     @Published var connectedUsbDevices: [CSUSBDevice] = []
-    #else
-    let mostRecentConnectedDevice: Any? = nil
-    
-    let allUsbDevices: [Any] = []
-    
-    let connectedUsbDevices: [Any] = []
     #endif
     #endif
     
     
     @Published var isUsbBusy: Bool = false
     @Published var isUsbBusy: Bool = false
@@ -126,7 +120,9 @@ extension VMSessionState: UTMVirtualMachineDelegate {
         Task { @MainActor in
         Task { @MainActor in
             vmState = state
             vmState = state
             if state == .vmStopped {
             if state == .vmStopped {
+                #if !WITH_QEMU_TCI
                 clearDevices()
                 clearDevices()
+                #endif
             }
             }
         }
         }
     }
     }

+ 2 - 0
Platform/iOS/VMToolbarView.swift

@@ -110,10 +110,12 @@ struct VMToolbarView: View {
                 } label: {
                 } label: {
                     Label("Zoom", systemImage: state.isViewportChanged ? "arrow.down.right.and.arrow.up.left" : "arrow.up.left.and.arrow.down.right")
                     Label("Zoom", systemImage: state.isViewportChanged ? "arrow.down.right.and.arrow.up.left" : "arrow.up.left.and.arrow.down.right")
                 }.offset(offset(for: 5))
                 }.offset(offset(for: 5))
+                #if !WITH_QEMU_TCI
                 if session.vm.hasUsbRedirection {
                 if session.vm.hasUsbRedirection {
                     VMToolbarUSBMenuView()
                     VMToolbarUSBMenuView()
                     .offset(offset(for: 4))
                     .offset(offset(for: 4))
                 }
                 }
+                #endif
                 VMToolbarDriveMenuView()
                 VMToolbarDriveMenuView()
                 .offset(offset(for: 3))
                 .offset(offset(for: 3))
                 VMToolbarDisplayMenuView(state: $state)
                 VMToolbarDisplayMenuView(state: $state)

+ 2 - 2
Platform/iOS/VMWindowState.swift

@@ -86,7 +86,9 @@ extension VMWindowState {
             case .powerDown: return 0
             case .powerDown: return 0
             case .terminateApp: return 1
             case .terminateApp: return 1
             case .restart: return 2
             case .restart: return 2
+            #if !WITH_QEMU_TCI
             case .deviceConnected(_): return 3
             case .deviceConnected(_): return 3
+            #endif
             case .nonfatalError(_): return 4
             case .nonfatalError(_): return 4
             case .fatalError(_): return 5
             case .fatalError(_): return 5
             }
             }
@@ -97,8 +99,6 @@ extension VMWindowState {
         case restart
         case restart
         #if !WITH_QEMU_TCI
         #if !WITH_QEMU_TCI
         case deviceConnected(CSUSBDevice)
         case deviceConnected(CSUSBDevice)
-        #else
-        case deviceConnected(Any?)
         #endif
         #endif
         case nonfatalError(String)
         case nonfatalError(String)
         case fatalError(String)
         case fatalError(String)

+ 4 - 2
Platform/iOS/VMWindowView.swift

@@ -97,15 +97,15 @@ struct VMWindowView: View {
                 return Alert(title: Text("Are you sure you want to reset this VM? Any unsaved changes will be lost."), primaryButton: .cancel(Text("No")), secondaryButton: .destructive(Text("Yes")) {
                 return Alert(title: Text("Are you sure you want to reset this VM? Any unsaved changes will be lost."), primaryButton: .cancel(Text("No")), secondaryButton: .destructive(Text("Yes")) {
                     session.reset()
                     session.reset()
                 })
                 })
+            #if !WITH_QEMU_TCI
             case .deviceConnected(let device):
             case .deviceConnected(let device):
                 return Alert(title: Text("Would you like to connect '\(device.name ?? device.description)' to this virtual machine?"), primaryButton: .cancel(Text("No")) {
                 return Alert(title: Text("Would you like to connect '\(device.name ?? device.description)' to this virtual machine?"), primaryButton: .cancel(Text("No")) {
                     session.mostRecentConnectedDevice = nil
                     session.mostRecentConnectedDevice = nil
                 }, secondaryButton: .default(Text("Yes")) {
                 }, secondaryButton: .default(Text("Yes")) {
                     session.mostRecentConnectedDevice = nil
                     session.mostRecentConnectedDevice = nil
-                    #if !WITH_QEMU_TCI
                     session.connectDevice(device)
                     session.connectDevice(device)
-                    #endif
                 })
                 })
+            #endif
             case .nonfatalError(let message), .fatalError(let message):
             case .nonfatalError(let message), .fatalError(let message):
                 return Alert(title: Text(message), dismissButton: .cancel(Text("OK")) {
                 return Alert(title: Text(message), dismissButton: .cancel(Text("OK")) {
                     if case .fatalError(_) = type {
                     if case .fatalError(_) = type {
@@ -128,11 +128,13 @@ struct VMWindowView: View {
                 session.windowDeviceMap[state.id] = newDevice
                 session.windowDeviceMap[state.id] = newDevice
             }
             }
         }
         }
+        #if !WITH_QEMU_TCI
         .onChange(of: session.mostRecentConnectedDevice) { newValue in
         .onChange(of: session.mostRecentConnectedDevice) { newValue in
             if session.activeWindow == state.id, let device = newValue {
             if session.activeWindow == state.id, let device = newValue {
                 state.alert = .deviceConnected(device)
                 state.alert = .deviceConnected(device)
             }
             }
         }
         }
+        #endif
         .onChange(of: session.nonfatalError) { newValue in
         .onChange(of: session.nonfatalError) { newValue in
             if session.activeWindow == state.id, let message = newValue {
             if session.activeWindow == state.id, let message = newValue {
                 state.alert = .nonfatalError(message)
                 state.alert = .nonfatalError(message)

+ 2 - 2
UTM.xcodeproj/project.pbxproj

@@ -91,7 +91,6 @@
 		841E58D52893D01A00137A20 /* UTMApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841E58D02893AF5400137A20 /* UTMApp.swift */; };
 		841E58D52893D01A00137A20 /* UTMApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841E58D02893AF5400137A20 /* UTMApp.swift */; };
 		841E58D62893D01B00137A20 /* UTMApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841E58D02893AF5400137A20 /* UTMApp.swift */; };
 		841E58D62893D01B00137A20 /* UTMApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 841E58D02893AF5400137A20 /* UTMApp.swift */; };
 		84258C42288F806400C66366 /* VMToolbarUSBMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84258C41288F806400C66366 /* VMToolbarUSBMenuView.swift */; };
 		84258C42288F806400C66366 /* VMToolbarUSBMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84258C41288F806400C66366 /* VMToolbarUSBMenuView.swift */; };
-		84258C43288F806400C66366 /* VMToolbarUSBMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84258C41288F806400C66366 /* VMToolbarUSBMenuView.swift */; };
 		843BF82428441EAD0029D60D /* UTMQemuConfigurationDisplay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843BF82328441EAD0029D60D /* UTMQemuConfigurationDisplay.swift */; };
 		843BF82428441EAD0029D60D /* UTMQemuConfigurationDisplay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843BF82328441EAD0029D60D /* UTMQemuConfigurationDisplay.swift */; };
 		843BF82528441EAD0029D60D /* UTMQemuConfigurationDisplay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843BF82328441EAD0029D60D /* UTMQemuConfigurationDisplay.swift */; };
 		843BF82528441EAD0029D60D /* UTMQemuConfigurationDisplay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843BF82328441EAD0029D60D /* UTMQemuConfigurationDisplay.swift */; };
 		843BF82628441EAD0029D60D /* UTMQemuConfigurationDisplay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843BF82328441EAD0029D60D /* UTMQemuConfigurationDisplay.swift */; };
 		843BF82628441EAD0029D60D /* UTMQemuConfigurationDisplay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 843BF82328441EAD0029D60D /* UTMQemuConfigurationDisplay.swift */; };
@@ -199,6 +198,7 @@
 		84937F0028960789003148F4 /* zstd.1.framework in Embed Libraries */ = {isa = PBXBuildFile; fileRef = 84937EFE28960789003148F4 /* zstd.1.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
 		84937F0028960789003148F4 /* zstd.1.framework in Embed Libraries */ = {isa = PBXBuildFile; fileRef = 84937EFE28960789003148F4 /* zstd.1.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
 		84937F01289607E5003148F4 /* zstd.1.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84937EFE28960789003148F4 /* zstd.1.framework */; };
 		84937F01289607E5003148F4 /* zstd.1.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84937EFE28960789003148F4 /* zstd.1.framework */; };
 		84937F02289607E6003148F4 /* zstd.1.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84937EFE28960789003148F4 /* zstd.1.framework */; };
 		84937F02289607E6003148F4 /* zstd.1.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84937EFE28960789003148F4 /* zstd.1.framework */; };
+		84937F032897451C003148F4 /* VMToolbarDriveMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84CF5DF4288F558400D01721 /* VMToolbarDriveMenuView.swift */; };
 		84A381AA268CB30C0048EE4D /* VMDrivesSettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A381A9268CB30C0048EE4D /* VMDrivesSettingsView.swift */; };
 		84A381AA268CB30C0048EE4D /* VMDrivesSettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A381A9268CB30C0048EE4D /* VMDrivesSettingsView.swift */; };
 		84B36D1E27B3264600C22685 /* CocoaSpice in Frameworks */ = {isa = PBXBuildFile; productRef = 84B36D1D27B3264600C22685 /* CocoaSpice */; };
 		84B36D1E27B3264600C22685 /* CocoaSpice in Frameworks */ = {isa = PBXBuildFile; productRef = 84B36D1D27B3264600C22685 /* CocoaSpice */; };
 		84B36D2027B3264E00C22685 /* CocoaSpiceNoUsb in Frameworks */ = {isa = PBXBuildFile; productRef = 84B36D1F27B3264E00C22685 /* CocoaSpiceNoUsb */; };
 		84B36D2027B3264E00C22685 /* CocoaSpiceNoUsb in Frameworks */ = {isa = PBXBuildFile; productRef = 84B36D1F27B3264E00C22685 /* CocoaSpiceNoUsb */; };
@@ -4105,6 +4105,7 @@
 				CEA45E48263519B5002FA97D /* qapi-visit-misc.c in Sources */,
 				CEA45E48263519B5002FA97D /* qapi-visit-misc.c in Sources */,
 				CEA45E4A263519B5002FA97D /* qapi-commands-block.c in Sources */,
 				CEA45E4A263519B5002FA97D /* qapi-commands-block.c in Sources */,
 				CEA45E4B263519B5002FA97D /* BusyOverlay.swift in Sources */,
 				CEA45E4B263519B5002FA97D /* BusyOverlay.swift in Sources */,
+				84937F032897451C003148F4 /* VMToolbarDriveMenuView.swift in Sources */,
 				CEA45E4C263519B5002FA97D /* qapi-visit-machine-target.c in Sources */,
 				CEA45E4C263519B5002FA97D /* qapi-visit-machine-target.c in Sources */,
 				CEA45E4D263519B5002FA97D /* qapi-visit-qdev.c in Sources */,
 				CEA45E4D263519B5002FA97D /* qapi-visit-qdev.c in Sources */,
 				CEA45E4E263519B5002FA97D /* VMConfigDisplayView.swift in Sources */,
 				CEA45E4E263519B5002FA97D /* VMConfigDisplayView.swift in Sources */,
@@ -4275,7 +4276,6 @@
 				CEA45EE8263519B5002FA97D /* VMDisplayMetalViewController+Keyboard.m in Sources */,
 				CEA45EE8263519B5002FA97D /* VMDisplayMetalViewController+Keyboard.m in Sources */,
 				CEA45EE9263519B5002FA97D /* qapi-builtin-types.c in Sources */,
 				CEA45EE9263519B5002FA97D /* qapi-builtin-types.c in Sources */,
 				CEA45EEA263519B5002FA97D /* UTMExtensions.swift in Sources */,
 				CEA45EEA263519B5002FA97D /* UTMExtensions.swift in Sources */,
-				84258C43288F806400C66366 /* VMToolbarUSBMenuView.swift in Sources */,
 				843BF82928441FAF0029D60D /* QEMUConstantGenerated.swift in Sources */,
 				843BF82928441FAF0029D60D /* QEMUConstantGenerated.swift in Sources */,
 				CEA45EEC263519B5002FA97D /* UTMData.swift in Sources */,
 				CEA45EEC263519B5002FA97D /* UTMData.swift in Sources */,
 				CEA45EED263519B5002FA97D /* qapi-events-migration.c in Sources */,
 				CEA45EED263519B5002FA97D /* qapi-events-migration.c in Sources */,