Issue #3611882: Clicking a seat does not book it (pointer capture swallows the click)

Follow-up to #3611792 / #3611851 (graphical seat-map picker).

Problem

Clicking a seat no longer books it - nothing happens on click.

The map's pan handling calls viewport.setPointerCapture(e.pointerId) on pointerdown so a drag started on the map keeps receiving pointer events when the cursor leaves the viewport. But capturing the pointer on pointerdown prevents the subsequent click event from reaching the seat <button> in Chrome, so the click-to-book handler never fires.

Fix

Drop setPointerCapture(). Instead attach the pointerup/pointercancel listeners to window rather than the viewport, so a release outside the viewport still ends the drag (the original reason for capturing) while the click still reaches the seat. The existing no-button-pressed guard on pointermove remains as a further safety net.

Merge request reports

Loading