https://bugs.kde.org/show_bug.cgi?id=452831
--- Comment #8 from amyspark <a...@amyspark.me> --- Git commit 247e82508d750c7499f1e2c941cd177cd2829020 by L. E. Segovia. Committed on 26/04/2022 at 15:46. Pushed by lsegovia into branch 'master'. Refactor G'MIC glue code This commit refactors the complete G'MIC image import process, making all steps into Krita commands. This allows undoing and redoing G'MIC filters, which was previously not possible for two reasons: - layer properties application was done in-situ (thus the undo system was not aware of them, so undo was incomplete for reused layers) - layer insertion was not only done in-situ, but it also altered the internal state of the command (thus making redoing impossible) This commit performs the following: - Removal of all unused (pre Krita 5) code. - Reimplementation of the layer synchronization command into a composite command. - Reimplementation of the layer metadata processing and image composite functions from the applicator into separate, fully undoable commands. - Switch of the processing visitor's layer metadata processing to a separate, undoable command (see above). - Fix leaking the G'MIC image data on KisQMicImage destruction. - Simplification of the KisImageInterface application step by de-signal-slotting it. Related: bug 452155 CCMAIL: kimages...@kde.org M +1 -4 plugins/extensions/qmic/CMakeLists.txt M +11 -13 plugins/extensions/qmic/QMic.cpp M +3 -16 plugins/extensions/qmic/QMic.h M +19 -11 plugins/extensions/qmic/gmic.h D +0 -135 plugins/extensions/qmic/kis_import_qmic_processing_visitor.cpp D +0 -56 plugins/extensions/qmic/kis_import_qmic_processing_visitor.h D +0 -114 plugins/extensions/qmic/kis_qmic_applicator.cpp D +0 -52 plugins/extensions/qmic/kis_qmic_applicator.h D +0 -26 plugins/extensions/qmic/kis_qmic_data.cpp D +0 -37 plugins/extensions/qmic/kis_qmic_data.h A +103 -0 plugins/extensions/qmic/kis_qmic_import_tools.h [License: GPL(v2.0+)] M +86 -62 plugins/extensions/qmic/kis_qmic_interface.cpp M +0 -5 plugins/extensions/qmic/kis_qmic_interface.h A +87 -0 plugins/extensions/qmic/kis_qmic_processing_visitor.cpp [License: GPL(v2.0+)] A +37 -0 plugins/extensions/qmic/kis_qmic_processing_visitor.h [License: GPL(v2.0+)] D +0 -75 plugins/extensions/qmic/kis_qmic_progress_manager.cpp D +0 -42 plugins/extensions/qmic/kis_qmic_progress_manager.h M +2 -2 plugins/extensions/qmic/kis_qmic_simple_convertor.cpp M +2 -2 plugins/extensions/qmic/kis_qmic_simple_convertor.h M +106 -72 plugins/extensions/qmic/kis_qmic_synchronize_layers_command.cpp M +12 -19 plugins/extensions/qmic/kis_qmic_synchronize_layers_command.h https://invent.kde.org/graphics/krita/commit/247e82508d750c7499f1e2c941cd177cd2829020 -- You are receiving this mail because: You are watching all bug changes.