Commit Graph

966 Commits

Author SHA1 Message Date
Julian Winkler
387187a525 Activity: finish asynchron 2025-10-26 17:45:26 +01:00
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