Commit Graph

5920 Commits

Author SHA1 Message Date
Tobiasz Laskowski
d1db9e88af Fix static debug windows build 2025-02-10 08:59:02 -08:00
Tobiasz Laskowski
f5ccc3d2aa Add missing crypt32.lib for static windows build 2025-02-10 08:59:02 -08:00
Chris Speciale
d3aeb9f748 Merge pull request #1902 from ACrazyTown/fix/rendercontext-attribute-hardware
Set RenderContextAttributes.hardware upon context creation
2025-02-08 16:18:36 -05:00
unknown
f331941a6b Set hardware attribute on context creation 2025-02-08 19:54:00 +01:00
Josh Tynjala
09040f443d Android: new Java template files for SDL 2.30.12 2025-02-07 09:59:36 -08:00
unknown
a926989d44 Update to SDL 2.30.12
Remove broken Windows HDPI support

Fix submodule?

try to fix CI

Add some missing files

Update to SDL2 2.30.12

Include khronos headers

Enable EGL on macOS

Enable GLES on Mac
2025-02-07 09:28:43 -08:00
Josh Tynjala
41ac2fc8b6 add <config:android layoutInDisplayCutoutMode/>
Options are default, always, never, and shortEdges. Defaults to default.

What default means depends on which Android SDK version is used.

According to the Android docs, starting with Android SDK 35, most options will be forced to act the same as always. However, for SDK 34 (which is the current minimum on Google Play) this should remain configurable.

https://developer.android.com/develop/ui/views/layout/display-cutout
2025-02-07 09:23:29 -08:00
Tobiasz Laskowski
69bbcaea27 Skip confirmation for alias with -alias/-cli flag
The user has already specified this is what they want by passing in the
flag, so there is no point in asking again.
2025-01-31 10:27:24 -08:00
Tobiasz Laskowski
dd9f9d40c9 Add -cli, -alias, and -noalias setup flags to help
The `-cli`/`-alias` flags are useful when you don't want lime to mess with
libraries that might be intentionally set to specific versions.
2025-01-31 10:27:24 -08:00
Josh Tynjala
112f3f591f actions: missed hashlinkc-samples as a dependency of notify 2025-01-30 16:15:59 -08:00
Josh Tynjala
af2299670f Display: add safeArea property
display.safeArea is a subset of display.bounds that accounts for notches, holes, or other display cutouts.
2025-01-30 15:56:27 -08:00
Josh Tynjala
70efb2a4ec ExternalInterface: fix number of members in _TORIENTATION_EVENT 2025-01-30 14:34:46 -08:00
Josh Tynjala
e56c7cd49a docs: some missing classes in ImportAll
Like OpenFL, we should eventually modify the docs build to use include("lime") to automatically include everything instead of manually adding each thing to ImportAll. However, we'll need to use conditional compilation to hide certain classes from targets where they aren't supported.
2025-01-30 09:46:26 -08:00
Josh Tynjala
8031ed22d9 System: fix typo in openFile() docs 2025-01-29 15:12:30 -08:00
Josh Tynjala
2c42843333 NativeApplication: compile fix 2025-01-29 15:10:01 -08:00
Josh Tynjala
daa8cf1284 Application: move deviceOrientation getter implementation into backends 2025-01-29 14:21:39 -08:00
Josh Tynjala
98cdb15a3c AIR: map orientation values from AIR to Lime 2025-01-29 14:13:51 -08:00
Josh Tynjala
40cc093faf Application, System: html5 device/display orientation 2025-01-29 12:59:00 -08:00
Josh Tynjala
bca04cdf49 Display: orientation property should be typed as lime.system.Orientation instead of Int 2025-01-29 12:03:46 -08:00
Josh Tynjala
8f0b8f356e Application: onDisplayOrientation and onDeviceOrientation events for iOS and Android
Device orientation is the orientation of the phone/tablet.

Display orientation is the orientation of what is rendered on the display.

By default, they should usually be the same. If orientation is locked, device orientation will update, but display orientation usually won't.
2025-01-29 09:38:00 -08:00
Josh Tynjala
2da06fa2af Merge branch 'develop' into 8.3.0-Dev 2025-01-29 09:37:47 -08:00
Tobiasz Laskowski
5fd2b560c4 Add missing harfbuzz hb-face-builder file 2025-01-29 01:28:22 +00:00
Tobiasz Laskowski
a9347de8ce Update hb-coretext to hb-coretext-shape
The name of this file was changed, see:
064b24177b
2025-01-28 13:04:18 -08:00
Tobiasz Laskowski
077ba7e5ca Update harfbuzz to 10.2.0 2025-01-28 13:04:18 -08:00
Chris Speciale
8af219fb54 Merge pull request #1899 from tobil4sk/fix/update-cairo
Update cairo to 1.18.2
2025-01-28 01:41:24 -05:00
Tobiasz Laskowski
65e2c6ba45 Add missing files to freetype build
These are required by newer versions of cairo
2025-01-27 19:12:06 +00:00
Tobiasz Laskowski
9bda9ecb32 Update cairo to 1.18.2
The previous version 1.17.6 was an unstable snapshot release. Updating
to 1.18.2 seems to resolve some font size bugs on windows.
2025-01-27 19:12:06 +00:00
Josh Tynjala
fa101f90b8 actions: restore Windows x86_32 ndll because neko bundled with Haxe 3.4.7 is 32-bit 2025-01-24 13:59:35 -08:00
Josh Tynjala
747d6ae0df actions: exclude x86_32 lime ndlls for Windows/Linux from Haxelib bundle
x86_32 is not a commonly used architecture anymore, so it doesn't make much sense to include it by default anymore.

