Julian Winkler
131b53e9b1
Bitmap: workaround GTK unreferencing the default GdkDisplay during offscreen rendering
2025-10-26 16:06:29 +01:00
Julian Winkler
16db14ae54
View.serVisibility(): request relayout from parent
...
Since we no longer call requestLayout() recursively, it is now important
on which View the method is called.
2025-10-26 11:08:03 +01:00
Julian Winkler
86afbe26d1
ViewGroup: don't request layout for addInLayout / removeInLayout
2025-10-26 11:08:03 +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
377c140d7c
View.requestLayout(): avoid recursion
...
Calling this method recursively can confuse Views that overwrite it.
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
162ce00ba4
add missing openAssetFile() method in ContentProvider subclasses
...
Fixup of previous commit where openAssetFile() was added as abstract method.
2025-10-21 19:02:00 +02:00
Julian Winkler
82477865ad
api-impl: add some methods to make the WhatsApp video player functional
2025-10-21 06:59:59 +02:00
Julian Winkler
72e86cba13
PackageManager.getApplicationInfo(): don't pretend that other packages are installed
...
So that WhatsApp no longer thinks the task killer apps are installed.
2025-10-21 06:59:59 +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
Julian Winkler
f5c1de9782
EditText: handle setText(null) properly
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
70e879c61b
add documentation for the DBus API of cross application Intents
2025-10-13 15:16:13 +02: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
f208e944d2
View: respect requestLayout() calls also from inside onMeasure()
...
Previously, we accidentally cleared the flag after onMeasure(). This
fixes one cause for the bug where you had to resize the window to see
the content, but the bug still persists in some apps like Shosetsu.
2025-10-10 12:18:07 +02:00
Julian Winkler
d4aca99823
View: replace custom isAttachedToWindow tracking with GTK signals
2025-10-10 12:05:48 +02:00
Julian Winkler
2288f2bce9
main.c: remove construct_classpath logging
2025-10-08 16:06:53 +02:00
Julian Winkler
d3c0a09331
PackageParser: don't validate signing certificate by default
...
This significantly speeds up startup time with larger APK files.
NewPipe launches 0.5 s faster.
WhatsApp launches 3.5 s faster.
2025-10-08 16:04:33 +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
076ade2c5f
api-impl: misc stubs and fixes for WhatsApp
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