|Summary:||Changing layer visibility clears redo|
|Component:||Usability||Assignee:||Krita Bugs <krita-bugs-null>|
|Severity:||normal||CC:||halla, raghu, rjquiralte|
|Version:||git master (please specify the git hash!)|
|Latest Commit:||Version Fixed In:|
Description lou 2018-01-28 17:57:05 UTC
Changing layer visibility clears redo history but does not add an entry to the history. 1) I feel this is inconsistent: anything that irreversibly changes history should have a history entry. 2) I feel changing visibility is not a type of thing that should change history. (alternatively, it's a user visible change so maybe it should get a history entry, but since history is linear and not treelike, I think it could be rather inconvenient to take this choice; preserving possible art redo would be more important?)
Comment 1 lou 2018-01-28 18:05:36 UTC
Regression of 195519 ?
Comment 2 Halla Rempt 2018-01-30 09:36:52 UTC
If I toggle visibility in the layerbox, it doesn't get added to the undo history. I do not see the undo history being cleared. If I toggle visibility in the layer properties dialog, an undo state is added: is that what you mean?
Comment 3 Quiralta 2018-01-30 16:38:34 UTC
This looks more like a previous bug when zooming the canvas would trigger a step (edit guidelines) eliminating any re-do steps and potentially deleting strokes. A simple way to reproduce is to do 4-5 strokes, undo some of them, toggle view of the layer, the redo history will be cleared and without showing any indication of any other step (as the view toggle doesn't gets recorded) this too has a potential of accidentally deleting work done without any indication of what has happened. Just build krita git master, can reproduce it as the OP.
Comment 4 lou 2018-02-01 13:08:21 UTC
Yeah, that's why I said redo history instead of undo history, but I guess I should have been clearer. I think what Quiralta said matches.
Comment 5 Raghavendra kamath 2018-02-03 19:13:12 UTC
+ 1 I can reproduce this too Steps to reproduce 1) Open Krita and create a new document and a new layer 2) On the new layer add 5 simultaneous strokes so that each strokes get recorded as 5 action in undo history docker(open undo history docker to keep and eye on redo steps) 3) now hit ctrl z two times to undo last two strokes 4) Now just switch off the visibility of the layer. You'll notice that just by switching on and off the layer visibility we lose the ability to redo last two strokes.