For reference, the Steam hardware survey no longer reports any 32-bit versions of Windows, macOS, or Linux. Windows 7 64-bit is currently 0.15% of Steam users, so presumably, 32-bit of any version of Windows is less than that. Windows 11 doesn't even have a 32-bit variant at all anymore.

We still build x86_32 on CI, to be sure that it will continue to work if someone wants to checkout Lime and build manually.
2025-01-24 12:07:25 -08:00
Josh Tynjala
f6d262c54e AndroidPlatform: include ARM64 in the default architectures for emulators
On ARM64 macOS, the emulator is probably ARM64, so x86_32 and x86_64 won't work
2025-01-24 12:03:06 -08:00
Josh Tynjala
d21f7befaa AndroidPlatform: default to x86_64 instead of x86_32
It's still possible to check out Lime and build x86_32 manually
2025-01-24 12:01:50 -08:00
Josh Tynjala
7255873893 AudioManager: if alc.openDevice() returns null, don't call alc.createContext() to avoid a SIGNAL 11 crash 2025-01-24 09:47:09 -08:00
Tobiasz Laskowski
e0c734d8fe Remove MAC_USE_CURRENT_SDK from lime setup
MAC_USE_CURRENT_SDK is an incredibly old relic from a very old version
of hxcpp (haxe 2 days). It was removed in:
9a7f7f931f

This is now instead controlled by the flag `MACOSX_DEPLOYMENT_TARGET`.

The setup command now only does two things:
- Sets up haxelibs
- Adds cli alias
2025-01-22 08:06:52 -08:00
Josh Tynjala
abb92a2a84 actions: does Haxe 4.3.3 work better on this job than 4.3.6? 2025-01-17 11:47:41 -08:00
Josh Tynjala
5472974379 actions: skip html5-samples variables on Haxe 3 2025-01-17 10:13:22 -08:00
Josh Tynjala
2fdbcd1460 actions: make html5-samples depend on package-haxelib because -eval flag fails on Haxe 3 2025-01-17 09:42:22 -08:00
Josh Tynjala
f08cebf9e5 actions: bump haxe 4.3 references to haxe 4.3.6 2025-01-17 09:30:30 -08:00
Josh Tynjala
5ed71b1204 actions: html5-samples job should have a Haxe version matrix 2025-01-17 09:30:30 -08:00
Josh Tynjala
2d22455e50 HTML5Thread: Haxe 3 compatibility fixes 2025-01-17 09:30:30 -08:00
Josh Tynjala
f604ae3b0e tools: fix haxe 4 function syntax for haxe 3 backcompat 2025-01-17 09:30:30 -08:00
Josh Tynjala
2e578d3e56 Default to Android target-sdk-version 34, and support 35 (closes #1888)
34 is the minimum required version by Google Play, so it should be default.

Bumping to 34 and 35 requires updating both gradle-version and gradle-plugin-version.

The new versions now require an ndkVersion flag in build.gradle. This can be obtained by reading source.properties in the root of the NDK.

JDK 17 will be required for these updates. Previously required JDK 11.
2025-01-14 14:00:54 -08:00
Igor
c2c9d0ea7c Setting ios.non-exempt-encryption to false by default. 2025-01-10 16:00:10 -08:00
Josh Tynjala
8bfc0be57e WebAssemblyPlatform: missed -json flag here in #1882 2025-01-10 15:11:20 -08:00
Cameron Taylor
03ea041e0e add -json flag to allow json types export 2025-01-10 15:09:55 -08:00
Josh Tynjala
ff3ccf159d Merge branch 'develop' into 8.3.0-Dev 2025-01-10 15:08:32 -08:00
Igor
6a5908b02b Just fixing some typo 2025-01-08 12:46:23 -08:00
Josh Tynjala
951d5510c2 GameActivity: check for VIBRATE permission on Android
While we add this permission by default, if a developer sets custom permissions, we want to avoid crashing when we try to access an API that we don't have permission to use
2025-01-07 12:47:30 -08:00
Josh Tynjala
44dd331801 libjpeg: fix rendering on 32-bit platforms
Fixes SIZEOF_SIZE_T on 32-bit platforms that should be 4 instead of 8

Tested on Windows x86_32 and Android armv7
2025-01-07 09:43:21 -08:00
Josh Tynjala
57cf88b02d CommandLineTools: set macos define when using cpp target on macOS (closes #1878)
It should behave the same as mac or macos target.
2025-01-06 10:07:12 -08:00
Tobiasz Laskowski
37e7580720 Fix module paths for haxe 5
Haxe 5 will no longer support module resolution like this. See:
https://github.com/HaxeFoundation/haxe/issues/9150
2025-01-06 09:44:13 -08:00