@displayxr/inline3d 1.40.0 → 1.40.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,24 @@ entry points (`.`, `./three`) are frozen for 1.x, while the **scene subpaths** (
5
5
  `./splat`, `./model`) are a preview tier whose options may change in any release. Entries below say
6
6
  which tier they touch, because that is what tells you whether an upgrade can move your pixels.
7
7
 
8
+ ## 1.40.1 — 2026-10-11
9
+
10
+ Touches the **preview tier** (`./call`, `./camera`) only: how `cursor: 'depth'` looks and moves. No
11
+ API change.
12
+
13
+ ### Stereo-tile depth cursor: the normal arrow, and only ever in front of the screen
14
+
15
+ - **It never goes inside the display.** 1.40.0 put the cursor at the depth of whatever was under
16
+ it, so over a background behind the glass it sank behind the glass too. Now the depth only moves
17
+ to keep content that comes OUT of the screen from overlapping it; over anything on or behind the
18
+ glass it stays on the screen plane.
19
+ - **It is the normal arrow, not a crosshair.** On the plane nothing is drawn: it is the OS cursor,
20
+ untouched. Only while the person under it pops out is the arrow drawn into both halves, just in
21
+ front of them, at the OS arrow's size (19 CSS px; `height` still overrides it), with the OS
22
+ cursor hidden exactly then. The footprint now covers the arrow's body, not a ring round its tip.
23
+ - Same filter as before: it comes forward fast and hands back to the OS arrow smoothly as the
24
+ content sinks. Matches the native lifted-content cursor (runtime #1908).
25
+
8
26
  ## 1.40.0 — 2026-10-10
9
27
 
10
28
  Touches the **preview tier** (`./call`, `./camera`) only: one new option, off by default. New type
package/call.d.ts CHANGED
@@ -216,10 +216,11 @@ export interface CallOptions {
216
216
  */
217
217
  autoConverge?: boolean;
218
218
  /**
219
- * `'depth'`: over a 3D (stereo) tile — a peer's or your self view — a crosshair just in front of
220
- * the person under the pointer replaces the CSS cursor, instead of the flat cursor drawn on the
221
- * glass behind them (runtime ADR-046; the depth is measured off each tile's two halves). Lifted
222
- * (2D→3D) and flat tiles keep the normal cursor. Off by default (zero cost).
219
+ * `'depth'`: over a 3D (stereo) tile — a peer's or your self view — the cursor is never
220
+ * overlapped by what comes out of the screen: where the person under the pointer pops out, the
221
+ * normal arrow is drawn just in front of them (runtime ADR-046; the depth is measured off each
222
+ * tile's two halves). Everywhere else it is the plain OS arrow on the screen plane — it never goes
223
+ * inside the display. Lifted (2D→3D) and flat tiles keep the normal cursor. Off by default (zero cost).
223
224
  * `<dxr-call cursor="depth">`.
224
225
  */
225
226
  cursor?: 'depth' | PairCursorOptions;
package/camera.d.ts CHANGED
@@ -189,7 +189,7 @@ export function isStereoCamera(x: unknown): x is StereoCamera;
189
189
  * depth under the pointer is MEASURED off its two halves, so there is no anchor mode or margin.
190
190
  */
191
191
  export interface PairCursorOptions {
192
- /** Sprite height as a fraction of the tile height (default 0.06). */
192
+ /** Arrow height as a fraction of the tile height (default: the OS arrow's size, 19 CSS px). */
193
193
  height?: number;
194
194
  /** `'window'` (default): the cursor stays while the pointer is over DOM on the tile (a badge). `'canvas'`: only over the canvas itself. */
195
195
  pointerScope?: 'canvas' | 'window';
@@ -205,9 +205,10 @@ export interface CameraViewOptions {
205
205
  /** The tile's aspect (w/h) = the woven buffer's per-eye aspect. Default 16/9. */
206
206
  aspect?: number;
207
207
  /**
208
- * `'depth'`: while the pointer is over the woven view, a crosshair just in front of whatever is
209
- * under it (runtime ADR-046, measured off the pair's two halves) replaces the CSS cursor, so it
210
- * is never drawn on the glass behind a face that sits in front of it. Off by default (zero cost).
208
+ * `'depth'`: while the pointer is over the woven view and what is under it comes out of the
209
+ * screen, the normal arrow is drawn just in front of it (runtime ADR-046, measured off the pair's
210
+ * two halves), so it is never drawn on the glass behind a face that pops out. Otherwise it is the
211
+ * plain OS arrow on the screen plane; it never goes inside the display. Off by default (zero cost).
211
212
  */
212
213
  cursor?: 'depth' | PairCursorOptions;
213
214
  /**