diff --git a/thirdparty/sokol/sokol_app.h b/thirdparty/sokol/sokol_app.h index 450b6e3e3f..a8f3f67149 100644 --- a/thirdparty/sokol/sokol_app.h +++ b/thirdparty/sokol/sokol_app.h @@ -1230,6 +1230,7 @@ typedef struct sapp_touchpoint { uintptr_t identifier; float pos_x; float pos_y; + int tool_type; // __v_ bool changed; } sapp_touchpoint; @@ -8569,6 +8570,7 @@ _SOKOL_PRIVATE bool _sapp_android_touch_event(const AInputEvent* e) { dst->identifier = (uintptr_t)AMotionEvent_getPointerId(e, (size_t)i); dst->pos_x = (AMotionEvent_getRawX(e, (size_t)i) / _sapp.window_width) * _sapp.framebuffer_width; dst->pos_y = (AMotionEvent_getRawY(e, (size_t)i) / _sapp.window_height) * _sapp.framebuffer_height; + dst->tool_type = AMotionEvent_getToolType(e, (size_t)i); // __v_ if (action == AMOTION_EVENT_ACTION_POINTER_DOWN || action == AMOTION_EVENT_ACTION_POINTER_UP) { diff --git a/vlib/sokol/sapp/enums.v b/vlib/sokol/sapp/enums.v index 290d0f67fa..2b0a04becc 100644 --- a/vlib/sokol/sapp/enums.v +++ b/vlib/sokol/sapp/enums.v @@ -183,3 +183,12 @@ pub enum KeyCode { right_super = 347 menu = 348 } + +pub enum TouchToolType { + unknown + finger + stylus + mouse + eraser + palm +} diff --git a/vlib/sokol/sapp/sapp_structs.c.v b/vlib/sokol/sapp/sapp_structs.c.v index 07e5582bf0..871c0dabc4 100644 --- a/vlib/sokol/sapp/sapp_structs.c.v +++ b/vlib/sokol/sapp/sapp_structs.c.v @@ -112,6 +112,7 @@ pub: identifier u64 pos_x f32 pos_y f32 + tool_type TouchToolType changed bool }