setMacroMode method

  1. @override
Future<Map<String, dynamic>> setMacroMode(
  1. bool enabled
)
override

Enable or disable macro mode for close-up scanning

Implementation

@override
Future<Map<String, dynamic>> setMacroMode(bool enabled) async {
  try {
    if (kDebugMode) {
      debugPrint('QuickQR Scanner: Setting macro mode to $enabled');
    }

    final result = await methodChannel.invokeMethod<Map<Object?, Object?>>(
      'setMacroMode',
      {'enabled': enabled}
    );
    final macroState = Map<String, dynamic>.from(result ?? {});

    if (kDebugMode) {
      debugPrint('QuickQR Scanner: Macro mode set - $macroState');
    }

    return macroState;
  } on PlatformException catch (e) {
    throw _handlePlatformException(e, 'setMacroMode');
  } catch (e) {
    throw ScannerException(
      ScannerErrorCode.internalError,
      'Failed to set macro mode: $e',
    );
  }
}