25305 Commits

Author SHA1 Message Date
rdb
267907d329 dist: Support adding icons to Android applications
[skip ci]
2021-12-08 00:00:30 +01:00
rdb
17e00c5786 dist: Don't complain about libz.so being missing on Android
It's a system library there
2021-12-07 23:06:44 +01:00
rdb
60cc334cd9 gobj: Fix some TexturePeeker docstrings
[skip ci]
2021-12-07 23:05:49 +01:00
rdb
46b7fc6ee2 dist: Fix bug with grayscale icons becoming blue when scaled 2021-12-07 23:05:29 +01:00
rdb
25667f4094 dist: Fix bug with grayscale icons becoming blue when scaled 2021-12-07 23:04:39 +01:00
rdb
59ef701298 makepanda: Add back accidentally removed libc++_shared.so on Android 2021-12-07 23:03:37 +01:00
rdb
44e10d10a0 Support deploying Python apps for Android using bdist_apps 2021-12-07 21:00:08 +01:00
rdb
4c7e513dfd dist: Always compile Python code with optimize level 2 2021-12-07 18:12:19 +01:00
rdb
954bc75314 makepanda: Don't use SOABI from config vars when cross-compiling
[skip ci]
2021-12-06 22:34:01 +01:00
rdb
af6230cfda android: Update android_native_app_glue to latest from upstream 2021-12-06 22:30:13 +01:00
rdb
d473c794d9 makepanda: Use llvm-strip on Android instead of strip 2021-12-06 22:29:30 +01:00
rdb
9230af94a3 makepanda: Replace dx with d8 for building Dalvik executable (Android)
Also, do it in makepanda instead of in makepackage
2021-12-06 22:28:42 +01:00
rdb
798fa90513 makepanda: Fix missing OpenSLES link on Android 2021-12-06 22:27:32 +01:00
rdb
c594ab38ef Support building pandagles2 on Android 2021-12-06 22:26:56 +01:00
rdb
0122c07e10 makepanda: Add pandagles2 to Config.prc, fall back if pandagl not built 2021-12-06 22:25:28 +01:00
rdb
396e623aba android: Send nout to Android log, don't duplicate output to stderr 2021-12-06 22:24:36 +01:00
rdb
9dad304f85 interrogatedb: always define PyObject_CallNoArgs as inline 2021-12-06 22:23:44 +01:00
rdb
d9e335e978 makepanda: Updates for Android compilation with latest NDK
[skip ci]
2021-12-05 17:13:04 +01:00
rdb
c977df33a3 express: Fix issue on platforms without signed cha 2021-12-05 00:01:24 +01:00
rdb
a99a1ed991 makepanda: Android build fixes 2021-12-05 00:00:52 +01:00
rdb
cdadd00e72 makepanda: Optimize WriteEmbeddedStringFile function
This function took ages with a debug build of Python
2021-12-04 21:57:55 +01:00
rdb
5de31c6293 Merge branch 'release/1.10.x' 2021-12-04 21:57:35 +01:00
Daniel
80892ede94 assimp: Support compilation with Assimp 5.x
Closes #1212
2021-12-04 20:44:21 +01:00
rdb
420d1cee61 makepanda: Fix unclosed file handles 2021-12-04 20:43:07 +01:00
rdb
24755bc8eb gui: Allow OnscreenImage to be used before ShowBase is created
Use TexturePool directly instead of a loader being present in the builtins

Fixes #1209
2021-12-04 20:40:29 +01:00
rdb
82ebf908fa gobj: Fix spelling error in doc of async-load-delay config variable 2021-12-04 20:38:31 +01:00
rdb
e2c26adcf0 event: Mention that ButtonEvent API is not stable for Python use 2021-12-04 20:38:13 +01:00
rdb
6419acb56f actor: Fix deadlinks to renamed manual page in API reference 2021-12-04 20:37:50 +01:00
rdb
985ec3061c makepanda: Fix deprecated spelling for threading API
The new spelling is available since Python 2.6, so there is no chance of breakage here.
2021-12-04 20:37:14 +01:00
rdb
11edd1a0dc ffmpeg: Change thread to use lambda 2021-12-01 11:34:48 +01:00
rdb
b1b05c2be9 thread: Allow arbitrary std::function (incl. lambdas) in GenericThread 2021-12-01 11:31:45 +01:00
rdb
37b45a010d gobj: More efficient tracking of simple image changes
Remove the separate simple_image_modified field, instead, the image_modified value is updated if the simple image is changed while there is no RAM image.

