Commit Graph

234 Commits

Author SHA1 Message Date
Julian Winkler
cc5d4a3cb3 use libandroidfw for resource XML parsing
androidfw is implemented in native code and has much better performance
than ARSClib
2024-05-12 16:49:14 +00:00
Julian Winkler
0ebbfc9461 set GTK_OVERFLOW_HIDDEN again for WrapperWidgets with allocation
This is needed for RecyclerView, which will be allocated because of the
onTouch() listener.
2024-05-11 13:17:54 +02:00
Julian Winkler
e4a399f849 use AndroidLayout for all JavaWidgets 2024-05-11 07:07:24 +02:00
Julian Winkler
f82af6ecb7 allocate transparent {WrapperWidget / JavaWidget} 0x0 and draw children in overflow area
This prevents overlay widgets from blocking touch events.

Androids ViewGroup.dispatchTouchEvent() loops over all children and only breaks if an eventhandler returns true. Gtk on the other hand stops at the first sensitive child. Even if the eventhandler returned false.
2024-05-11 07:07:24 +02:00
Julian Winkler
64411c75aa fix build on Debian 12 / GTK 4.8 2024-05-06 07:28:56 +02:00
Mis012
a99dfd80cc AudioTrack: fix getPlaybackHeadPosition and write
this fixes audio sync in exoplayer
2024-04-28 23:39:07 +02:00
Mis012
341e39463a api-impl: copy GradientDrawable from AOSP, some stubs 2024-04-23 19:14:41 +02:00
Mis012
31929d2253 ignore deprecation warnings for per-widget css, switch gtk_widget_translate_coordinates to gtk_widget_compute_point 2024-04-20 16:34:01 +02:00
Mis012
b52e08fd7a ImageView/ImageButton: don't use deprecated gtk_picture_set_from_pixbuf, reduce code duplication 2024-04-20 00:08:09 +02:00
Mis012
98d17ac25e fix some gcc-reported warnings 2024-04-20 00:05:51 +02:00
Mis012
21627aecad ANativeWindow: make the while loop hack work on main thread 2024-04-17 19:27:16 +02:00
Mis012
db3ba9b929 api-impl-jni: Canvas: fix 32bit compilation 2024-04-17 19:25:41 +02:00
Mis012
f52a221c73 android_os_MessageQueue: move looper prototypes to header, fix incorrect prototype 2024-04-15 23:12:58 +02:00
Mis012
e1abceee85 api-impl: more stubs to make OsmAnd launch
with latest bionic_translation, OsmAnd doesn't crash in native code
2024-04-14 15:15:42 +02:00
Julian Winkler
d5c2c122fc MediaCodec: make use of GtkGraphicsOffload when gtk >= 4.14
This replaces our custom subsurface implementation and has the
advantages, that the subsurface gets repositioned automatically and it
also supports underlay surfaces, so that the application can put control
widgets on top of the SurfaceView.

Our custom subsurface implementation will still be used for GL rendering
2024-04-13 15:25:39 +02:00
Mis012
2802aaa28d api-impl: add stubs / simple stuff for OsmAnd
without native libs present, launches and renders white square
in map view; with native libs present, segfaults in bundled skia
2024-04-13 15:22:38 +02:00
Mis012
fefd2f108b ImageView: handle setScaleType where it maps trivially to Gtk 2024-04-10 23:48:11 +02:00
Mis012
25325ca4e5 Paint: implement setAntiAlias, handle ANTI_ALIAS_FLAG 2024-04-09 18:58:05 +02:00
Julian Winkler
3d9eb9611f GskCanvas: implement drawPath, rotate, translate, save, restore
This is enough to make DrawerArrowDrawable functional.

drawPath() only draws line segments for now.
2024-04-09 18:19:18 +02:00
Julian Winkler
74bedcc93c implement Drawable.invalidateSelf() 2024-04-09 18:19:18 +02:00
Julian Winkler
ae58d2b319 implement TextView.setCompoundDrawables()
This adds an additional GtkBox for every TextView
2024-04-09 18:19:18 +02:00
Julian Winkler
849701c5c4 Drawable: call getIntrinsic{Width/Height} 2024-04-09 18:19:18 +02:00
Julian Winkler
2f4cd3917f implement some APIs needed for OctoDroid 2024-04-09 18:19:13 +02:00
Mis012
b229d83ad8 GskCanvas: implement drawRect 2024-04-07 23:23:30 +02:00
Mis012
e94a78fd14 ImageView: remove 'broken image icon' hack
most drawables should work now, and we need to support empty drawables
2024-04-03 01:55:03 +02:00