Joseph Cloutier
f14dfc8462
Work around unreliable clipboard on Linux.
...
Most likely SDL_waylandvideo.c is to blame, but I don't know enough to
rule out SDL_x11video.c.
2022-06-07 13:36:35 -04:00
Joseph Cloutier
be8fd592a3
Document JNI function arguments.
2022-06-07 12:14:32 -04:00
Joseph Cloutier
14671facef
Parse JNI class names more intelligently.
2022-06-07 12:05:50 -04:00
Joseph Cloutier
0e6bfa830b
Allow running native apps from other directories.
...
It isn't always safe to assume `./` is the app directory, and removing
that assumption opens up options.
Requires at least Haxe 3.4, but I don't think Lime supports 3.3 anyway.
2022-06-07 11:47:18 -04:00
Joseph Cloutier
c13f02ef9c
Check all asset types if type == null.
...
According to OpenFL's documentation, `type` is
"The asset type to match, or null to match any type."
2022-06-06 23:07:03 -04:00
Joseph Cloutier
6652a6f7ab
Simplify switch statement.
...
`cast` can handle `null`; no need for a ternary operator.
2022-06-06 23:00:01 -04:00
Joseph Cloutier
3d3bcc4ebc
Set minimum-sdk-version to 21.
...
For parity with #1519 , and to resolve #757 .
2022-06-06 22:20:15 -04:00
player-03
2286704ed3
Add HashLink to the list of submodules.
2022-06-06 20:51:42 -04:00
player-03
238428c7ea
Merge pull request #1509 from player-03/icon_priorities
...
Implement `Icon` priorities.
2022-06-06 01:14:55 -04:00
player-03
d4f5c04d22
Merge pull request #1496 from player-03/android-ndll
...
Don't expect Android extensions to use ndlls
2022-06-06 01:02:49 -04:00
Joseph Cloutier
2f68d916e2
Merge branch 'develop' into submodules
2022-06-06 00:08:47 -04:00
player-03
b03edaec73
Use Java 11 to build Android.
...
This is required by the newer Gradle plugin.
2022-06-05 23:53:53 -04:00
Joseph Cloutier
ab8003640b
Use type hint in findMatch().
...
Haxe 3 can't deduce the type without it.
2022-06-05 23:49:21 -04:00
Joseph Cloutier
744b476f54
Add acceptSmaller argument.
...
I finally figured out why `findNearestMatch()` was coded the way it was.
2022-06-05 23:25:56 -04:00
Joseph Cloutier
793aa69ff4
Don't ignore priority argument.
2022-06-05 23:09:07 -04:00
Joseph Cloutier
67e4044abc
Merge branch 'develop' into single_threaded_async
2022-06-05 22:42:29 -04:00
Joseph Cloutier
46acd3b373
Target Android API level 30.
...
https://developer.android.com/distribute/best-practices/develop/target-sdk
2022-06-05 22:38:48 -04:00
Joseph Cloutier
8bcbafd587
Update the Android Gradle Plugin.
2022-06-05 22:38:08 -04:00
Joseph Cloutier
96bfa805cf
Add instructions to debug Java classes.
...
The Java compiler complains about deprecated features and unsafe
operations, but it's surprisingly hard to get the details. Here's how.
2022-06-05 22:37:07 -04:00
Joseph Cloutier
87611eeed1
Remove uses-sdk tag.
...
This is now redundant, and sometimes even causes builds to fail.
2022-06-05 22:37:07 -04:00
Joseph Cloutier
f81439d1d2
Use androidX when available.
...
https://developer.android.com/jetpack/androidx/
2022-06-05 22:37:07 -04:00
Joseph Cloutier
ded22af195
Replace references to jcenter().
...
https://developer.android.com/studio/build/jcenter-migration
Gradle considers this function a "deprecated feature."
2022-06-05 22:37:07 -04:00
Joseph Cloutier
fa7f487595
Replace ndk.dir with ndkPath.
...
https://developer.android.com/studio/projects/configure-agp-ndk#agp_version_41
The documentation tells you to be careful about this, since you're
putting local-only information into a file that gets uploaded to version
control, but Lime doesn't really need to worry about that.
Granted, Lime DID use local.properties, but that's no longer practical.
2022-06-05 22:37:07 -04:00
player-03
2cd7161bbe
Don't expect Android extensions to use ndlls
...
I can't think of any practical reasons for an Android extension to compile an ndll. All of Android's system functions require Java, not C++, and you can get the speed of C++ just by writing Haxe code.
I surveyed several Android extensions on lib.haxe.org, and not one of them used ndlls when targeting Android.
2022-06-05 22:36:01 -04:00
player-03
80b9b89908
Merge pull request #1535 from player-03/buildBuffer
...
Only call `buildBuffer()` when needed.
2022-06-04 01:23:52 -04:00
Joseph Cloutier
17232fd7dc
Remove trailing whitespace.
2022-06-03 23:14:27 -04:00
Joseph Cloutier
ad3a632927
Only call buildBuffer() when needed.
...
Turns out, `HTTPRequest`'s call is only needed for internet requests.
Files on the local machine will be loaded directly into `bytes`, leaving
`buffer` empty. Calling `buildBuffer()` will then delete the data.
2022-06-03 23:14:16 -04:00
Joseph Cloutier
60dd8803c1
Fix Windows header conflict.
2022-06-03 19:38:11 -04:00
Joseph Cloutier
50ff65956f
Add legacy Pi driver support.
...
Co-authored-by: Patrick Gutlich <patrick@gepatto.nl >
2022-06-03 18:39:45 -04:00
Joseph Cloutier
689fed4545
Merge branch 'develop' into submodules
2022-06-03 18:36:03 -04:00
player-03
2d028bf75f
Merge pull request #1534 from player-03/ForegroundWorker
...
Add thread management tools for Android
2022-06-03 18:25:09 -04:00
Joseph Cloutier
f70b43a543
Explain ForegroundWorker's main use case.
2022-06-03 18:04:32 -04:00
Josh Tynjala
8a3b990f98
MacPlatform: use executableDirectory instead of applicationDirectory when copying HashLink (references #1517 )
2022-06-03 13:19:25 -07:00
player-03
276a8f6c8a
Merge pull request #1517 from Apprentice-Alchemist/feature/update-hashlink
...
Update hashlink.
2022-06-02 18:34:19 -04:00
Joseph Cloutier
34817221d8
Adjust RPI build settings.
...
Co-authored-by: Patrick Gutlich <patrick@gepatto.nl >
2022-06-01 00:27:46 -04:00
Joseph Cloutier
afbd7e15f8
Fix null pointer error in FileDialog.hx.
...
Co-authored-by: ShaharMS <88977041+ShaharMS@users.noreply.github.com >
2022-06-01 00:15:47 -04:00
Joseph Cloutier
c48f1fb44a
Try a different approach to haxe_ver.
2022-05-31 03:00:17 -04:00
Joseph Cloutier
8015148ee0
Fix conditional compilation.
...
For real this time, definitely, hopefully, maybe.
2022-05-31 02:37:52 -04:00
Joseph Cloutier
894445687e
Remove nonexistent function calls.
...
Earlier Haxe versions just used `EntryPoint`.
2022-05-31 02:31:59 -04:00
Joseph Cloutier
312dd70d72
Never inline ForegroundWorker functions.
...
The early `return` is incompatible with it.
2022-05-31 02:06:34 -04:00
Joseph Cloutier
6e86e45851
Implement ForegroundWorker.
2022-05-31 01:06:56 -04:00
Joseph Cloutier
7890951d12
Add MainLoop support.
...
Pros: It's a standard Haxe feature that other Haxelibs may rely on. Plus
it offers built-in thread safety, unlike `onUpdate`.
Cons: It incurs two `mutex.acquire()` calls per frame.
2022-05-30 16:37:43 -04:00
Joseph Cloutier
16166e1a0d
Fix RPI compile errors (incomplete).
...
At least, these changes should be a step in the right direction.
2022-05-28 14:55:50 -04:00
Joseph Cloutier
088b43a37a
Don't compile joystick HIDAPI code on iOS.
...
Per README-ios.md and SDL_config_iphoneos.h, it's disabled by default.
2022-05-28 08:34:04 -04:00
Chris Speciale
02617a854d
NativeHTTPRequest: Improve buffer management for O(1) performance
...
Fixes debilitating issue on Native where buffer creation created an O(n) slowdown
2022-05-27 23:03:14 -04:00
Joseph Cloutier
f3aff7f274
Compile PNG's "intrinsics" when targeting arm64.
...
As noted in pngpriv.h, the alternative (assembly code) doesn't currently
work on arm64.
There's no mention of iOS or tvOS, so maybe we could remove those?
2022-05-27 20:30:07 -04:00
Joseph Cloutier
821638ae34
Work around inconsistent header inclusion.
...
Overriding headers has always been risky, and finally we see why.
Apparently on iOS, files may be compiled in such a way that the original
SDL_config.h file is included, not Lime's custom one. It's hard to do
anything more than we've already done to manage include order, so we
need to find another option.
One such option is to make the two files as similar as possible, such
that it usually doesn't matter which one ends up being included. Then we
only set `USING_GENERATED_CONFIG_H` when it really matters.
2022-05-27 03:59:43 -04:00
Joseph Cloutier
03f5dcbf82
Don't enable ARC twice.
...
If `OBJC_ARC` is set, then `-fobjc-arc` was also set already.
2022-05-27 03:29:07 -04:00
Joseph Cloutier
9d56c6df4a
Enable ARC when compiling SDL.
...
SDL_cocoavideo.m now enforces this, as of this commit:
ec8fa57750
That commit also removed the destructors from SDL_render_metal.m, which
implies it's required on iOS too.
And before anyone asks, SDL seems to have no plans to back down on this.
2022-05-26 21:13:49 -04:00
player-03
6db5820f97
Merge pull request #1533 from pozirk/develop
...
Add `exported="true"` to AndroidManifest.xml
2022-05-26 18:23:20 -04:00