Several changes were included:
- Fixes in TextBox widget to show it with proper size hint when it's
outside a viewport
- Added the IncompatFileWindow with a message + link to know how to
update Aseprite and solve the situation
- Moved CannotModifyWhenReadOnlyException from app/doc.h to
app/transaction.h
* Now a Cel has a z-index property to change the order of layers per frame
* A new doc::RenderPlan class can calculate the order of cels to be rendered
* z-index is saved as a int16_t in the .aseprite files
* This new field can be set/get from Lua with Cel.zIndex
As the "multiple windows" feature is still buggy (#3556) and we've
disabled it by default, it's nice to make this option more visible (in
the General section) so users reliant on this will find the switch
quickly.
Some extra changes introduced:
* DocUndo & CmdTransaction were simplified: removing the saved
counter, and storing a specific UndoState pointing to the state that
matches the version in the disk
* DocUndo::onDeleteUndoState() can generate a
impossibleToBackToSavedState() if the saved state is deleted. This
might fix some bugs where a "save changes" dialog weren't displayed
after undoing and making changes (probably related to #3542, but not
sure)
Some extra work is needed to avoid showing the "save changes" dialog
if we are close to the saved state and only non-modification undo
states separate us from there. E.g. if we open a file, select the
canvas, and close it, Aseprite now shows the "save changes" dialog,
this wasn't true in previous versions.