Commit Graph

251 Commits

Author SHA1 Message Date
Sasha Szpakowski 639580cbd1 Add opt-in support for trackpad touch events. Add touch device types.
- Add new touch device type enum ("touchscreen", "touchpad", "touchpadrelative"). Coordinates for touchscreens are window-relative DPI-scaled pixels, and coordinates for touchpads are normalized [0, 1] values.
- Add new devicetype enum and ismouse boolean params to touch callbacks.
- Add love.touch.getDeviceType(touchid), love.touch.isMouse(touchid), and optional device type filter param for love.touch.getTouches.
- Add t.trackpadtouch boolean (defaults to false) to love.conf. Trackpad touch events will not be generated unless it's enabled.

Currently the trackpadtouch setting only works on macOS.

Resolves #1633.
Resolves #2093.
2024-12-25 13:15:17 -04:00
Sasha Szpakowski 9617c631b9 Fix xcode project 2024-10-18 20:24:11 -03:00
Sasha Szpakowski 72cda62fae Use SDL3 on macOS and iOS 2024-10-12 12:19:19 -03:00
Sasha Szpakowski a48639d112 update https library to love2d/lua-https@76d92e7 2024-08-10 17:54:23 -03:00
Sasha Szpakowski 4948e52013 iOS: update minimum runtime OS from 12.0 to 13.0. 2024-03-30 11:38:51 -03:00
Sasha Szpakowski 8aac67f597 macOS: update minimum runtime OS from 10.13 to 10.15.
std::filesystem isn't supported below 10.15, and libraries like glslang and OpenAL-Soft are starting to use those APIs.
2024-03-30 11:30:15 -03:00
Sasha Szpakowski 5ded7ed4d3 Add new (temporary) JoystickSDL3 file to build projects. 2024-03-25 21:01:05 -03:00
Sasha Szpakowski 64a30f177f Merge branch 'main' into 12.0-development 2024-02-10 12:24:48 -04:00
Sasha Szpakowski 94d5864144 update year for copyright notice 2024-02-10 12:13:22 -04:00
Sasha Szpakowski c6b3d136af iOS: update deployment target
newer glslang versions require newer C++ features than the old target supported.
2024-01-07 21:26:10 -04:00
Sasha Szpakowski 8e361aefbf SPIRV-Cross: remove C API files
The spirv header for those is outdated and can cause warnings because its contents don't match the other spirv header files in SPIRV-Cross and glslang
2024-01-07 21:22:13 -04:00
Sasha Szpakowski a99d5afc57 update glslang 2024-01-07 21:14:01 -04:00
Sasha Szpakowski 62d17371ca macOS xcode project: update deployment target to macOS 10.11
When it's set to earlier versions, love fails to link when new versions of the macOS SDK are used.
2023-12-02 15:37:44 -04:00
Sasha Szpakowski 8951635abc Merge branch 'main' into 12.0-development 2023-12-02 13:40:49 -04:00
Sasha Szpakowski aa0a0bdf7a iOS: remove LuaJIT build script.
It's been moved to the love-apple-dependencies repository.
2023-11-26 14:23:49 -04:00
Sasha Szpakowski ff45c308f4 macOS: increase minimum supported OS from 10.9 to 10.13
The most recent macOS SDK fails to link when the deployment target is set to 10.9.
2023-10-07 17:03:40 -03:00
Sasha Szpakowski b8e2b1b6c5 Update Xcode project to account for removed files 2023-10-07 15:19:49 -03:00
Sasha Szpakowski 6e80d85110 Merge branch 'main' into 12.0-development 2023-08-19 21:35:55 -03:00
Sasha Szpakowski 5f733ef0fa Add new PhysfsIo file to xcode project 2023-05-29 09:43:44 -03:00
Sasha Szpakowski 78e7c44424 update version 2023-04-15 09:37:22 -03:00
Sasha Szpakowski 5c9ccd1652 iOS: Add harfbuzz.xcframework to xcode project 2023-01-08 20:25:38 -04:00
Sasha Szpakowski b8a0e58fa6 macOS: add harfbuzz.framework reference to xcode project. 2023-01-03 20:36:11 -04:00
Sasha Szpakowski d980b366da Add TextShaper file references to Xcode project 2023-01-01 18:33:25 -04:00
Sasha Szpakowski f6cdbdc868 Merge branch 'main' into 12.0-development 2022-12-31 22:46:34 -04:00
Sasha Szpakowski c823dbca96 Update copyright year for 2023 2022-12-31 22:25:49 -04:00
Sasha Szpakowski 2e18128bec Merge branch 'main' into 12.0-development 2022-12-30 00:04:32 -04:00
Sasha Szpakowski fc3f5ee620 macOS: remove stray library search path 2022-12-30 00:03:58 -04:00
Sasha Szpakowski 456f897e43 Merge branch 'main' into 12.0-development 2022-12-29 12:12:28 -04:00
Sasha Szpakowski 6730d57f04 macOS: compile with symbols hidden by default. 2022-12-29 10:28:28 -04:00
Sasha Szpakowski f17d3d94f1 Rename love.graphics Text objects to TextBatch.
The name Text is too generic compared to what they're designed for, it made people unnecessarily confused about their purpose.
2022-12-08 18:46:44 -04:00
Sasha Szpakowski 72fca1c2da update xcode project with new sensor module files 2022-12-05 22:54:39 -04:00
slime d966c9e531 update xcode project for luasocket changes 2022-10-08 17:14:24 -03:00
Alex Szpakowski dd7e20fe18 Xcode project file maintenance 2022-06-09 19:57:53 -03:00
Alex Szpakowski 3a5c3df02f Add sync and async texture and buffer readback APIs.
- Add imagedata = love.graphics.readbackTexture(texture, [slice, mipmap, x, y, w, h, [dest, destx, desty]]).
- Add readback = love.graphics.readbackTextureAsync(texture, [slice, mipmap, x, y, w, h, [dest, destx, desty]]).
- Add bytedata = love.graphics.readbackBuffer(buffer, [offset, size, [dest, destoffset]]).
- Add readback = ove.graphics.readbackBufferAsync(buffer, [offset, size, [dest, destoffset]]).
- Deprecate Texture:newImageData.

