Skip to content

v1.3.1

Choose a tag to compare

@amariichi amariichi released this 29 Aug 03:44
· 2 commits to main since this release
6895c81

One fix, for anyone who uses the phone viewer in both orientations.

Hold level now survives turning the phone. Rotating between portrait and landscape left it switched on but reading the new screen frame through everything it had learned in the old one, and no amount of holding the phone still would settle the stale correction. Turning Hold level off and on cleared it, because that discarded the whole sensor tracker and built a fresh one. Nothing short of that did.

Only what the sensors had measured was ever wrong. The tracker now clears its filters and reference postures in place when the orientation changes, keeping the motion and orientation permissions that iOS grants only from a button press, and keeping both event subscriptions alive. Hold level stays visibly on, nothing asks for permission a second time, and the previous orientation's correction disappears the moment the layout turns.

The screen changes orientation before the hand has finished the quarter turn, so the first sample after it is usually taken mid-turn. Adopting that one would define level as an angle nobody meant, or push the correction straight to its 18-degree limit. A quarter of a second of samples is discarded instead, and the first settled reading becomes the new reference — about as long as the turn itself, and not a wait you can feel.

Head tracking, the scene on screen, the eye-distance calibration, pinch framing, and True Window's physical scale all carry across the turn untouched. Both directions, in True Window and in photo mode.

Also in this release, the README described two ways to serve the viewer over HTTPS. There are three. If tailscale serve is already mapped to the dev port on your machine, the best answer is scripts/dev.sh with no option at all: Tailscale terminates TLS with its own genuine certificate, and the phone opens the address with no port number and no warning. Adding --https or --tailscale there makes the dev server speak HTTPS while serve still forwards plain HTTP to it, and the mismatch answers 502. The script had always detected this and said so; the README had not.

Nothing else changes. If v1.3.0 works for you and you hold the phone one way, there is nothing here you need.

The full description of what this project is, and the two external conditions worth reading before installing, are in v1.0. What changed in True Window and in head tracking is in v1.3.0.