Mis012
2e9099baed
AssetManager: use locking
2025-03-07 18:41:21 +01:00
Mis012
f0fcd47c80
replace our implementation of applyStyle with a native function that calls into libandroidfw
...
also change a few things to work with latest libandroidfw, since we are now using
it's helper functions that need to agree on e.g STYLE_NUM_ENTRIES with the Java
code.
2025-02-27 22:44:55 +01:00
Mis012
d97c3ee048
AssetManager: update to use v2 of libandroidfw C api
2025-02-27 22:44:55 +01:00
Julian Winkler
54aaa42d86
ViewGroup: prevent NotFoundException caused by log message
2025-01-11 22:42:25 +01:00
Mis012
279c95becb
borrow relevant parts of AOSP commit dbee9bb342cdfaa5155b1918f90262c05e2464cb
...
Our SVG-based VectorDrawable implementation still relies on `getDefaultColor`
but exceptions are no longer thrown when parsing VectorDrawable xml files
which use gradients as colors.
2025-01-02 22:25:13 +01:00
Mis012
7d59407138
AssetManager: implement resolveAttrs
2025-01-02 22:18:45 +01:00
Mis012
060ea72f94
AssetManager: use AndroidManifest.xml to identify apks
...
resources.arsc may be missing in rare cases
2024-12-20 00:12:01 +01:00
Julian Winkler
acdd3c88cc
AssetManager: fix resource loading if APK path contains spaces
...
Spaces will get encoded to %20 by the ClassLoader. We need to decode
them again to get the original path.
2024-11-01 17:49:20 +01:00
Mis012
4fd7e2cbb1
AssetManager: fix up AssetInputStream
2024-06-13 20:37:35 +02:00
Mis012
92bb75d19f
AssetManager: fix open and openNonAsset not throwing exception on error
2024-05-27 14:01:43 +02:00
Julian Winkler
71717edc58
AssetManager: fix Asset XML file not found error on 32bit
...
The xmlBlock variable is now a pointer with the recent changes.
So, we shouldn't compare it with >= 0.
The error went unnoticed, because it was only tested on 64bit until now
2024-05-26 16:20:48 +02:00
Julian Winkler
ff3c103377
SoundPool: explicitly extract soundfile asset
...
With the recent changes assets are no longer extracted by default
2024-05-26 16:20:48 +02:00
Mis012
4374ac01ad
AssetManager: use libandroidfw to read assets straight from the apk file
...
they can still be put on the filesystem and will be read from there
preferentially, though overriding assets in this way can confuse
some creatively written apps and cause them to crash.
2024-05-26 00:10:16 +02:00
Julian Winkler
778d19f268
remove remaining dependencies on ARSClib
2024-05-23 23:30:03 +02:00
Julian Winkler
cc5d4a3cb3
use libandroidfw for resource XML parsing
...
androidfw is implemented in native code and has much better performance
than ARSClib
2024-05-12 16:49:14 +00:00
Julian Winkler
ce6b83ad81
AssetManager: load style with parser.getAttribute(null, "style")
...
This way, we get the type as well and can check for it being an
attribute properly.
2024-04-09 18:19:44 +02:00
Mis012
0352a307b9
AssetManager: applyStyle: use loadResourceBagValue instead of creating a temporary theme
2024-04-08 18:28:18 +02:00
Mis012
0f14370c8b
AssetManager: applyStyle: handle "style" value being an attribute, append styles to global theme instead of replacing it
2024-04-07 23:23:31 +02:00
Julian Winkler
005e2299bd
automatically enable UI_MODE_NIGHT when gtk-theme-name contains "dark"
...
gtk-theme-name is only checked once at start up
2024-03-10 12:05:33 +01:00
Julian Winkler
f3292a76f2
AssetManager: special handling for style and array types
...
These are complex and can't be loaded into a TypedArray
2024-02-10 10:28:48 +01:00
Julian Winkler
7c59ed33bd
make AssetManager feature complete with pre androidfw version
2024-02-06 16:41:49 +01:00
Julian Winkler
c1d8956309
AssetManager: use libandroidfw for everything except XML parsing
...
binary XML parsing still relies on ARSClib for now
2024-02-06 16:41:49 +01:00
Julian Winkler
8d4d0021b3
use libandroidfw also for themes
2024-02-06 16:41:49 +01:00
Julian Winkler
3284518418
AssetManager: use libandroidfw instead of ARSClib for resources.arsc parsing
...
This reduces startup time and RAM usage. Not yet feature complete with
the ARSClib based implementation, but Gravity Defied runs already
2024-02-06 16:41:48 +01:00
Julian Winkler
493cb8284a
fix some Drawable related crashes in NewPipe
2023-12-30 23:38:56 +01:00