Commit Graph

17 Commits

Author SHA1 Message Date
Mis012
21627aecad ANativeWindow: make the while loop hack work on main thread 2024-04-17 19:27:16 +02:00
Mis012
25a0a44638 libandroid: xr: remove XR_KHR_android_create_instance from extension list 2023-12-07 14:55:30 +01:00
Nikita Travkin
9881f2fa31 libandroid: xr: don't assume android GLES 2023-11-29 13:47:36 +01:00
Nikita Travkin
0fb6754598 libandroid: xr: override procaddr with bionic symbols 2023-11-25 20:15:23 +01:00
Mis012
9ef2151c5e GLSurfaceView: remove old implementation, import the one from AOSP
Now that we have a reasonably well working SurfaceView implementation,
it is actually cleaner to just implement GLSurfaceView the way AOSP
does. In fact, their code doesn't have any weird dependencies, and
can mostly be used as-is.

The AOSP code is pure Java, which means we had to implement some
EGL wrappers.

This change fixes issues with Wayland (it only ever worked because
the pbuffers were allocated using an XWayland EGLDisplay), and
with resizing (which we simply didn't support), all while getting
rid of quite some (arguably not very readable) LoC.
2023-10-20 20:54:37 +02:00
Julian Winkler
b340032e9f impement android.media.MediaCodec using libavcodec
The current implementation requires a VA-API driver and a Wayland
compositor with YUV-buffer support. GNOME supports YUV-buffers
since the recent version 45 release
2023-10-14 18:29:33 +02:00
Mis012
c326cad04e misc cleanup, address some warnings 2023-09-25 19:56:39 +02:00
Markuss Broks
beca82142c libandroid/native_window.c: Implement X11 support
Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
2023-09-19 15:00:46 +02:00
Nikita Travkin
d3e5c6ee70 api-impl,libandroid: Add some stubs, mostly 2023-09-19 14:44:50 +02:00
Mis012
e1cf5c7047 libandroid/native_window.c: make Vulkan work, add refcount 2023-09-14 21:48:15 +02:00
Mis012
0a9fe3caa9 src/libandroid/native_window.c: [belongs in openxr_bio]: use dlopen/dlsym to avoid hard dependency on openxr loader 2023-01-09 13:55:25 +01:00
Mis012
2a7345e44e src/libandroid/native_window.c: the part that should go in libEGL_bio: intercept eglGetProcAddress so we can stub extensions 2023-01-05 19:00:27 +01:00
Mis012
eb9b2cb53e src/libandroid/native_window.c: implement wrappers around some OpenXR stuff so we can run OpenXR apps 2022-12-31 17:17:10 +01:00
Mis012
3616a41353 src/libandroid/native_window.c: check for NULL in bionic_eglCreateWindowSurface 2022-12-01 14:44:16 +01:00
Mis012
231ac88dbd make touch input work with apps using SurfaceView 2022-11-09 15:03:13 +01:00
Mis012
6a1d2f4ed4 replace use of glfw for SurfaceView with use of wayland subsurface positioned over a Gtk widget 2022-11-02 14:37:34 +01:00
Mis012
b801f0fb3c implement some stuff to make exaple SDL app run
NOTE: the main addition in this commit is WIP support for apps which
render on an EGL surface obtained using ANativeWindow_fromSurface

currently, this EGL surface is obtained by creating a 700x700 pixel
window with GLFW (the 700x700 size is hardcoded in several places)
and only Wayland is supported

ideally, we'd want to use a wayland subsurface to position the EGL
surface above the Surface widget it's associated with (and do
whatever for X11)
2022-10-26 18:39:04 +02:00