Commit Graph

5418 Commits

Author SHA1 Message Date
player-03
55dfc267bb Merge branch '8.2.0-Dev' into ConfigData 2024-01-13 23:41:14 -05:00
Joseph Cloutier
6d437283af Merge branch 'develop' into 8.2.0-Dev 2024-01-13 23:35:33 -05:00
Joseph Cloutier
8b07a83991 Remove unnecessary casts. 2024-01-13 16:15:57 -05:00
Joseph Cloutier
9718b8a454 Improve lime.tools.Platform type safety.
We shouldn't have to cast it every time!
2024-01-12 15:22:24 -05:00
Joseph Cloutier
31ad76f888 Reduce indentation in ProjectXMLParser.
It's more readable when there's more text and less whitespace onscreen.
2024-01-12 15:00:39 -05:00
Joseph Cloutier
6725825469 Initialize defines in HXProject.
This way, XML and HXP projects will use the same logic for `targetType`, among other things.
2024-01-12 14:49:42 -05:00
player-03
24bc9b2495 Merge pull request #1661 from tobil4sk/mingw-fixes-develop
Allow cross compiling Windows projects with MinGW
2024-01-12 13:56:37 -05:00
Josh Tynjala
a48898849e actions: use github.workspace instead of platform specific environment variables syntax 2024-01-10 10:11:11 -08:00
Josh Tynjala
b021dbeae7 lime display: if the project file is newer than an existing debug/release/final.hxml file, don't consider the .hxml file valid anymore
Code intelligence should always use the newest hxml content, so the fallback mode where the hxml content is generated, instead of loaded from an existing .hxml file, should be used when the project file is newer.

For instance, if the user changes any file/dir paths in their project file, continuing to use the existing .hxml file could lead to confusing error messages that still reference the old/cached file paths. It should always use the latest paths or other values from the project file. It should be considered a bug to use the old cached paths.

Previously, as a workaround, the user would need to clean or build their project again to get updated .hxml files. It might also require restarting their editor/IDE too. Bad developer experience when we can detect this case automatically.
2024-01-05 13:54:36 -08:00
Joshua Granick
9b9faae177 Fix dynamic callback on HL (resolves issues in cURL) 2024-01-04 08:48:45 -08:00
Joshua Granick
8e54e6db47 Update copyright 2024-01-03 21:50:42 -08:00
Joshua Granick
88c2f6db98 Consistent return handling of HL CFFI string values 2024-01-03 21:37:19 -08:00
Joseph Cloutier
2f8da1d39d Remove excess whitespace from AndroidManifest.xml.
Grouping these blocks makes logical sense, and makes the output a bit prettier. Win-win.
2023-12-21 23:01:37 -05:00
Joseph Cloutier
f0a040727c Allow clearing attributes by passing "".
project.xml can't pass `null`, so this seems like the next best thing.
2023-12-21 22:46:13 -05:00
Joseph Cloutier
cb03d9cd9a Move variable to where it's used. 2023-12-21 22:31:58 -05:00
Joseph Cloutier
60064f55b3 Make AndroidManifest.xml more configurable.
Now if you need to add something to the `<application />` or `<activity />` tags, you can do it from project.xml. This will require new documentation, however.
2023-12-21 22:30:58 -05:00
Joseph Cloutier
b0c7025e45 Simplify permissions in AndroidManifest.xml.
`AndroidPlatform` provides a default value, so the array will never be null.
2023-12-21 22:12:14 -05:00
Joseph Cloutier
8bdd93753d Standardize ConfigData's array logic. 2023-12-21 19:52:02 -05:00
Joseph Cloutier
8d3d123266 Add unique parameter to ConfigData.push(). 2023-12-21 17:18:54 -05:00
Joseph Cloutier
15e6dc5050 Remove duplicate code in ConfigData. 2023-12-21 01:14:57 -05:00
Joseph Cloutier
ca3012b877 Convert single to double quotes.
The convention, according to haxe-checkstyle, is to use double quotes unless single quotes are specifically required.
2023-12-20 23:03:02 -05:00
Joseph Cloutier
3cd308a6a8 Convert string literals to constant. 2023-12-20 22:55:25 -05:00
Joseph Cloutier
810e73d24d Restore anonymous function support to web workers.
Credit to StackOverflow user phnah for the new way to parse the string. This approach is much more robust.
2023-12-16 16:12:00 -05:00
player-03
c62ef3eb4a Add missing makePortable() call.
I guess I simply never tested that case.
2023-12-16 15:23:39 -05:00
Josh Tynjala
e6205bf3aa PlatformSetup: openfl alias setup on Linux was missing try/catch, but lime alias setup and other platforms had it 2023-12-08 09:46:21 -08:00
Josh Tynjala
aec341d481 PlatformSetup: added optional -noalias target flag to skip creating the lime/openfl alias during setup 2023-12-08 09:34:18 -08:00
andrew-git
c40ec312fc Joystick: add try/catch around navigator.getGamepads() because it might throw a JS SecurityError if we don't have permission to call it (#1728)
Fixes the following exception when we don't have permissions:

