Keepalive fix, auto-reconnect on disconnect, tab icon fix, video playback guard
Keepalive: tokio::time::sleep inside select! was resetting every iteration — keepalives never fired. Switched to tokio::time::interval which ticks reliably. This caused connections to be zombie-reaped (10min timeout with no pings). Auto-reconnect: unexpected disconnects (stream error, not SocialDisconnectNotice) now attempt direct reconnect after 3s delay using last known address from peers table or social route. Falls back to notify_growth() if direct reconnect fails. Tab icons: updateTabBadge was using textContent which destroyed the icon and label spans inside tab buttons. Now updates only the .tab-label span and manages a separate .tab-badge element. Video playback: feed re-render skipped while any video or audio is actively playing, preventing echo from DOM destruction and media element recreation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
68afc40b16
commit
6320a82852
4 changed files with 118 additions and 12 deletions
|
|
@ -81,6 +81,10 @@
|
|||
<li><strong>Bottom nav bar</strong> — Mobile/tablet (≤768px) gets a fixed bottom navigation bar with icon tabs. Desktop keeps the top tab bar.</li>
|
||||
<li><strong>Text size update</strong> — Five options: XS (75%), S (100%), M (125% default), L (150%), XL (200%). Persisted to localStorage for instant restore on startup.</li>
|
||||
<li><strong>Startup fix</strong> — Fixed blocking_lock panic that prevented app from launching (async runtime conflict). StoragePool reduced to 4 connections for Android compatibility.</li>
|
||||
<li><strong>Keepalive fix</strong> — Mesh keepalive pings were never firing due to timer reset bug in select loop. Connections were being zombie-reaped instead of kept alive.</li>
|
||||
<li><strong>Auto-reconnect</strong> — Unexpected disconnects now trigger immediate reconnect attempt (3s delay, then direct connect to last known address). Falls back to growth loop if direct fails.</li>
|
||||
<li><strong>Tab icon fix</strong> — Badge updates were destroying tab icons on mobile. Now updates label and badge separately.</li>
|
||||
<li><strong>Video playback</strong> — Feed re-render skipped while video/audio is playing to prevent echo and restart.</li>
|
||||
</ul>
|
||||
|
||||
<div class="changelog-date">v0.4.2 — March 22, 2026</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue