-
Dmitry Kazakov authored
Summary: Some actions should not be started before all the previous actions are finished. That is especially true for the actions that work with layers stack, like "Merge Down" and "Flatten". Now KisDelayedSaveDialog is used not only for saving, but also for waiting before doing usual actions. It also has a busy-loop timeout of 1 second before showing up, for not distracting painters from their workflow when the action is postponed only a little bit. BUG:372724 Fixes T4593 Test Plan: Basically, the steps like in bug 372724. 1) Select multiple layers 2) Start a long stroke (1000px colorsmudge brush is a good example) 3) Press Ctrl+E ***multiple*** times quickly 4) After all the background work is finished, press Ctrl+Z There should be no crash, and the result should be somewhat expected. Repeat the same for: 1) Merge down 2) Flatten Image 3) Flatten Layer 4) Transform a layer using "Layers" menu(?) Reviewers: #krita, timotheegiet, scottpetrovic Maniphest Tasks: T4593 Differential Revision: https://phabricator.kde.org/D3449
a49ec4b0