/// <inheritdoc cref="ShuffleEventArgs"/> public async Task OnEventHandler(object publisher, ShuffleEventArgs e) { try { var copy = await _locker.LockOperationAsync( () => new Bitmap(ViewModel.Source) ).ConfigureAwait(true); Aggregator.PublishFromAll(publisher, new AttachBlockToRendererEventArgs( block: new PipelineBlock(copy) .Add <Bitmap, Bitmap>( (bmp) => _service.Shuffle(bmp)) ) ); } catch (Exception ex) { View.Tooltip(Errors.Shuffle); } }