From 80105aee6210b63475894fb4137082a74b77e3fc Mon Sep 17 00:00:00 2001 From: Craig Raw Date: Thu, 10 Jul 2025 08:15:00 +0200 Subject: [PATCH] save webcam device unique id instead of name to config --- .../java/com/sparrowwallet/sparrow/control/QRScanDialog.java | 2 +- .../java/com/sparrowwallet/sparrow/control/WebcamService.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/sparrowwallet/sparrow/control/QRScanDialog.java b/src/main/java/com/sparrowwallet/sparrow/control/QRScanDialog.java index 608468c7..a2cceaac 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/QRScanDialog.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/QRScanDialog.java @@ -188,7 +188,7 @@ public class QRScanDialog extends Dialog { } }); webcamDeviceProperty.addListener((_, _, newValue) -> { - Config.get().setWebcamDevice(newValue.getName()); + Config.get().setWebcamDevice(newValue.getUniqueId()); if(!Objects.equals(webcamService.getDevice(), newValue)) { webcamService.cancel(); } diff --git a/src/main/java/com/sparrowwallet/sparrow/control/WebcamService.java b/src/main/java/com/sparrowwallet/sparrow/control/WebcamService.java index dea223a1..2f4fcd60 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/WebcamService.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/WebcamService.java @@ -144,6 +144,10 @@ public class WebcamService extends ScheduledService { } } else if(Config.get().getWebcamDevice() != null) { for(CaptureDevice webcam : availableDevices) { + if(webcam.getUniqueId().equals(Config.get().getWebcamDevice())) { + selectedDevice = webcam; + break; + } if(webcam.getName().equals(Config.get().getWebcamDevice())) { selectedDevice = webcam; break;