diff options
| author | Adam Malczewski <[email protected]> | 2026-05-29 18:49:51 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-05-29 18:49:51 +0900 |
| commit | 5aeb96e46e914686d8fbc75302354150732800d7 (patch) | |
| tree | a90693fdfab8a325421b536875e5924107fe8c44 | |
| parent | dcbc51e22dcd3d7b5a01d6c3b7b0285efa49bca4 (diff) | |
| download | dispatch-5aeb96e46e914686d8fbc75302354150732800d7.tar.gz dispatch-5aeb96e46e914686d8fbc75302354150732800d7.zip | |
fix: override pointer-events on stop button spinner for iOS touch support
daisyUI's .loading class sets pointer-events:none on the spinner.
On iOS Safari, when a child inside a <button> has pointer-events:none,
the synthesized click event from touch sequences can fail to dispatch
to the parent button entirely - a well-known WebKit quirk. Since the
spinner covers ~20x20px of the button, mobile taps that land on it
are silently dropped.
Setting pointer-events:auto on the spinner lets touch events pass
through to the parent <button> correctly.
| -rw-r--r-- | packages/frontend/src/lib/components/ChatInput.svelte | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/packages/frontend/src/lib/components/ChatInput.svelte b/packages/frontend/src/lib/components/ChatInput.svelte index f9c9546..098856a 100644 --- a/packages/frontend/src/lib/components/ChatInput.svelte +++ b/packages/frontend/src/lib/components/ChatInput.svelte @@ -34,7 +34,7 @@ function submit() { onclick={() => tabStore.stopGeneration(tabId)} title="Stop generation" > - <span class="loading loading-spinner loading-sm text-primary"></span> + <span class="loading loading-spinner loading-sm text-primary" style="pointer-events: auto"></span> <span class="text-xs">Stop</span> </button> {:else if agentStatus === "idle"} |
