mirror of
https://github.com/nesquena/hermes-webui.git
synced 2026-05-24 18:50:15 +00:00
324aeaaded
#1360 — On macOS WKWebView, trackpad momentum scrolling fires scroll events that interleave with the _programmaticScroll setTimeout(0) guard. A mid-momentum scroll event either gets swallowed (_programmaticScroll still true) or falsely reports nearBottom (momentum hasn't settled), keeping _scrollPinned=true and snapping the viewport back down. Fix: rAF-debounce the scroll listener so the nearBottom check runs at the next paint frame when the browser's scroll position has settled. Added a hysteresis counter requiring 2 consecutive near-bottom samples before re-pinning, preventing accidental re-pin during deceleration. #1619 — When a custom:* provider (e.g. custom:relay via custom_providers) has models that overlap with auto-detected models from base_url /v1/models, the dedup logic at config.py:2263 skipped them all. The named custom group ended up empty, and the continue at line 2334 silently discarded the auto-detected models. Result: only the default model appeared. Fix 1 (config.py): When custom:* named group has 0 models after dedup, fall back to auto_detected_models_by_provider instead of dropping them. Fix 2 (routes.py): Extended /api/models/live fallback to handle custom:* slugs (not just bare "custom") for both custom_providers config lookup and base_url live fetch.