Commit Graph

115 Commits

Author SHA1 Message Date
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
b52e08fd7a ImageView/ImageButton: don't use deprecated gtk_picture_set_from_pixbuf, reduce code duplication 2024-04-20 00:08:09 +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
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
ae58d2b319 implement TextView.setCompoundDrawables()
This adds an additional GtkBox for every TextView
2024-04-09 18:19:18 +02:00
Mis012
b229d83ad8 GskCanvas: implement drawRect 2024-04-07 23:23:30 +02:00
Julian Winkler
654d551377 View.setTranslationY(): queue allocate when called on CoordinatorLayout
androidx adjusts the translation a little bit and immediately
reverts it to trigger a layout pass on the CoordinatorLayout.

Calling gtk_widget_queue_allocate here makes CoordinatorLayout behave
correctly, but it causes strange issues with other Views. Therefore, it is
done only for CoordinatorLayouts for now.
2024-03-28 20:50:05 +01:00
Julian Winkler
8eb0c0a3c1 implement ColorFilter in GskCanvas
This is needed to make icons follow night mode setting
2024-03-24 22:13:28 +01:00
Julian Winkler
ad266c7821 add support for custom Java Drawables
This is made possible, by adding a second Canvas implementation which
can be used to render directly to GdkSnapshot objects

For now the only implemented method is drawBitmap(), this is already
enough to make VectorDrawableCompat functional
2024-03-24 22:13:28 +01:00
Julian Winkler
3d9468aa9f implement android.graphics.Path using skia 2024-03-24 22:13:28 +01:00
Julian Winkler
35f26faa90 ImageButton: implement setDrawable() 2024-03-24 22:13:28 +01:00
Julian Winkler
494605932c implement more APIs 2024-03-22 21:02:22 +01:00
Julian Winkler
7ee4effb86 implement android.widget.Spinner using GtkDropDown
Helper classes from ListView implementation are reused. The declarations
have been moved to a new header file AdaperView.h
2024-03-22 21:02:22 +01:00
Julian Winkler
dda3063e79 PopupMenu: use AOSP MenuInflater and support item visibility 2024-03-22 21:02:22 +01:00
Mis012
d122b2a528 api-impl: implement vibrator using evdev
we use the first vibrator that is marked for use with feedbackd in udev
2024-03-22 13:17:29 +01:00
Mis012
3022350844 SensorManager: accel: implement accelerometer data polling via /sys/bus/iio
for simplicity, we currently just take the first device in `/sys/bus/iio/devices`
that looks like an accelerometer.
2024-03-21 21:13:44 +01:00
Julian Winkler
50fa760c63 NoitficationManager: implement cancel 2024-03-18 23:12:04 +01:00
Julian Winkler
cdcc3411aa NotificationManager: delete ongoing and MediaStyle notifications on exit
The XDG Portal API doesn't have a concept of ongoing notifications.

MediaStyle notifications could be changed to MPRIS in the future.
2024-03-18 15:41:44 +01:00
Julian Winkler
acb00a8beb NotificationManager: add support for icons 2024-03-18 14:37:56 +01:00
Julian Winkler
45de09a191 notification support using libportal 2024-03-18 07:26:25 +01:00
Julian Winkler
b14549e639 implement ConnectivityManager using GNetworkMonitor 2024-03-17 22:39:13 +01:00