@@ -108,6 +108,16 @@ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(onNativeTouch)(
108
108
jint touch_device_id_in , jint pointer_finger_id_in ,
109
109
jint action , jfloat x , jfloat y , jfloat p );
110
110
111
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchStart )(
112
+ JNIEnv * env , jclass jcls );
113
+
114
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchUpdate )(
115
+ JNIEnv * env , jclass jcls ,
116
+ jfloat scale );
117
+
118
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchEnd )(
119
+ JNIEnv * env , jclass jcls );
120
+
111
121
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativeMouse )(
112
122
JNIEnv * env , jclass jcls ,
113
123
jint button , jint action , jfloat x , jfloat y , jboolean relative );
@@ -192,6 +202,9 @@ static JNINativeMethod SDLActivity_tab[] = {
192
202
{ "onNativeSoftReturnKey" , "()Z" , SDL_JAVA_INTERFACE (onNativeSoftReturnKey ) },
193
203
{ "onNativeKeyboardFocusLost" , "()V" , SDL_JAVA_INTERFACE (onNativeKeyboardFocusLost ) },
194
204
{ "onNativeTouch" , "(IIIFFF)V" , SDL_JAVA_INTERFACE (onNativeTouch ) },
205
+ { "onNativePinchStart" , "()V" , SDL_JAVA_INTERFACE (onNativePinchStart ) },
206
+ { "onNativePinchUpdate" , "(F)V" , SDL_JAVA_INTERFACE (onNativePinchUpdate ) },
207
+ { "onNativePinchEnd" , "()V" , SDL_JAVA_INTERFACE (onNativePinchEnd ) },
195
208
{ "onNativeMouse" , "(IIFFZ)V" , SDL_JAVA_INTERFACE (onNativeMouse ) },
196
209
{ "onNativeAccel" , "(FFF)V" , SDL_JAVA_INTERFACE (onNativeAccel ) },
197
210
{ "onNativeClipboardChanged" , "()V" , SDL_JAVA_INTERFACE (onNativeClipboardChanged ) },
@@ -1239,6 +1252,43 @@ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(onNativeTouch)(
1239
1252
SDL_UnlockMutex (Android_ActivityMutex );
1240
1253
}
1241
1254
1255
+ /* Pinch */
1256
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchStart )(
1257
+ JNIEnv * env , jclass jcls )
1258
+ {
1259
+ SDL_LockMutex (Android_ActivityMutex );
1260
+
1261
+ if (Android_Window ) {
1262
+ SDL_SendPinch (SDL_EVENT_PINCH_BEGIN , 0 , Android_Window , 0 );
1263
+ }
1264
+
1265
+ SDL_UnlockMutex (Android_ActivityMutex );
1266
+ }
1267
+
1268
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchUpdate )(
1269
+ JNIEnv * env , jclass jcls , jfloat scale )
1270
+ {
1271
+ SDL_LockMutex (Android_ActivityMutex );
1272
+
1273
+ if (Android_Window ) {
1274
+ SDL_SendPinch (SDL_EVENT_PINCH_UPDATE , 0 , Android_Window , scale );
1275
+ }
1276
+
1277
+ SDL_UnlockMutex (Android_ActivityMutex );
1278
+ }
1279
+
1280
+ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativePinchEnd )(
1281
+ JNIEnv * env , jclass jcls )
1282
+ {
1283
+ SDL_LockMutex (Android_ActivityMutex );
1284
+
1285
+ if (Android_Window ) {
1286
+ SDL_SendPinch (SDL_EVENT_PINCH_END , 0 , Android_Window , 0 );
1287
+ }
1288
+
1289
+ SDL_UnlockMutex (Android_ActivityMutex );
1290
+ }
1291
+
1242
1292
/* Mouse */
1243
1293
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE (onNativeMouse )(
1244
1294
JNIEnv * env , jclass jcls ,
0 commit comments