summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Pigozzi <stefano.pigozzi@gmail.com>2013-11-25 19:31:13 +0100
committerStefano Pigozzi <stefano.pigozzi@gmail.com>2013-11-25 19:35:52 +0100
commit2aeeb28dd1e9eba50c61bf16a3aa3d9313d9e4c8 (patch)
treeb0eca7c64e568a0af950fba9f21168bccc210fe5
parent98fca3531841221b566d6799951dd9b1fe9cde75 (diff)
downloadmpv-2aeeb28dd1e9eba50c61bf16a3aa3d9313d9e4c8.tar.bz2
mpv-2aeeb28dd1e9eba50c61bf16a3aa3d9313d9e4c8.tar.xz
input: discard precise scrolling commands with no value
Apparently Cocoa precise scrolling generates a lot of spurious events with a delta that is equal to 0.0. Make sure that they are discarded and not added to the input queue. Even though this only known to happen with Cocoa, I implemented this at core level since it makes sense in general. Fixes: #310
-rw-r--r--mpvcore/input/input.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mpvcore/input/input.c b/mpvcore/input/input.c
index b61d47d770..180c2ad158 100644
--- a/mpvcore/input/input.c
+++ b/mpvcore/input/input.c
@@ -1646,6 +1646,8 @@ void mp_input_put_key_utf8(struct input_ctx *ictx, int mods, struct bstr t)
void mp_input_put_axis(struct input_ctx *ictx, int direction, double value)
{
+ if (value == 0.0)
+ return;
input_lock(ictx);
mp_input_feed_key(ictx, direction, value);
input_unlock(ictx);