Explorar el Código

Use int32_t for touch coordinates

Daniele Bartolini hace 10 años
padre
commit
e1b48e0c61
Se han modificado 2 ficheros con 8 adiciones y 8 borrados
  1. 4 4
      src/core/os_event_queue.h
  2. 4 4
      src/main/main_android.cpp

+ 4 - 4
src/core/os_event_queue.h

@@ -62,8 +62,8 @@ struct OsTouchEvent
 
 
 	OsTouchEvent::Enum type;
 	OsTouchEvent::Enum type;
 	uint8_t pointer_id;
 	uint8_t pointer_id;
-	uint16_t x;
-	uint16_t y;
+	int16_t x;
+	int16_t y;
 	bool pressed;
 	bool pressed;
 };
 };
 
 
@@ -164,7 +164,7 @@ struct OsEventQueue
 		push_event(ev);
 		push_event(ev);
 	}
 	}
 
 
-	void push_touch_event(uint16_t x, uint16_t y, uint8_t pointer_id)
+	void push_touch_event(int16_t x, int16_t y, uint8_t pointer_id)
 	{
 	{
 		OsEvent ev;
 		OsEvent ev;
 		ev.type = OsEvent::TOUCH;
 		ev.type = OsEvent::TOUCH;
@@ -176,7 +176,7 @@ struct OsEventQueue
 		push_event(ev);
 		push_event(ev);
 	}
 	}
 
 
-	void push_touch_event(uint16_t x, uint16_t y, uint8_t pointer_id, bool pressed)
+	void push_touch_event(int16_t x, int16_t y, uint8_t pointer_id, bool pressed)
 	{
 	{
 		OsEvent ev;
 		OsEvent ev;
 		ev.type = OsEvent::TOUCH;
 		ev.type = OsEvent::TOUCH;

+ 4 - 4
src/main/main_android.cpp

@@ -150,19 +150,19 @@ struct AndroidDevice
 				case AMOTION_EVENT_ACTION_DOWN:
 				case AMOTION_EVENT_ACTION_DOWN:
 				case AMOTION_EVENT_ACTION_POINTER_DOWN:
 				case AMOTION_EVENT_ACTION_POINTER_DOWN:
 				{
 				{
-					_queue.push_touch_event((uint16_t) x, (uint16_t) y, (uint8_t) pointerId, true);
+					_queue.push_touch_event((int16_t)x, (int16_t)y, (uint8_t)pointerId, true);
 					break;
 					break;
 				}
 				}
 				case AMOTION_EVENT_ACTION_UP:
 				case AMOTION_EVENT_ACTION_UP:
 				case AMOTION_EVENT_ACTION_POINTER_UP:
 				case AMOTION_EVENT_ACTION_POINTER_UP:
 				{
 				{
-					_queue.push_touch_event((uint16_t) x, (uint16_t) y, (uint8_t) pointerId, false);
+					_queue.push_touch_event((int16_t)x, (int16_t)y, (uint8_t)pointerId, false);
 					break;
 					break;
 				}
 				}
 				case AMOTION_EVENT_ACTION_OUTSIDE:
 				case AMOTION_EVENT_ACTION_OUTSIDE:
 				case AMOTION_EVENT_ACTION_CANCEL:
 				case AMOTION_EVENT_ACTION_CANCEL:
 				{
 				{
-					_queue.push_touch_event((uint16_t) x, (uint16_t) y, (uint8_t) pointerId, false);
+					_queue.push_touch_event((int16_t)x, (int16_t)y, (uint8_t)pointerId, false);
 					break;
 					break;
 				}
 				}
 				case AMOTION_EVENT_ACTION_MOVE:
 				case AMOTION_EVENT_ACTION_MOVE:
@@ -172,7 +172,7 @@ struct AndroidDevice
 						const float xx = AMotionEvent_getX(event, index);
 						const float xx = AMotionEvent_getX(event, index);
 						const float yy = AMotionEvent_getY(event, index);
 						const float yy = AMotionEvent_getY(event, index);
 						const int32_t id = AMotionEvent_getPointerId(event, index);
 						const int32_t id = AMotionEvent_getPointerId(event, index);
-						_queue.push_touch_event((uint16_t) xx, (uint16_t) yy, (uint8_t) id);
+						_queue.push_touch_event((int16_t)xx, (int16_t)yy, (uint8_t)id);
 					}
 					}
 					break;
 					break;
 				}
 				}