You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The number field of the corner ruler closes when its bodies are deselected (#614): A click on a green number of the corner ruler opens a field to type the distance. It closed on Enter, Esc or when it lost the focus, but not when the selection changed: after a click on empty space that left the field its focus, it stayed in the view with no body selected, as an active field that belonged to nothing. It now goes (without applying what is typed) as soon as the bodies it was opened for are no longer all selected. Not tried on screen. Reported by @willi1955 on GitHub.
"Delete all reference points" is in the menu of an empty spot too (#603): The entry only stood in the right-click menu of a selected body, so someone who had marked a point with the tape measure and then right-clicked next to it found only Paste, Select all and Select multiple, and could not tell how to get rid of the point. The menu of an empty spot of the 3D view now has it as well, whenever the design holds a reference point. The guide (chapter 10, English and German) names both places. Reported by @Cowski4444 on GitHub.
An OBJ from Tinkercad comes in lying flat, not on its side (#599): Tinkercad writes the OBJ with Z up and says so in the first line ("Object Export From Tinkercad"), but layerling read every foreign OBJ with Y up, so such a file stood on its edge: a part that is 435 mm wide and 120 mm high came in 244 mm high. The Tinkercad header is now recognised and the file is turned upright, like layerling's own Z-up files. Such a body carries its mesh itself, so a saved project never rebuilds it with the old axes; an OBJ without that header is read as before. Reported by @kwjaarsveld-star.
A .lyl file opens with a double click (#605): The web app manifest now declares file_handlers for .lyl, and the start page reads window.launchQueue, so an installed layerling (Chrome or Edge on a computer) registers as a program for .lyl files and opens the design through the usual import, with the file handle kept so Ctrl+S saves back into it. It works on a computer only: Android has no file handlers for installed web apps, so there a design is opened with "Open a design or import geometry" (#605). Guide text (EN/DE) and a What's new card added.
Docker: the preview pictures are saved again: The image runs the server as the user nextjs, but /app belongs to root, so /app/.codex/project-thumbnails could not be created: every POST to /api/project-thumbnail failed with 500 and the cards stayed on "No preview yet" (reported by mail from a Mac with OrbStack). The Dockerfile now creates the folder and gives it to nextjs.
Saving to the server works behind a reverse proxy that closes HTTPS (#608): The shared-project and thumbnail routes compared the browser's Origin strictly with the host and protocol the app saw. A proxy that ends TLS but sends no X-Forwarded-Proto made the app see plain http, so every save failed with "Shared projects only accept requests from this site." (while the IP address worked). The check now takes an https Origin on the very same host when the proxy does not name the protocol; it stays strict when it does. New LAYERLING_ALLOWED_ORIGINS (full origins or bare hosts, comma-separated, read at run time) for a proxy that rewrites the host, in store.php as well. A refusal now writes the reason to the server log. Shared in lib/sameOrigin.ts, tests in sameOrigin.test.ts.