godot/platform
Cosmic Chip Socket cf124b1415 Use XInput2 RawMotion to generate MouseMotion events
The current system for capturing the mouse and generating motion events on X11
has issues with inaccurate and lopsided input. This is because both
XQueryPointer and XWarpPointer work in terms of integer coordinates when the
underlying X11 input driver may be tracking the mouse using subpixel
coordinates. When warping the pointer, the fractional part of the pointer
position is discarded.

To work around this issue, the fix uses raw motion events from XInput 2. These
events report relative motion and are not affected by pointer warping.
Additionally, this means Godot is able to detect motion at a higher resolution
under X11. Because this is raw mouse input, it is not affected by the user's
pointer speed and acceleration settings. This is the same system as SDL2 uses
for its relative motion.

Multitouch input on X requires XInput 2.2. Raw motion events require
XInput 2.0. Since 2.0 is old enough, this is now the minimum requirement to
use Godot on X.
2018-12-14 23:51:20 +01:00
..
android Android: Don't expose x86_64 ABI for export if we can't build templates for it 2018-12-14 23:08:00 +01:00
haiku Fix init of VisualServerRaster 2018-11-01 19:23:12 +01:00
iphone Merge pull request #24285 from volzhs/support-gles2-ios 2018-12-13 10:37:12 +01:00
javascript Merge pull request #20385 from moiman100/unify-double-clicking 2018-12-14 23:47:03 +01:00
osx Merge pull request #20063 from moiman100/fix-button-mask 2018-12-14 23:31:52 +01:00
server Allow the server platform to build on linux again. 2018-10-30 12:38:55 +00:00
uwp uwp export: fix existing template check 2018-11-27 20:20:54 +01:00
windows Merge pull request #20063 from moiman100/fix-button-mask 2018-12-14 23:31:52 +01:00
x11 Use XInput2 RawMotion to generate MouseMotion events 2018-12-14 23:51:20 +01:00
register_platform_apis.h Add missing copyright headers and fix formatting 2018-01-05 01:22:23 +01:00
SCsub SCons: Build thirdparty code in own env, disable warnings 2018-09-28 14:07:39 +02:00