(hits, mesh)
| 1905 | |
| 1906 | document.addEventListener('mouseup', () => { |
| 1907 | if (!isPainting) return; |
| 1908 | isPainting = false; |
| 1909 | getControls().enabled = true; |
| 1910 | // Capture the completed stroke synchronously so quick consecutive strokes |
| 1911 | // each get their own undo entry — the debounced window-pointerup capture |
| 1912 | // would otherwise collapse strokes that finish within UNDO_DEBOUNCE_MS. |
| 1913 | _flushUndoCapture(); |
| 1914 | _commitUndoCapture(); |
| 1915 | }); |
| 1916 | |
| 1917 | document.addEventListener('keydown', (e) => { |
| 1918 | if (e.key === 'Escape') { |
no outgoing calls
no test coverage detected