disconnect method

  1. @override
Future disconnect({
  1. Duration? timeout,
})
override

Implementation

@override
Future disconnect({Duration? timeout}) async {
  if (Platform.isWindows) {
    // Tidy up the printer handle.
    ClosePrinter(hPrinter);
    free(phPrinter!);
    free(pDocName);
    free(pDataType);
    free(dwBytesWritten!);
    free(docInfo!);
    free(szPrinterName);

    if (timeout != null) {
      await Future.delayed(timeout, () => null);
    }
    return true;
  } else if (Platform.isAndroid) {
    await usbPrinter.close();
    if (timeout != null) {
      await Future.delayed(timeout, () => null);
    }
  }
}