Commit graph appflowy-editor/test/legacy/undo_manager_test.dart
Author SHA1 Message Date
Lucas
6fbe7ba442
fix: selection race condition (#1194)
* fix: guard debounced desktop selection update

Avoid dereferencing a cleared selection from the delayed
macOS metrics callback and add a regression test that
covers the stale-timer path.

* chore: clean up analyzer warnings

Remove redundant default arguments in tests and apply the
missing trailing comma required by the current lint rules.
2026-03-31 17:33:40 +08:00
Lucas
37521c205f
fix: support multi-step redo by refactoring undo/redo recording (#1192)
Multi-step redo was broken because `getUndoHistoryItem()` cleared the
redo stack whenever the last undo item was sealed — even during redo
operations. After the first redo, the 50ms debounce timer would seal
the item, causing the next redo to wipe the remaining redo history.

Refactored the undo/redo system with:
- `TransactionSource` enum (userEdit, undo, redo, none) replacing
  boolean flag combinations in ApplyOptions
- `UndoManager.record()` with symmetric paths for each source:
  - userEdit: groups into unsealed items, clears redo on branch
  - undo: pushes directly to redo stack
  - redo: pushes directly to undo stack (sealed), no redo clear
- Deprecated `getUndoHistoryItem()` and legacy boolean flags
2026-03-25 15:25:00 +08:00
Mathias Mogensen
639ebf1415 test: improve coverage of operations.dart 2023-08-17 13:13:45 +08:00
Lucas.Xu
5f136df356
feat: remove the reference of the deprecated values (#304)
* feat: remove the reference of the deprecated values

* chore: add migration guide
2023-07-12 13:21:54 +08:00
Mathias Mogensen
226d39cc78
test: improve test coverage (#23) 2023-03-24 20:59:03 +08:00
Lucas.Xu
5db0480075 chore: update LICENSE 2023-02-05 11:43:51 +08:00
Renamed from frontend/app_flowy/packages/appflowy_editor/test/legacy/undo_manager_test.dart (Previous history)