Commit Graph

43 Commits

Author SHA1 Message Date
Julian Winkler
a8e39cd613 get Application class from AndroidManifest.xml and call onCreate() 2023-08-22 15:53:09 +02:00
Julian Winkler
c60e97f13f implement obtainStyledAttributes() functions properly 2023-08-22 15:51:13 +02:00
Mis012
4a1159f5cb api-impl: add misc stubs 2023-08-12 13:09:33 +02:00
Julian Winkler
18ca242096 support multiple Activities 2023-08-11 18:15:19 +02:00
Julian Winkler
88c585d9dc LocationManager: disable location access by default
environment variable ATL_UGLY_ENABLE_LOCATION can be set to enable it
2023-08-09 12:35:26 +02:00
Julian Winkler
4491de7f63 MessageQueue: integrate with glib main loop
Adds a special treatment for the main Looper to not block in java code,
but instead return to glib managed thread loop. Timeouts in the mainloop
are now handled using g_timeout_add_full().

Also defer Activity construction, so that every thing is set up properly
when the constructor runs.
2023-08-08 14:18:20 +02:00
Julian Winkler
77459e34e0 add AssetManager.getArrayIntResource and Context.getString 2023-08-08 14:18:20 +02:00
Julian Winkler
696e0ce714 implement LocationManager and orientation sensor using libportal 2023-08-08 14:18:20 +02:00
Julian Winkler
c72f3ba7d2 Canvas: use correct destination width and height 2023-08-08 14:18:20 +02:00
Julian Winkler
def91a688d handle overwritten onDraw function in WrapperWidget
This makes it easy to support for example ImageView with custom
onDraw function
2023-08-08 14:18:20 +02:00
Julian Winkler
22dcaf45e8 View: use GTK_ALIGN_CENTER for Androids GRAVITY_CENTER 2023-08-08 13:35:47 +02:00
Julian Winkler
520569f7c7 implement View.invalidate() 2023-08-08 13:35:47 +02:00
Julian Winkler
8c1e98b09c GLSurfaceView: fix eglGetDisplay for Wayland only sessions
EGL_DEFAULT_DISPLAY always tries to use X11
2023-08-08 10:54:20 +02:00
Mis012
08998b0076 make Looper, Handler, and MessageQueue work properly
this for example makes Unity apps not steal the main thread,
hanging Gtk.
2023-07-25 14:27:21 +02:00
Mis012
a61e44aad8 api-impl-jni/audio/android_media_AudioTrack.c: make this stuff noop by default
this particular implementation never worked particularly great, and thanks
to hardcoding could cause more harm then good.

export `HAX_AUDIOTRACK_PCM_DEVICE=sysdefault:CARD=Generic_1` to restore
previous behavior

TODO: use libOpenSLES to implement this maybe? we have to have it anyway...
2023-06-23 17:27:48 +02:00
Julian Winkler
997642d93a auto find main activity using AndroidManifest.xml 2023-06-21 22:38:08 +02:00
Julian Winkler
12e9e9788a load assets and bitmaps directly from apk 2023-06-21 22:38:08 +02:00
Julian Winkler
1a8e198e05 make RelativeLayout vertical by default and vexpand GLSurfaceView 2023-06-18 11:31:03 +02:00
Julian Winkler
c70e333883 View: handle View.INVISIBLE the same way as View.GONE 2023-06-18 11:31:03 +02:00
Julian Winkler
9e706927de implement android.media.SoundPool using GtkMediaStream 2023-06-18 11:31:01 +02:00
Julian Winkler
48ef2fffdf implement GLES20 java bindings
These are just one to one bindings for the native OpenGL 2.0 APIs
2023-06-18 11:28:40 +02:00
Julian Winkler
58ec3733d3 Bitmap: implement decodeStream, getPixels and recycle 2023-06-18 11:28:40 +02:00
Julian Winkler
c21d8532bc ImageView: use GtkPicture and actually show the image
GtkImage is intended for icons GtkPicture fits better
2023-06-18 11:28:40 +02:00
Mis012
34858d2fa6 remove incorrect offset correction from GLSurfaceView; handle ATL_DISABLE_WINDOW_DECORATIONS env 2023-01-09 14:50:17 +01:00
Mis012
4dd31731f9 src/api-impl: misc stubbing 2023-01-09 12:07:57 +01:00