applyCameraControlConfig method
Apply complete camera control configuration
Implementation
@override
Future<Map<String, dynamic>> applyCameraControlConfig(CameraControlConfig config) async {
try {
if (kDebugMode) {
debugPrint('QuickQR Scanner: Applying camera control config - $config');
}
// Validate configuration
final warnings = config.validate();
if (warnings.isNotEmpty && kDebugMode) {
debugPrint('QuickQR Scanner: Camera control config warnings - $warnings');
}
final arguments = config.toMap();
final result = await methodChannel.invokeMethod<Map<Object?, Object?>>(
'applyCameraControlConfig',
arguments
);
final configResult = Map<String, dynamic>.from(result ?? {});
if (kDebugMode) {
debugPrint('QuickQR Scanner: Camera control config applied - $configResult');
}
return configResult;
} on PlatformException catch (e) {
throw _handlePlatformException(e, 'applyCameraControlConfig');
} catch (e) {
throw ScannerException(
ScannerErrorCode.internalError,
'Failed to apply camera control config: $e',
);
}
}