https://bugs.kde.org/show_bug.cgi?id=363311
Dmitry Kazakov <dimul...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Latest Commit| |http://commits.kde.org/krit | |a/1426e045e9cdd653b0ca3c6cb | |e29703ee57b2c81 Resolution|--- |FIXED Status|CONFIRMED |RESOLVED --- Comment #2 from Dmitry Kazakov <dimul...@gmail.com> --- Git commit 1426e045e9cdd653b0ca3c6cbe29703ee57b2c81 by Dmitry Kazakov. Committed on 21/10/2016 at 11:42. Pushed by dkazakov into branch 'kazakov/undo-with-instant-preview-T2544'. Implemented Undo for Instant Preview strokes Now the user can cancel a stroke without waiting until the main full-resolution stroke finishes its execution. Just press Ctrl+Z and the your preview will be (partially) reverted and the corresponding background stroke will be cancelled. Technically it is implemented by introducing the second undo store inside the strokes queue and syncing it with the running strokes with a set of complicated rules. If the stroke can be cancelled, it is cancelled, if the stroke has already completed its execution, it is just undone. Ref T2544 M +9 -1 libs/image/kis_image.cc M +11 -0 libs/image/kis_image.h M +4 -0 libs/image/kis_image_interfaces.cpp M +8 -0 libs/image/kis_image_interfaces.h M +1 -2 libs/image/kis_processing_applicator.cpp M +6 -0 libs/image/kis_stroke.cpp M +2 -0 libs/image/kis_stroke.h M +10 -10 libs/image/kis_stroke_strategy_undo_command_based.cpp M +4 -5 libs/image/kis_stroke_strategy_undo_command_based.h M +183 -4 libs/image/kis_strokes_queue.cpp M +11 -0 libs/image/kis_strokes_queue.h C +9 -11 libs/image/kis_strokes_queue_undo_result.h [from: libs/image/kis_image_interfaces.cpp - 075% similarity] M +5 -0 libs/image/kis_undo_stores.cpp M +2 -0 libs/image/kis_undo_stores.h M +10 -0 libs/image/kis_update_scheduler.cpp M +7 -0 libs/image/kis_update_scheduler.h M +1 -1 libs/image/tests/kis_stroke_strategy_undo_command_based_test.cpp M +189 -14 libs/image/tests/kis_strokes_queue_test.cpp M +5 -0 libs/image/tests/kis_strokes_queue_test.h M +11 -3 libs/image/tests/scheduler_utils.h M +5 -0 libs/ui/KisDocument.cpp M +1 -1 libs/ui/actions/kis_selection_action_factories.cpp M +0 -3 libs/ui/kis_filter_manager.cc M +0 -1 libs/ui/tests/fill_processing_visitor_test.cpp M +0 -1 libs/ui/tool/kis_figure_painting_tool_helper.cpp M +2 -4 libs/ui/tool/kis_resources_snapshot.cpp M +1 -1 libs/ui/tool/kis_resources_snapshot.h M +1 -1 libs/ui/tool/kis_tool.cc M +1 -2 libs/ui/tool/kis_tool_freehand.cc M +0 -4 libs/ui/tool/kis_tool_freehand_helper.cpp M +0 -2 libs/ui/tool/kis_tool_freehand_helper.h M +0 -1 libs/ui/tool/strokes/freehand_stroke.cpp M +0 -1 libs/ui/tool/strokes/kis_filter_stroke_strategy.cpp M +0 -19 libs/ui/tool/strokes/kis_painter_based_stroke_strategy.cpp M +0 -1 libs/ui/tool/strokes/kis_painter_based_stroke_strategy.h M +0 -1 libs/ui/widgets/kis_scratch_pad.cpp M +0 -1 plugins/paintops/defaultpaintops/brush/tests/kis_brushop_test.cpp M +1 -1 plugins/tools/basictools/kis_tool_fill.cc M +1 -1 plugins/tools/basictools/kis_tool_gradient.cc M +1 -2 plugins/tools/basictools/kis_tool_line.cc M +2 -3 plugins/tools/basictools/kis_tool_line_helper.cpp M +1 -2 plugins/tools/basictools/kis_tool_line_helper.h M +3 -4 plugins/tools/basictools/kis_tool_move.cc M +16 -32 plugins/tools/basictools/strokes/move_selection_stroke_strategy.cpp M +2 -4 plugins/tools/basictools/strokes/move_selection_stroke_strategy.h M +12 -22 plugins/tools/basictools/strokes/move_stroke_strategy.cpp M +2 -3 plugins/tools/basictools/strokes/move_stroke_strategy.h M +3 -4 plugins/tools/basictools/tests/move_selection_stroke_test.cpp M +1 -1 plugins/tools/basictools/tests/move_stroke_test.cpp M +1 -1 plugins/tools/tool_crop/kis_tool_crop.cc M +3 -3 plugins/tools/tool_transform2/kis_tool_transform.cc M +2 -2 plugins/tools/tool_transform2/strokes/transform_stroke_strategy.cpp M +1 -1 plugins/tools/tool_transform2/strokes/transform_stroke_strategy.h M +0 -1 sdk/tests/stroke_testing_utils.cpp http://commits.kde.org/krita/1426e045e9cdd653b0ca3c6cbe29703ee57b2c81 -- You are receiving this mail because: You are watching all bug changes.