В итоге я просто отслеживал разницу между движениями мыши, поэтому, если я получу движение мыши, например, 5 вправо, я сохраню пять и проигнорирую следующее событие, если оно сдвинет меня на 5 влево (что означает, что он, вероятно, вызывается setPos). Не очень элегантно, но, похоже, работает надежно.