--- /dev/null
+package com.parrot.ARDrone;\r
+\r
+import android.content.Context;\r
+import android.opengl.GLSurfaceView;\r
+import android.util.AttributeSet;\r
+import android.util.Log;\r
+import android.view.MotionEvent;\r
+\r
+\r
+public class DemoGLSurfaceView extends GLSurfaceView {\r
+ private DemoRenderer mRenderer;\r
+ private static final String LOG_TAG = "ARDrone view";\r
+\r
+ public DemoGLSurfaceView(Context context) {\r
+ super(context);\r
+ }\r
+ \r
+ public DemoGLSurfaceView(Context context, AttributeSet attrs) {\r
+ super( context, attrs);\r
+ }\r
+\r
+ public void initialize( Context context ) {\r
+ mRenderer = new DemoRenderer();\r
+ setRenderer(mRenderer);\r
+\r
+ // receive events\r
+ setFocusable(true);\r
+ setFocusableInTouchMode(true);\r
+ requestFocus();\r
+ }\r
+ \r
+ @Override\r
+ public boolean onTrackballEvent(final MotionEvent ev) {\r
+ queueEvent(new Runnable() {\r
+ public void run() {\r
+ // Log.v(LOG_TAG, "track event=" + ev);\r
+ nativeTrackballEvent(ev.getEventTime(),\r
+ ev.getAction(),\r
+ ev.getX(),\r
+ ev.getY());\r
+ }\r
+ });\r
+ return true;\r
+ }\r
+ \r
+\r
+ @Override\r
+ public boolean dispatchTouchEvent(final MotionEvent ev) {\r
+ queueEvent(new Runnable() {\r
+ public void run() {\r
+ // Log.v(LOG_TAG, "touch event=" + ev);\r
+ nativeMotionEvent(ev.getEventTime(),\r
+ ev.getAction(),\r
+ ev.getX(),\r
+ ev.getY());\r
+ }\r
+ });\r
+ return true;\r
+ }\r
+\r
+ private static native void nativePause();\r
+ private static native void nativeMotionEvent(long eventTime, int action,\r
+ float x, float y);\r
+ private static native void nativeTrackballEvent(long eventTime,\r
+ int action,\r
+ float x, float y);\r
+ //private static native void nativeKeyEvent(int action);\r
+}
\ No newline at end of file