private async Task StopQRTrackingAsyncImpl(Task previousTask) { await previousTask.IgnoreCancellation(); if (qrTracker != null && IsTrackerRunning) { qrTracker.Stop(); IsTrackerRunning = false; StartResult = QRTrackerStartResult.DeviceNotConnected; DebugLog("QR tracker was stopped."); lock (qrCodesList) { qrCodesList.Clear(); DebugLog("QR Code list was cleared when stopping."); } } lock (lockObj) { startTrackerTask = null; DebugLog("Start tracker task was set back to null."); } }
public void StopQRTracking() { if (IsTrackerRunning) { IsTrackerRunning = false; qrTracker.Stop(); StartResult = QRTrackerStartResult.DeviceNotConnected; } }
public void StopQRTracking() { if (IsTrackerRunning) { IsTrackerRunning = false; qrTracker.Stop(); StartResult = QRTrackerStartResult.DeviceNotConnected; QRCodesTrackingStateChanged?.Invoke(this, false); lock (qrCodesList) { qrCodesList.Clear(); } } }
public void StopQRTracking() { if (IsTrackerRunning) { IsTrackerRunning = false; if (qrTracker != null) { qrTracker.Stop(); qrCodesList.Clear(); } StartResult = QRTrackerStartResult.DeviceNotConnected; var handlers = QRCodesTrackingStateChanged; if (handlers != null) { handlers(this, false); } } }