Julian Winkler
0064677755
split handle_cache out of util.c
2025-07-08 23:19:17 +02:00
Julian Winkler
4ec150c802
separate Intent serialization and action handling out of the NotificationManager
...
This way, the mechanism can in the future also be used to send Intents
from one app to another.
2025-07-08 23:07:42 +02:00
Julian Winkler
3708cc990e
NotificationManager: use GIO instead of libportal
...
GIO's notification implementation makes the code more readable and has
the advantage of supporting multiple notification specifications.
By default we will now use freedesktop notifications when running
without `.desktop` file and XDG-portal notifications when running
with `.desktop` file.
To prevent dynamic notification updates from arriving in wrong order at
the desktop environment, we need to manually queue them up and make sure
that there is at least 200ms delay between updates.
2025-07-07 22:38:10 +02:00
Mis012
2a0c6cd455
main-executable: handle drawable-based app icons by rendering them into SVG
2025-06-21 01:23:09 +02:00
Mis012
6031eecefc
api-impl-jni: add workarounds for Gtk's non-graceful handling of layout changes during the snapshot phase
2025-06-20 22:36:09 +02:00
Mis012
3a3366abfa
Paint: treat stroke width 0 as 1 until we implement special handling for it
2025-06-10 00:59:37 +02:00
Mis012
65a7e34871
Path: add arcTo and addArc, minor cleanup
2025-06-10 00:48:41 +02:00
Mis012
99d1a38918
EGLImpl: fix crash when eglDestroySurface is passed EGL_NO_SURFACE
2025-06-08 13:43:52 +02:00
Mis012
364070fa1f
api-impl: misc stubs and formatting fixes
2025-06-08 13:42:42 +02:00
Julian Winkler
3d4f386db0
View.setFullscreen(): mock the window size while request is pending
2025-06-04 22:48:23 +02:00
Julian Winkler
542e6222b7
MediaCodec: add VP8 and VP9 codecs
2025-06-04 22:48:23 +02:00
Julian Winkler
12d25c162f
onClickListener: stop event propagation if click was handled
2025-06-02 20:06:57 +02:00
Julian Winkler
7985381b60
implement MediaMetadataRetriever on top of MediaPlayer
...
also add MediaPlayer.getDuration() and MediaPlayer.getCurrentPosition()
2025-04-23 18:16:37 +02:00
Julian Winkler
49fa854c93
add a media ContentProvider
...
Every time the ContentProvider is accessed, a file chooser opens and the
selected file is then provided as media file.
2025-04-23 18:13:15 +02:00
Julian Winkler
68b8af1e1c
Activity: fix crash when finish() is called from onResume()
2025-04-21 07:47:44 +02:00
Julian Winkler
e652089252
map Android UnifiedPush to DBus UnifiedPush
2025-04-21 07:31:06 +02:00
Julian Winkler
ec45faaf87
View.dispatchTouchEvent(): implement ACTION_CANCEL for sythetic events
2025-04-19 15:32:27 +02:00
Julian Winkler
bd83e211d0
handle onClickListener for synthesized MotionEvents
...
Since synthesized events can't be handled by GTK, we also need to handle
gestures by ourself in that case.
2025-04-18 07:21:21 +02:00
Julian Winkler
8e40c13480
api-impl: add APIs for libGDX games
2025-04-09 13:01:13 +02:00
Nikita Travkin
882cd1b471
ATLKeyboard: Integrate with phosh and wayland IME
2025-04-02 16:58:17 +02:00
Mis012
bce91cc527
api-impl: add ATLKeyboardViewer to support launching IMEs
2025-04-02 16:58:17 +02:00
Mis012
9f93f95f4d
api-impl-jni: check in missed generated headers
2025-03-27 13:06:39 +01:00
Mis012
12121d2d48
LocationManager: expose more information from the backend to the apps
...
note: GnssStatus was accidentally bundled into ab5b600bf1
2025-03-27 13:06:39 +01:00
Mis012
340fae107e
PopupWindow: implement more stuff, mainly offset
2025-03-26 20:18:16 +01:00
Mis012
4d12ad5c90
View: add basic implemntation of dispatchTouchEvent
...
Some Views block all events going to their descendants, and
then synthesize new events themselves. Gtk doesn't allow event
synthesization, which makes this quite annoying to deal with.
This initial implementation definiely has some problems,
for example it seems to cause infinite loops in some cases,
however it surprisingly works well enough.
2025-03-26 20:06:15 +01:00