Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
Using accumulation undo type (eg painting)
as the first undo step, broke code which adds an initial memfile undo.
|
|
This includes making Eevee match Cycles behavior of inserting an emission
node when linking colors to closures.
|
|
For grouped undo we should not skip the undo push, rather replace the
previous undo push. This way undo goes back to the state after the last
operation in the group.
|
|
|
|
|
|
|
|
It's important edit-mode has a step stored for redo to work,
file load now ensures this in a generic way.
|
|
Caused sculpt to crash.
|
|
I.E. only enable auto-override for 'active' selected object when making
an override of a linked group. This will ease on auto-override creation,
and you typically do not want to auto-override most objects in the group
anyway (in proxy system, you could only proxyfy one object of the group
anyaway!).
|
|
|
|
Error in 651b8fb14e caused de-duplication to fail.
|
|
Got lost in big undo refactor.
Note that this is probably (maybe) not how we want to have it in the
end, things like EditMode undo should probably not trigger this check?
|
|
|
|
Also improve logging
|
|
|
|
Was testing with small number of items, so this went unnoticed.
|
|
Add versions of add/lookup that check the previous item.
|
|
|
|
- Use a single undo history for all operations.
- UndoType's are registered and poll the context to check if they
should be used when performing an undo push.
- Mode switching is used to ensure the state is correct before
undo data is restored.
- Some undo types accumulate changes (image & text editing)
others store the state multiple times (with de-duplication).
This is supported by checking UndoStack.mode `ACCUMULATE` / `STORE`.
- Each undo step stores ID datablocks they use with utilities to help
manage restoring correct ID's.
Needed since global undo is now mixed with other modes undo.
- Currently performs each undo step when going up/down history
Previously this wasn't done, making history fail in some cases.
This can be optimized to skip some combinations of undo steps.
grease-pencil is an exception which has not been updated
since it integrates undo into the draw-session.
See D3113
|