diff --git a/DynamicIsland/components/Settings/SettingsView.swift b/DynamicIsland/components/Settings/SettingsView.swift index dfb234c..2c18b69 100644 --- a/DynamicIsland/components/Settings/SettingsView.swift +++ b/DynamicIsland/components/Settings/SettingsView.swift @@ -3833,7 +3833,9 @@ struct LiveActivitiesSettings: View { struct Appearance: View { @ObservedObject var coordinator = DynamicIslandViewCoordinator.shared + @ObservedObject var webcamManager = WebcamManager.shared @Default(.mirrorShape) var mirrorShape + @Default(.selectedCameraID) var selectedCameraID @Default(.sliderColor) var sliderColor @Default(.useMusicVisualizer) var useMusicVisualizer @Default(.customVisualizers) var customVisualizers @@ -4240,6 +4242,21 @@ struct Appearance: View { .tag(MirrorShapeEnum.rectangle) } .settingsHighlight(id: highlightID("Mirror shape")) + if webcamManager.cameraAvailable { + Picker("Mirror Camera", selection: $selectedCameraID) { + ForEach(webcamManager.availableCameras, id: \.uniqueID) { device in + Text(device.localizedName) + .tag(device.uniqueID) + } + } + .onChange(of: selectedCameraID) { _, _ in + if Defaults[.showMirror] { + webcamManager.stopSession() + webcamManager.startSession() + } + } + .settingsHighlight(id: highlightID("Mirror Camera")) + } Defaults.Toggle(key: .showNotHumanFace) { Text("Idle Animation") }