> Failed to execute 'getGamepads' on 'Navigator': Access to the feature "gamepad" is disallowed by permissions policy.

By catching the exception, it should now behave the same as older browsers, where navigator.getGamepads() doesn't exist at all.

In the future, it might make sense to set a flag if navigator.getGamepads() throws, and skip calling it more than once. However, we may want to listen for some kind of browser event that indicates that permission was granted later, and clear the flag when appropriate. Perhaps the gamepadconnected event?

---------

Co-authored-by: Josh Tynjala <joshtynjala@bowlerhat.dev>
2023-12-01 11:09:34 -08:00
Josh Tynjala
d68bce1a87 actions: svg.n needs openfl 2023-11-27 10:14:36 -08:00
Josh Tynjala
b330249a88 actions: build svg.n 2023-11-27 09:20:40 -08:00
Josh Tynjala
d05f10b15f prepare for Lime 8.1.1 8.1.1 2023-11-08 09:26:20 -08:00
player-03
a6aad10e92 Merge pull request #1721 from player-03/escaped-characters
Only escape backslashes in Android SDK/NDK paths. The others don't need to be escaped in .properties files, and shouldn't be escaped in .gradle files.
2023-10-25 19:08:19 -04:00
Joseph Cloutier
d931869dcf Only escape backslashes in Android paths.
Neither .properties nor .gradle files require anything else to be escaped. And at least in .gradle files, escaping anything else is incorrect.
2023-10-24 01:13:32 -04:00
player-03
1a3a9bd5c5 Avoid integer overflow for long sounds.
Multiplying `dataLength * 8` produces a high number, which in the case of very long audio files can exceed the integer limit. Multiplying by 8.0 coerces to float, allowing much higher values.

An alternate solution is to divide first and multiply by 8 second, thus keeping the number from getting too large at any point. However, the purpose of the 8 is to convert `dataLength` from bytes to bits, so it's clearer if those two are close together.
2023-10-19 22:57:43 -04:00
Josh Tynjala
21e8e619c3 HashLink: when building hdlls, use -install_name on macOS
This more closely matches official HashLink binaries, and ensures that the hdlls can be found next to a HL/C executable
2023-10-18 15:33:32 -07:00
Josh Tynjala
51273fb258 FUNDING: add joshtynjala 2023-10-18 10:24:56 -07:00
Josh Tynjala
0528e3996f Assets: add removeLibrary() where unloading is optional (references #1718)
unloadLibrary() now calls removeLibrary() with true for unload to prevent code duplication
2023-10-18 09:19:25 -07:00
Josh Tynjala
6d36d6f874 CHANGELOG and releasenote 8.1.0 2023-10-16 11:01:46 -07:00
Josh Tynjala
2b50fe5273 actions: move some jobs from macos to ubuntu 2023-09-29 11:13:05 -07:00
Josh Tynjala
667567f7bd WebAudioContext: add missing resume() field for non-html5 platforms to fix doc gen 2023-09-29 09:31:08 -07:00
Josh Tynjala
27c528ffbb air externs: don't use openfl APIs in lime 2023-09-12 08:47:23 -07:00
Josh Tynjala
7979a99c7b fill in more of sys file externs for AIR 2023-09-12 08:02:40 -07:00
Josh Tynjala
0b87e1aa63 fix invalid air extern 2023-09-12 07:46:08 -07:00
player-03
d4a04c80df Merge pull request #1709 from UncertainProd/remove-hello
Removed unused field `hello` in Float32Array.hx
2023-08-19 12:39:16 -04:00
UncertainProd
843e7fc873 Removed unused field hello in Float32Array.hx 2023-08-19 22:02:19 +05:30
player-03
b284e56d4e Clarify changelog and remove reference to private feature.
The click count feature is only meant to be used internally until 9.0.0, so shouldn't be advertised.
2023-08-18 17:28:07 -04:00
player-03
3c245b5287 Make replaceVariable() account for properties.
Some useful information is only available as a property, not a field.
2023-08-18 16:20:01 -04:00
Joseph Cloutier
9a9b89ae06 Merge branch 'develop' into 8.2.0-Dev 2023-08-17 21:07:12 -04:00
Josh Tynjala
2a570037a2 CHANGELOG for 8.1.0-Dev 2023-08-15 08:00:34 -07:00
Josh Tynjala
987e3dd425 Merge branch 'develop' into 8.1.0-Dev 2023-08-14 15:53:18 -07:00
Josh Tynjala
39c77cfe46 CHANGELOG for develop branch before merge 2023-08-14 15:53:01 -07:00