Merge pull request #4 from samueljklee/fix/ios-touch-scroll

Fix touch scrolling on iOS and iPadOS devices
This commit is contained in:
Brian Krabach
2026-04-13 08:34:04 -07:00
committed by GitHub
+7 -5
View File
@@ -534,13 +534,15 @@ function setTerminalFontSize(size) {
window._setTerminalFontSize = setTerminalFontSize; window._setTerminalFontSize = setTerminalFontSize;
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
// Android touch scroll — rAF-batched WheelEvent dispatch // Mobile touch scroll — rAF-batched WheelEvent dispatch
// Android batches touchmove events irregularly; dispatching one WheelEvent // Mobile devices batch touchmove events irregularly; dispatching one WheelEvent
// per frame (via requestAnimationFrame) smooths over burst delivery. // per frame (via requestAnimationFrame) smooths over burst delivery.
// UA-gated: iOS and macOS are unaffected (they use mouse wheel natively). // Applies to Android, iOS, and iPadOS touch devices.
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
;(function initAndroidTerminalScroll() { ;(function initMobileTerminalScroll() {
if (!/Android/i.test(navigator.userAgent)) return; var isTouchDevice = /Android|iPhone|iPad|iPod/i.test(navigator.userAgent) ||
(navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1);
if (!isTouchDevice) return;
var container = document.getElementById('terminal-container'); var container = document.getElementById('terminal-container');
if (!container) return; if (!container) return;