Skip to content

V9.4.0

@escamoteur escamoteur tagged this 24 Nov 06:44
Adds built-in progress tracking, status messages, and cooperative cancellation
to commands via ProgressHandle.

New Features:
- ProgressHandle class with progress (0.0-1.0), statusMessage, and isCanceled properties
- 8 new factory methods: createAsyncWithProgress and createUndoableWithProgress variants
- New Command properties: progress, statusMessage, isCanceled, cancel()
- MockCommand progress simulation support with updateMockProgress(), updateMockStatusMessage(), mockCancel()
- Zero-overhead design: Commands without progress use static default notifiers

Technical Details:
- Non-nullable API using static default notifiers for commands without handles
- Cooperative cancellation pattern (ValueListenable-based for external integration)
- Full test coverage: 23 passing tests including MockCommand simulation
- Compatible with external cancellation tokens (e.g., Dio CancelToken)

Breaking Changes: None (fully backward compatible)
Assets 2
Loading