save webcam device unique id instead of name to config

This commit is contained in:
Craig Raw 2025-07-10 08:15:00 +02:00
parent 3c5fa58a16
commit 80105aee62
2 changed files with 5 additions and 1 deletions

View file

@ -188,7 +188,7 @@ public class QRScanDialog extends Dialog<QRScanDialog.Result> {
} }
}); });
webcamDeviceProperty.addListener((_, _, newValue) -> { webcamDeviceProperty.addListener((_, _, newValue) -> {
Config.get().setWebcamDevice(newValue.getName()); Config.get().setWebcamDevice(newValue.getUniqueId());
if(!Objects.equals(webcamService.getDevice(), newValue)) { if(!Objects.equals(webcamService.getDevice(), newValue)) {
webcamService.cancel(); webcamService.cancel();
} }

View file

@ -144,6 +144,10 @@ public class WebcamService extends ScheduledService<Image> {
} }
} else if(Config.get().getWebcamDevice() != null) { } else if(Config.get().getWebcamDevice() != null) {
for(CaptureDevice webcam : availableDevices) { for(CaptureDevice webcam : availableDevices) {
if(webcam.getUniqueId().equals(Config.get().getWebcamDevice())) {
selectedDevice = webcam;
break;
}
if(webcam.getName().equals(Config.get().getWebcamDevice())) { if(webcam.getName().equals(Config.get().getWebcamDevice())) {
selectedDevice = webcam; selectedDevice = webcam;
break; break;