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
Julian Winkler
72a8b3a047
add more stubs
2023-11-12 12:16:23 +01:00
Mis012
0b0cfed345
misc: fix stuff up to make SDL example work again
...
it still behaves weirdly, should probably find some
other example since I don't trust my own code.
2023-10-29 22:48:02 +01:00
Julian Winkler
9025142bdd
AssetManager: speed up XML inflation using HashMap caching
...
This makes XML inflation around 10 times faster. Inflating a layout XML
with one TextView and one ImageView now takes 4 ms instead of 40 ms
2023-10-29 15:28:06 +01:00
Mis012
43306bf174
api-impl/android/content/res/AssetManager: fix infinite loop with suspicious self-referencing arsc entries
2023-10-09 20:11:36 +02:00
Mis012
1b33acb658
api-impl/android/content: implement metadata bundle in PackageInfo
2023-10-08 22:33:14 +02:00
Julian Winkler
97f8c2ed0f
Add some missing APIs.
...
android.widget.Filter and android.webkit.MimeTypeMap are copied from
AOSP. Other new classes are only stub implementations.
2023-09-01 16:05:26 +02:00
Julian Winkler
c6b98b14f8
Resources + LayoutInflater: throw same Exceptions as on AOSP
2023-09-01 12:39:20 +02:00
Julian Winkler
28cd0006bc
some fixes to make NewPipe not crash when layouting
2023-08-23 14:52:56 +02:00
Julian Winkler
c4b7bdc63d
ViewGroup: handle scroll events
2023-08-23 12:39:55 +02:00
Julian Winkler
34d214e9ae
AssetManager.java: fill indices array when loading TypedArray
...
This is needed for TypedArray.getIndexCount() and related functions
2023-08-22 22:30:03 +02:00