You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,7 +22,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
22
22
23
23
### Changed
24
24
25
-
- Introduced TableRows, Row, and Delta value types in TablePro/Models/Query/ as the foundation for the data grid row model rewrite. NSTableView delegate reads cell values and row count from TableRows; sidebar, JSON view, and exports now read from TableRows. Cell edits route through TableRows.edit and apply NSTableView updates via the Delta-driven TableRowsController. Row operations (add, duplicate, delete, paste, undo) mutate TableRows and apply the returned Delta through TableViewCoordinator.applyDelta. RowBuffer still backs sorting and the display cache pending later phases (Phase C.2 of the DataGrid refactor).
25
+
- Introduced TableRows, Row, and Delta value types in TablePro/Models/Query/ as the foundation for the data grid row model rewrite. NSTableView delegate reads cell values and row count from TableRows; sidebar, JSON view, and exports now read from TableRows. Cell edits route through TableRows.edit and apply NSTableView updates via the Delta-driven TableRowsController. Row operations (add, duplicate, delete, paste, undo) mutate TableRows and apply the returned Delta through TableViewCoordinator.applyDelta. Sort state moved from InMemoryRowProvider's positional sortIndices to a TableViewCoordinator.sortedIDs permutation keyed by Row.id, so cell edits under sort hit the correct storage row and inserted rows survive at the end of the sorted view without re-sorting. RowBuffer still backs the display cache pending later phases (Phase C.2 of the DataGrid refactor).
26
26
- DataChangeManager extracted a PendingChanges value type that owns cross-collection invariants for cell edits, row insertions, and deletions. DataChangeManager kept undo/redo registration, plugin SQL generation, and the `@Observable` boundary, dropping from ~960 to ~190 lines. The serialization DTO `TabPendingChanges` is renamed to `TabChangeSnapshot` to distinguish it from the live tracker.
27
27
- AnyChangeManager uses ChangeManaging protocol instead of closure-based type erasure, removing all runtime `[Any]` downcasts
28
28
- Row selection state moved from MainContentView @State to GridSelectionState @Observable class, preventing full view tree invalidation on every row click
0 commit comments