This robustifies the tracking on the GSG end, which previously ended up repeatedly calling upload_texture() unnecessarily
2021-11-30 10:56:48 +01:00
rdb
fa0ea312ea gobj: Move TextureReloadRequest to new Texture::async_ensure_ram_image()
The task is implemented with just a simple lambda, much more compact than a whole TextureReloadRequest task.  The latter is now deprecated.

Since Loader can't be used within Texture, there's now a new task chain, configurable with texture-reload-num-threads and texture-reload-thread-priority.  This does mean that it no longer happens on the same thread as model loads, but I think that's fine, and perhaps texture reloads should be higher priority than model loads anyway since a long texture reload delay with allow-incomplete-render directly and negatively affects user experience during gameplay.

The new name also better communicates that it just calls get_ram_image(), it doesn't force a reload, but we could add an async_reload() for that if we want.
2021-11-30 10:34:00 +01:00
rdb
9e7ca63662 Add missing @since to docstrings of some new methods 2021-11-29 16:02:22 +01:00
rdb
b42fd4ee4f makepanda: Don't copy over old Python 2-only Pmw versions 2021-11-29 14:50:01 +01:00
rdb
ab9830b6ff egg-qtess: Squelch compiler warning 2021-11-29 14:49:41 +01:00
rdb
653cc3e091 event: Support C++11 lambdas as event handlers
It's unfortunate that we now have three maps on EventHandler for three different types of functions.  I'd love to unify them all under std::function, but the fact that it doesn't support comparison means the behavior would be different.

Perhaps in the future we can create a new interface or deprecate the existing behaviors and unify everything under std::function.
2021-11-29 14:48:06 +01:00
rdb
4af5bc9e6d event: Support lambdas as tasks via new FunctionAsyncTask
This is intended to replace GenericAsyncTask.
2021-11-29 14:47:44 +01:00
rdb
7dab0df061 cmath: Fix compilation error on macOS with sincos 2021-11-28 16:48:45 +01:00
rdb
c980643649 chan: Lock PartBundle while binding animation
This seems like the right thing to do that could prevent some potential race conditions; let me known if this is breaking anything.
2021-11-28 16:21:59 +01:00
rdb
480226a97a cmath: Use combined sincos on GNU where it is available 2021-11-28 16:14:36 +01:00
rdb
78fb565f2b Merge branch 'release/1.10.x' 2021-11-28 16:14:18 +01:00
loonaticx
15c84afbe9 doc: Improve egg syntax documentation
[skip ci]

Closes #1199
2021-11-28 16:12:44 +01:00
rdb
980399d142 event: Expose ButtonEvent to Python 2021-11-28 14:36:20 +01:00
rdb
2abf867203 gobj: Don't load textures when loading bam file if preloading is off
This is wasteful (especially when the bam file already has the simple RAM images baked in if needed) since we are throwing away the texture data right away anyway.  Just locate it on disk, it will be loaded later when it is needed.

Fixes #1208
2021-11-28 14:04:41 +01:00
rdb
c0a9123dde gobj: Fix TextureReloadRequest not reloading in certain situations
This prevented async texture loading from working unless mipmapping was enabled
2021-11-28 14:01:33 +01:00
rdb
5eaa67fbc9 gobj: Add TexturePool::get_texture() for querying tex from pool 2021-11-28 14:00:59 +01:00
rdb
5cad0eb973 glgsg: Don't use simple RAM image in shaders for non-sampler2D types
Simple RAM images are always 2D right now, so this would otherwise cause an error.
2021-11-28 13:59:46 +01:00
rdb
8f9d23ff29 linmath: Remove redundant sin() calculation in LQuaternion 2021-11-28 13:58:13 +01:00
rdb
54de9f9fa4 glgsg: Fix possibility of simple RAM image going out of scope 2021-11-28 13:57:20 +01:00