fix: ignore warps on modes and shake

This commit is contained in:
Virt 2024-08-25 22:58:55 +02:00
commit 55e8b316ce
14 changed files with 80 additions and 9 deletions

View file

@ -111,3 +111,10 @@ double CShake::update(Vector2D pos) {
return this->zoom.value();
}
void CShake::warp(Vector2D old, Vector2D pos) {
auto delta = pos - old;
for (auto& sample : samples)
sample += delta;
}

View file

@ -16,6 +16,8 @@ class CShake {
/* calculates the new zoom factor for the current pos */
double update(Vector2D pos);
/* called when a cursor warp has happened (to avoid magnifying on warps) */
void warp(Vector2D old, Vector2D pos);
private:
/* tracks whether the current shake has already been announced in the ipc */