refactor(model): Decouple Domain Operations From Direct UI Input#578
refactor(model): Decouple Domain Operations From Direct UI Input#578hcoona wants to merge 1 commit intoYafc-CE:masterfrom
Conversation
a7d7219 to
12863a0
Compare
|
Tested.
|
|
I'll resolve the conflicts soon. |
|
Take your time, there is no rush. |
12863a0 to
2d58994
Compare
|
Conflicts resolved and tested. |
2d58994 to
88b174e
Compare
88b174e to
d58f84c
Compare
|
Merged I specifically checked the post-merge overlap for startup/undo scheduling and blueprint export behavior. The conflict resolution keeps the UI-aware I did not find any new upstream changes that need additional coverage under this PR's approach, and I did not find a new regression from the merge. The existing project-level Validation: |
Introduce explicit undo batch scheduling and blueprint export format selection so model code no longer reads UI interaction state for these operations. This also incorporates upstream/master and preserves the reviewed merge seam behavior for startup logging, production-table blueprint exports, and line-ending normalization. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
123feed to
c4f8661
Compare
Introduce
IUndoBatchSchedulerto decoupleUndoSystemfromInputSystem.Instance.DispatchOnGestureFinishlogic:IUndoBatchSchedulerandImmediateUndoBatchSchedulerfor headless/test execution in the model layer.GestureFinishUndoBatchSchedulerin the UI layer to wrap input system behavior.UndoSystemand configureUndoSystem.DefaultSchedulerduring app startup inProgram.cs.Decouple hardware key state from
Blueprint.cs:BlueprintFormatenum (CompressedBase64,RawJson) to make format intent explicit instead of checkingInputSystem.Instance.control.Blueprint.ToBpString()andBlueprintUtilitiesto accept theBlueprintFormatparameter.InputSystem.Instance.control) appropriately to UI callers (ProductionTableView,ShoppingListScreen) to drive intent.Close #577