https://bugs.kde.org/show_bug.cgi?id=410838

Dmitry Kazakov <dimul...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/kde/
                   |                            |krita/commit/dcdef2ea1163a5
                   |                            |b764e4bb9acebed95a0c52101f
             Status|REPORTED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #1 from Dmitry Kazakov <dimul...@gmail.com> ---
Git commit dcdef2ea1163a5b764e4bb9acebed95a0c52101f by Dmitry Kazakov.
Committed on 12/08/2019 at 13:45.
Pushed by dkazakov into branch 'master'.

Fix lags in Move Tool when using tablet device

Now the Move Tool uses the same FSP-limiting compression as the freehand
tool does. The relevant code has been moved into a special class
KisAsyncronousStrokeUpdateHelper, which implements a logic of issuing
threshold events.

Bascially, all the sources of event (tablet move and async update from
KisAsyncronousStrokeUpdateHelper) now try to initiate a canvas update.
If enough time has passed and previous updates has finished, then a new
update is started.

One more important change: now actual layer offset change is executed in
the same exclusive job as the updates (with limited FPS), therefore, it
avoids garbage-looking leftovers of the intemediate move states.

M  +5    -0    libs/image/kis_image.cc
M  +8    -0    libs/image/kis_image.h
M  +2    -0    libs/image/kis_image_interfaces.h
M  +5    -0    libs/image/kis_update_scheduler.cpp
M  +2    -0    libs/image/kis_update_scheduler.h
M  +1    -0    libs/ui/CMakeLists.txt
M  +3    -1    libs/ui/tests/FreehandStrokeBenchmark.cpp
M  +2    -1    libs/ui/tests/KisPaintOnTransparencyMaskTest.cpp
M  +2    -1    libs/ui/tests/freehand_stroke_test.cpp
A  +76   -0    libs/ui/tool/KisAsyncronousStrokeUpdateHelper.cpp     [License:
GPL (v2+)]
A  +85   -0    libs/ui/tool/KisAsyncronousStrokeUpdateHelper.h     [License:
GPL (v2+)]
M  +2    -1    libs/ui/tool/kis_figure_painting_tool_helper.cpp
M  +9    -20   libs/ui/tool/kis_tool_freehand_helper.cpp
M  +0    -1    libs/ui/tool/kis_tool_freehand_helper.h
M  +4    -2    libs/ui/tool/strokes/freehand_stroke.cpp
M  +0    -23   libs/ui/tool/strokes/freehand_stroke.h
M  +45   -11   libs/ui/tool/strokes/move_stroke_strategy.cpp
M  +16   -2    libs/ui/tool/strokes/move_stroke_strategy.h
M  +3    -2    libs/ui/widgets/kis_preset_live_preview_view.cpp
M  +15   -0    plugins/tools/basictools/kis_tool_move.cc
M  +3    -0    plugins/tools/basictools/kis_tool_move.h

https://invent.kde.org/kde/krita/commit/dcdef2ea1163a5b764e4bb9acebed95a0c52101f

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to