Commit Graph

435 Commits

Author SHA1 Message Date
Julian Winkler
131b53e9b1 Bitmap: workaround GTK unreferencing the default GdkDisplay during offscreen rendering 2025-10-26 16:06:29 +01:00
Julian Winkler
3b69e949d9 TextView: make sure getPaint().getTextSize() returns the expected value
Using pango_font_description_set_absolute_size() now to prevent previous
rounding errors when converting from pixels to points and back.

This is needed to prevent androidx AppCompatTextViewAutoSizeHelper from
constantly requesting a relayout.
2025-10-26 11:08:03 +01:00
Julian Winkler
7941a04ab3 Bitmap: use thread local GdkDisplay to fix glitches on X11
GdkDisplay is not thread safe on X11. We can't even use the default
display from main thread, because a GTK render thread may run concurrently.
2025-10-24 12:05:20 +02:00
Julian Winkler
7e7e6c0e6e android.text.Layout: convert byte index to character index
This fixes a WhatsApp crash when rendering text with emojis.
2025-10-21 06:59:59 +02:00
lsnow
46e9cbb0ba NotificationManager: check for null before adding an action button 2025-10-19 23:19:59 +08:00
Julian Winkler
b2f99da75b intent_serialize: use DBus name instead of package name
Applications may need to use a DBus name different from the package name.
For example, the Flatpak sandbox does not allow DBus names with less
than two dots, but many Android package names contain just one dot.
2025-10-13 15:15:46 +02:00
Julian Winkler
d4aca99823 View: replace custom isAttachedToWindow tracking with GTK signals 2025-10-10 12:05:48 +02:00
Julian Winkler
5f22164d82 fix build with glib < 2.84 2025-10-08 16:03:35 +02:00
Julian Winkler
2c64b6b345 atl_propagate_synthetic_motionevent: prevent infinite self propagation 2025-10-06 11:36:08 +02:00
Julian Winkler
f90499d1df FLAG_ACTIVITY_CLEAR_TOP: create Activity if it doesn't already exist
When originally implementing this flag, we forgot to handle cases where
the Activity does not exist.
2025-10-06 11:35:47 +02:00
Julian Winkler
b76eb0f1be implement Parcelable serialization using GVariantBuilder
This is needed for the error reporting notification intent in NewPipe
now that we support persistent notifications.
2025-10-05 08:46:53 +02:00
Julian Winkler
90bb5e4d10 GskCanvas: respect colorFilter in all drawing operations 2025-10-04 20:50:56 +02:00
Julian Winkler
d78fb53ce3 implement Canvas.clipRect() using gtk_snapshot_push_clip() 2025-10-04 17:45:03 +00:00
Julian Winkler
e58d8d2065 api-impl: stubs and fixes for Shosetsu 2025-10-04 17:45:03 +00:00
Julian Winkler
2269a400ad Try to start all external Services over DBus
No need to hardcode this only for Cloud Messaging
2025-10-01 12:07:42 +02:00
Julian Winkler
f7a29d8731 implement Google Cloud Messaging using DBus activatable GActions
This needs https://gitlab.com/android_translation_layer/gcm_service running in the
background.
For D-Bus activation, a D-Bus service file needs to be manually
installed under ~/.local/share/dbus-1/services.

Tested with FCM-Toolbox app.
2025-10-01 12:07:42 +02:00
Julian Winkler
e7318f0757 fixes for NewPipe version 0.28.0 2025-09-01 23:43:00 +02:00
Mis012
d52985a6df AssetManager: convert missed Java_android_content_res_AssetManager_list to use libandroidfw
It was broken since the conversion because we no longer extract assets.
2025-08-06 21:09:26 +02:00
Mis012
ebd16f01dc main-executable: extract native libs before instantiating the Application class 2025-08-03 18:53:23 +02:00
Julian Winkler
a9f68c976b startActivity(): implement Intent.FLAG_ACTIVITY_CLEAR_TOP 2025-07-28 22:27:50 +02:00
Julian Winkler
9e27cccc0d View.c: remove some uneccesary allocations which confuse composeUI apps 2025-07-28 22:27:50 +02:00
Julian Winkler
e5a6ef7251 AndroidLayout: ignore mesaure and allocate calls during drawing phase 2025-07-28 22:27:50 +02:00
Julian Winkler
6e6e9a3be8 api-impl: misc fixes and additions to make Telegram launch 2025-07-14 16:32:28 +02:00
Julian Winkler
bf5eb099bd api-impl: misc additions for different apps 2025-07-14 16:32:28 +02:00
Julian Winkler
b7843665ef handle drag-and-drop events as ACTION_SEND Intents 2025-07-14 12:25:04 +02:00