show method
Implementation
void show(
String message, {
ComToastConfig? config,
bool skipDuplicateFilter = false,
}) {
final finalConfig = _mergeConfigs(config);
finalConfig.validate();
if (message.trim().isEmpty && finalConfig.type != ComToastType.custom) {
return;
}
if (finalConfig.type == ComToastType.custom &&
finalConfig.builder == null) {
return;
}
if (!skipDuplicateFilter) {
final now = DateTime.now();
if (_lastMessage == message &&
_lastShowTime != null &&
now.difference(_lastShowTime!).inMilliseconds <
_duplicateFilterDuration) {
return;
}
_lastMessage = message;
_lastShowTime = now;
}
if (_isBannerConfig(finalConfig)) {
_enqueueBanner(message, finalConfig, null);
return;
}
if (_overlayManager.isToastShowing) {
_dismissCurrentToastImmediately();
}
_showToast(message, finalConfig);
}