diff options
author | Sven Gothel <[email protected]> | 2011-08-11 06:19:25 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2011-08-11 06:19:25 +0200 |
commit | d870cb763cc0c6c995037b7db2285e1d365f09a7 (patch) | |
tree | 690ccf7f9c217e0a2ba9c2cef4ff2607a0279fc2 /src/newt/native/AndroidWindow.c | |
parent | 60da43c2d8a8b229678209276080bf06dc44f0f8 (diff) |
NEWT/Android: Add missing native code
Diffstat (limited to 'src/newt/native/AndroidWindow.c')
-rw-r--r-- | src/newt/native/AndroidWindow.c | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/newt/native/AndroidWindow.c b/src/newt/native/AndroidWindow.c new file mode 100644 index 000000000..4359c22bb --- /dev/null +++ b/src/newt/native/AndroidWindow.c @@ -0,0 +1,47 @@ + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> +#include <stdarg.h> + +#include <gluegen_stdint.h> + +#include <unistd.h> +#include <errno.h> +#include <EGL/egl.h> + +#include "jogamp_newt_driver_android_AndroidWindow.h" + +#include <android/native_window.h> +#include <android/native_window_jni.h> + +#define VERBOSE_ON 1 + +#ifdef VERBOSE_ON + #define DBG_PRINT(...) fprintf(stdout, __VA_ARGS__) +#else + #define DBG_PRINT(...) +#endif + + +JNIEXPORT jlong JNICALL Java_jogamp_newt_driver_android_AndroidWindow_getSurfaceHandle + (JNIEnv *env, jclass clazz, jobject surface) +{ + ANativeWindow * anw = ANativeWindow_fromSurface(env, surface); + return (jlong) (intptr_t) anw; +} + +JNIEXPORT void JNICALL Java_jogamp_newt_driver_android_AndroidWindow_setSurfaceVisualID + (JNIEnv *env, jclass clazz, jlong surfaceHandle, jint nativeVisualID) +{ + ANativeWindow * anw = (ANativeWindow *) (intptr_t) surfaceHandle; + ANativeWindow_setBuffersGeometry(anw, 0, 0, nativeVisualID); +} + +JNIEXPORT jboolean JNICALL Java_jogamp_newt_driver_android_AndroidWindow_initIDs + (JNIEnv *env, jclass clazz) +{ + DBG_PRINT( "initIDs ok\n" ); + return JNI_TRUE; +} + |