Removed the codepath that gets compiled if IPHONE_TOUCH_EFFICIENT_DANGEROUS is not defined. The "dangerous" codepath relies on the fact that UITouch objects are persistent for the entire touch sequence, which is always guaranteed by Apple.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
diff --git a/src/video/uikit/SDL_uikitview.h b/src/video/uikit/SDL_uikitview.h
index 9824e78..f34b1b1 100644
--- a/src/video/uikit/SDL_uikitview.h
+++ b/src/video/uikit/SDL_uikitview.h
@@ -24,12 +24,6 @@
#include "SDL_touch.h"
-#define IPHONE_TOUCH_EFFICIENT_DANGEROUS
-
-#ifndef IPHONE_TOUCH_EFFICIENT_DANGEROUS
-#define MAX_SIMULTANEOUS_TOUCHES 5
-#endif
-
#if SDL_IPHONE_KEYBOARD
@interface SDL_uikitview : UIView <UITextFieldDelegate>
#else
diff --git a/src/video/uikit/SDL_uikitview.m b/src/video/uikit/SDL_uikitview.m
index c7a77de..b5ba73b 100644
--- a/src/video/uikit/SDL_uikitview.m
+++ b/src/video/uikit/SDL_uikitview.m
@@ -41,9 +41,6 @@ void _uikit_keyboard_init();
SDL_TouchID touchId;
UITouch *leftFingerDown;
-#ifndef IPHONE_TOUCH_EFFICIENT_DANGEROUS
- UITouch *finger[MAX_SIMULTANEOUS_TOUCHES];
-#endif
#if SDL_IPHONE_KEYBOARD
UITextField *textField;
@@ -99,24 +96,8 @@ void _uikit_keyboard_init();
}
CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
-#ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
- /* FIXME: TODO: Using touch as the fingerId is potentially dangerous
- * It is also much more efficient than storing the UITouch pointer
- * and comparing it to the incoming event.
- */
SDL_SendTouch(touchId, (SDL_FingerID)((size_t)touch),
SDL_TRUE, locationInView.x, locationInView.y, 1.0f);
-#else
- int i;
- for(i = 0; i < MAX_SIMULTANEOUS_TOUCHES; i++) {
- if (finger[i] == NULL) {
- finger[i] = touch;
- SDL_SendTouch(touchId, i,
- SDL_TRUE, locationInView.x, locationInView.y, 1.0f);
- break;
- }
- }
-#endif
}
}
@@ -130,20 +111,8 @@ void _uikit_keyboard_init();
}
CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
-#ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
SDL_SendTouch(touchId, (SDL_FingerID)((size_t)touch),
SDL_FALSE, locationInView.x, locationInView.y, 1.0f);
-#else
- int i;
- for (i = 0; i < MAX_SIMULTANEOUS_TOUCHES; i++) {
- if (finger[i] == touch) {
- SDL_SendTouch(touchId, i,
- SDL_FALSE, locationInView.x, locationInView.y, 1.0f);
- finger[i] = NULL;
- break;
- }
- }
-#endif
}
}
@@ -168,19 +137,8 @@ void _uikit_keyboard_init();
}
CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
-#ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
SDL_SendTouchMotion(touchId, (SDL_FingerID)((size_t)touch),
locationInView.x, locationInView.y, 1.0f);
-#else
- int i;
- for (i = 0; i < MAX_SIMULTANEOUS_TOUCHES; i++) {
- if (finger[i] == touch) {
- SDL_SendTouchMotion(touchId, i,
- locationInView.x, locationInView.y, 1.0f);
- break;
- }
- }
-#endif
}
}