The async variants return a new GraphicsReadback object. It has the following methods:
- isComplete()
- hasError()
- wait()
- getBufferData()
- getImageData()
- update() (called automatically every frame by love, not normally needed).

Support notes:
- readbackBuffer and readbackBufferAsync require buffer copying support.
- readbackTexture with a render target (canvas) is always supported. readbackTexture with a non-render-target requires copy-texture-to-buffer support.
- readbackTextureAsync with a render target requires copy-render-target-to-buffer support. readbackTextureAsync with a non-render-target requires copy-texture-to-buffer support.
2022-05-30 21:53:55 -03:00
Alex Szpakowski ce18340312 Update xcode project with new files. 2022-04-21 20:02:48 -03:00
Alex Szpakowski bb9c342972 Remove unused GME sound decoder backend. 2022-04-18 20:41:55 -03:00
Alex Szpakowski d4c1025070 Merge branch 'main' into 12.0-development 2022-02-05 21:40:24 -04:00
Alex Szpakowski 456c16b9c4 macOS: Fix love.framework's runpath search path
Fixes loading love.framework from a standalone Lua executable, and potentially fixes some code signing issues (#1737)
2022-02-04 20:27:13 -04:00
Alex Szpakowski d7522c88af Add HTTPS Lua module.
It can be loaded via https = require("https").
Basic API is responsecode, body = https.request(url).
Slightly more advanced API is responsecode, body, headers = https.request(url, {method="post" or "get", data=str, headers={}}).
2022-01-30 13:21:33 -04:00
Alex Szpakowski d51e012812 Merge branch '12.0-development' into metal 2022-01-05 21:12:22 -04:00
Alex Szpakowski 7f3538d2ba Merge branch 'main' into 12.0-development 2022-01-05 21:10:27 -04:00
Alex Szpakowski 40aa50662a Merge branch '12.0-development' into metal 2022-01-01 15:36:57 -04:00
Alex Szpakowski 8e7fd10b6f Update copyright year for 2022 2021-12-31 18:33:40 -04:00
Alex Szpakowski fc1c1e1e1f Merge branch 'main' into 12.0-development 2021-12-30 16:39:22 -04:00
Alex Szpakowski c0dc051bc4 iOS: use new xcframework dependency libraries.
They support arm64+x64 simulators, as well as 64 bit iOS devices.
2021-12-30 12:46:37 -04:00
Alex Szpakowski be6736cba5 Update glslang 2021-12-26 13:13:27 -04:00
Alex Szpakowski 3d8117ccbb Merge branch '12.0-development' into metal 2021-12-24 15:35:18 -04:00
Alex Szpakowski e63025b74f Merge branch '12.0-development' into metal 2021-12-24 15:34:05 -04:00
Alex Szpakowski c8038f22df Merge branch 'main' into 12.0-development 2021-12-24 11:35:35 -04:00
Alex Szpakowski 8f9d1d7f82 xcode: address setting recommendations added in 13.1 2021-11-24 21:18:45 -04:00