startCapturing function
Future<void>
startCapturing(
{ - required Dummy dummy,
- required Future<String> callback(),
- required dynamic refreshContent(),
- required dynamic onStartCapturing(),
- required dynamic onFinishCapturing(),
})
Implementation
Future<void> startCapturing({
required Dummy dummy,
required Future<String> Function() callback,
required Function() refreshContent,
required Function() onStartCapturing,
required Function() onFinishCapturing,
}) async {
onStartCapturing();
if (dummy.screenshot.locales.isNotEmpty) {
await Future.delayed(const Duration(seconds: 1));
for (final locale in dummy.screenshot.locales) {
final outputFolder =
await dummy.screenshot.outputFolder?.call(locale) ?? '';
await Catalog().beforeCapture(locale);
await Future.delayed(const Duration(seconds: 1));
refreshContent();
await Future.delayed(const Duration(seconds: 1));
for (final ss in dummy.screenshot.screenshots) {
ss.setLocale(locale);
await _processScreenshot(
mode: dummy.screenshot.background.toStringName(),
outputFolder: outputFolder,
fileName: ss.fileName,
callback: callback,
height: ss.size.height,
width: ss.size.width,
);
}
}
} else {
final outputFolder = await dummy.screenshot.outputFolder?.call(null) ?? '';
if (dummy.screenshot.screenshots.isNotEmpty) {
for (final ss in dummy.screenshot.screenshots) {
await _processScreenshot(
mode: dummy.screenshot.background.toStringName(),
outputFolder: outputFolder,
fileName: ss.fileName,
callback: callback,
height: ss.size.height,
width: ss.size.width,
);
}
} else {
await _processScreenshot(
mode: dummy.screenshot.background.toStringName(),
outputFolder: outputFolder,
fileName: '${DateTime.now().millisecondsSinceEpoch}.png',
callback: callback,
height: 0.0,
width: 0.0,
);
}
}
onFinishCapturing();
}