docs/demos/native-application-mouse.html
Ref: Size: 3.3 KiB History
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Application mouse & clipboard</title>
<style>
:root { color-scheme: dark; --bg:#101318; --panel:#181d25; --ink:#edf2f7; --muted:#aab5c2; --accent:#7dd3fc; --line:#303947; }
* { box-sizing:border-box; } body { margin:0; background:var(--bg); color:var(--ink); font:16px/1.55 system-ui,sans-serif; }
main { max-width:1000px; margin:auto; padding:3rem 1.25rem 5rem; } h1 { margin:0 0 .5rem; font-size:clamp(2rem,5vw,3.5rem); line-height:1.05; } h2 { margin-top:2rem; font-size:1.25rem; color:var(--accent); } p { color:var(--muted); } .lede { font-size:1.15rem; max-width:70ch; }
.card { margin-top:2rem; padding:1rem; background:var(--panel); border:1px solid var(--line); border-radius:12px; } video { display:block; width:100%; max-height:70vh; background:#080a0d; border-radius:8px; } a { color:var(--accent); } ul { color:var(--muted); padding-left:1.25rem; } li+li { margin-top:.4rem; } code { color:var(--ink); }
.status { display:inline-block; padding:.2rem .55rem; border:1px solid #a87927; border-radius:999px; color:#ffd580; font-size:.85rem; }
</style>
</head>
<body>
<main>
<span class="status">Product signed off · 6 September 2026</span>
<h1>Application mouse & clipboard</h1>
<p class="lede">Native mux panes now forward application mouse gestures and desktop clipboard writes while keeping Shift-drag local for text selection.</p>
<section class="card">
<video src="demo.mp4" poster="preview.png" controls playsinline preload="metadata"></video>
<p><a href="demo.mp4" download>Download the recording</a> · 32.4 seconds · 1100 × 700 · no audio</p>
</section>
<h2>What the recording shows</h2>
<ul>
<li>Normal drag forwarding in both directions to applications and tmux, across two mux sessions attached to the same tmux server.</li>
<li>Shift held at press keeps the gesture local through release.</li>
<li>An application OSC 52 write reaches the desktop clipboard, read independently with <code>wl-paste</code>.</li>
<li>Two separate mux daemon sessions attached to the same tmux server, checked with independent <code>wl-paste</code> and <code>tmux show-buffer</code> observations.</li>
</ul>
<h2>Evidence</h2>
<p>Source <code>03138bb</code>; no daemon update. Separate automated checks verify desktop and primary-selection writes (<code>c</code>, <code>p</code>/<code>s</code>). CI, 117 e2e cases, agent and throughput checks, native unit/e2e checks, and real NVIDIA Wayland validation passed. The existing 20 ms stress budget measured 20.6/21.4 ms; the previous wheel run measured 23.1 ms, so this page makes no stress improvement claim.</p>
<h2>Input disclosure</h2>
<p>Ordinary drags use genuine Wayland pointer input. The Shift modifier and pointer sequence use the ordinary SDL test hook with visible Wayland cursor motion. Fixture shell commands are entered through SDL keys.</p>
<h2>Limits</h2>
<ul>
<li>Local selection following text through scrolling and reflow remains open. Paste, IME, and ligatures remain separate work.</li>
<li>macOS behavior is unverified.</li>
<li>Recording metadata: continuous capture, no cuts, no audio, 5 fps, NVIDIA at 200% scale.</li>
</ul>
</main>
</body>
</html>