tinyhumansai/openhuman · error

[overlay] failed to pin overlay bottom-right after resize

Error message

[overlay] failed to pin overlay bottom-right after resize

What it means

Pinning the overlay window to the bottom-right of the monitor work area after a resize failed: computing or applying the new LogicalPosition threw (currentMonitor lookup succeeded — a missing monitor is warned separately). The overlay keeps whatever position it had; since the default pin only runs when the user has not dragged the window, the window may sit mispositioned relative to the new size until the next layout pass.

Source

Thrown at app/src/overlay/OverlayApp.tsx:672

      }

      if (userDraggedRef.current) {
        return;
      }

      // Default: pin to bottom-right corner
      try {
        const monitor = await currentMonitor();
        if (!monitor) {
          console.warn('[overlay] could not resolve current monitor for positioning');
          return;
        }

        const x = monitor.workArea.position.x + monitor.workArea.size.width - width - margin;
        const y = monitor.workArea.position.y + monitor.workArea.size.height - height - margin;
        await appWindow.setPosition(new LogicalPosition(x, y));
      } catch (error) {
        console.warn('[overlay] failed to pin overlay bottom-right after resize', error);
      }
    };

    void updateWindowFrame();
  }, [status]);

  // ── Render ────────────────────────────────────────────────────────────
  const bubbles = useMemo<OverlayBubble[]>(() => (bubble ? [bubble] : []), [bubble]);
  const orbClassName = useMemo(() => {
    if (status === 'active') {
      return 'border-blue-950 bg-blue-700';
    }
    return 'border-slate-950 bg-slate-800';
  }, [status]);
  const tetrahedronInverted = status === 'active';
  const orbSizeClassName = status === 'active' ? 'h-[52px] w-[52px]' : 'h-[40px] w-[40px]';
  const orbCanvasClassName = status === 'active' ? 'h-[92%] w-[92%]' : 'h-[88%] w-[88%]';
  const orbStyle =

View on GitHub (pinned to 7491200858)

Solutions

  1. Check the warned error for the Tauri window-manager failure reason
  2. If the overlay is visibly mispositioned, drag it once (setting userDraggedRef) or trigger a resize to force repositioning
  3. Multi-monitor sleeps/wakes can invalidate monitor handles — reopening the overlay refreshes the monitor query
  4. Persistent failures point to a shell-level window issue; check the Tauri log
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at app/src/overlay/OverlayApp.tsx:672 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/d12794136ede5dd7. Report an issue: GitHub.