fix: reset mode if it has changed

fixes #25
This commit is contained in:
Virt 2024-10-10 13:04:46 +02:00
commit 3ff4c2a053
9 changed files with 37 additions and 5 deletions

View file

@ -405,9 +405,14 @@ void CDynamicCursors::calculate(EModeUpdate type) {
// calculate angle and zoom
if (mode) {
// reset mode if it has changed
if (mode != lastMode) mode->reset();
if (mode->strategy() == type) resultMode = mode->update(g_pPointerManager->pointerPos);
} else resultMode = SModeResult();
lastMode = mode;
if (**PSHAKE) {
if (type == TICK) resultShake = shake.update(g_pPointerManager->pointerPos);