diff options
| author | 2026-09-07 14:42:21 -0400 | |
|---|---|---|
| committer | 2026-09-07 14:42:21 -0400 | |
| commit | e72c336d01b32bee304c8a2989e2335fcc26c143 (patch) | |
| tree | 62b69b421936114835481c27612aad023e070c4f /subprojects/packagefiles/glfm | |
| parent | 9c4a7eb845126f068aaac0173453e803e5ea6bf8 (diff) | |
| download | stela-e72c336d01b32bee304c8a2989e2335fcc26c143.tar.gz stela-e72c336d01b32bee304c8a2989e2335fcc26c143.tar.bz2 stela-e72c336d01b32bee304c8a2989e2335fcc26c143.zip | |
Android improvements, update deps
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'subprojects/packagefiles/glfm')
| -rw-r--r-- | subprojects/packagefiles/glfm/android_additions.diff | 59 | ||||
| -rw-r--r-- | subprojects/packagefiles/glfm/android_get_egl_internal.diff (renamed from subprojects/packagefiles/glfm/get_egl_internal.diff) | 0 |
2 files changed, 59 insertions, 0 deletions
diff --git a/subprojects/packagefiles/glfm/android_additions.diff b/subprojects/packagefiles/glfm/android_additions.diff new file mode 100644 index 0000000..81b1059 --- /dev/null +++ b/subprojects/packagefiles/glfm/android_additions.diff @@ -0,0 +1,59 @@ +diff --git a/include/glfm.h b/include/glfm.h +index ceace39..cf7ee70 100644 +--- a/include/glfm.h ++++ b/include/glfm.h +@@ -272,6 +272,8 @@ typedef enum { + GLFMKeyCodePrintScreen = 0x9B, ///< Print Screen or System Request key. + GLFMKeyCodeScrollLock = 0x9C, + GLFMKeyCodePause = 0x9D, ///< Pause/Break key. ++ GLFMKeyCodeVolumeUp = 0x9E, ++ GLFMKeyCodeVolumeDown = 0x9F, + + GLFMKeyCodeNumLock = 0xA0, ///< NumLock key ("clear" on Apple platforms). + GLFMKeyCodeNumpadDecimal = 0xA1, +@@ -890,7 +892,7 @@ ANativeActivity *glfmAndroidGetActivity(void) GLFM_DEPRECATED("Use glfmGetAndroi + /// The returned `ANativeActivity` may be invalidated when the surface is destroyed. If a reference to the + /// `ANativeActivity` is kept, call this function again to get an updated reference in ``GLFMSurfaceCreatedFunc`` or + /// ``GLFMAppFocusFunc``. +-void *glfmGetAndroidActivity(const GLFMDisplay *display); ++void *glfmGetAndroidActivity(const GLFMDisplay *display, void **jni); + + #endif // GLFM_EXPOSE_NATIVE_ANDROID + +diff --git a/src/glfm_android.c b/src/glfm_android.c +index 12f3c63..6f77d0a 100644 +--- a/src/glfm_android.c ++++ b/src/glfm_android.c +@@ -1117,6 +1117,8 @@ static bool glfm__onKeyEvent(GLFMPlatformData *platformData, AInputEvent *event) + [AKEYCODE_DPAD_RIGHT] = GLFMKeyCodeArrowRight, + + [AKEYCODE_POWER] = GLFMKeyCodePower, ++ [AKEYCODE_VOLUME_UP] = GLFMKeyCodeVolumeUp, ++ [AKEYCODE_VOLUME_DOWN] = GLFMKeyCodeVolumeDown, + + [AKEYCODE_A] = GLFMKeyCodeA, + [AKEYCODE_B] = GLFMKeyCodeB, +@@ -1215,6 +1217,9 @@ static bool glfm__onKeyEvent(GLFMPlatformData *platformData, AInputEvent *event) + [AKEYCODE_NUMPAD_DOT] = GLFMKeyCodeNumpadDecimal, + [AKEYCODE_NUMPAD_ENTER] = GLFMKeyCodeNumpadEnter, + [AKEYCODE_NUMPAD_EQUALS] = GLFMKeyCodeNumpadEqual, ++ ++ [AKEYCODE_DPAD_CENTER] = GLFMKeyCodeMediaSelect, ++ [AKEYCODE_MEDIA_PLAY_PAUSE] = GLFMKeyCodeMediaPlayPause + }; + + GLFMKeyCode keyCode = GLFMKeyCodeUnknown; +@@ -2794,11 +2799,12 @@ ANativeActivity *glfmAndroidGetActivity(void) { + return platformDataGlobal->activity; + } + +-void *glfmGetAndroidActivity(const GLFMDisplay *display) { ++void *glfmGetAndroidActivity(const GLFMDisplay *display, void **jni) { + if (!display || !display->platformData) { + return NULL; + } + GLFMPlatformData *platformData = display->platformData; ++ *jni = platformData->jniEnv; + return platformData->activity; + } + diff --git a/subprojects/packagefiles/glfm/get_egl_internal.diff b/subprojects/packagefiles/glfm/android_get_egl_internal.diff index 3c9098c..3c9098c 100644 --- a/subprojects/packagefiles/glfm/get_egl_internal.diff +++ b/subprojects/packagefiles/glfm/android_get_egl_internal.diff |