Skip to content

Fix iOS streaming codecs, input, reconnect, add gamepad, Liquid Glass#286

Merged
capy-ai[bot] merged 2 commits intokief5555/iosfrom
capy/streaming-codecs-reconnect-gamep
Apr 13, 2026
Merged

Fix iOS streaming codecs, input, reconnect, add gamepad, Liquid Glass#286
capy-ai[bot] merged 2 commits intokief5555/iosfrom
capy/streaming-codecs-reconnect-gamep

Conversation

@Kief5555
Copy link
Copy Markdown
Collaborator

@Kief5555 Kief5555 commented Apr 13, 2026

This PR comprehensively overhauls the iOS streaming client with codec fixes, robust input handling, automatic/manual reconnection, gamepad support, and UI polish for the queue sheet and game cards.

StreamerView.swift:

  • Swift: Add onWebViewReady callback to expose WKWebView for manual reconnect; add HUD reconnect button triggered by failure events; update streamProfile to use UIApplication.shared.connectedScenes (iOS 16+) instead of deprecated UIScreen.main.
  • JavaScript: Fix keyboard focus by synchronously toggling readonly and using touchstart handlers.
  • JavaScript: Add virtual on-screen gamepad overlay and physical controller polling via navigator.getGamepads with NVST binary encoding (type 5, 32 bytes).
  • JavaScript: Implement connection cleanup, exponential backoff reconnect on signaling/peer failure, and manual reconnect trigger.
  • JavaScript: Update codec preference order to AV1 > H265 > H264 for iOS hardware decode capability.
  • JavaScript: Throttle mouse moves to ~72fps (14ms), reduce maxPacketLifeTime to 50ms, and improve video autoplay with retry logic.
  • JavaScript: Reduce ICE gathering timeout to 3000ms for faster startup.

PrintedWasteQueueView.swift:

  • Apply full Liquid Glass treatment to list rows, header, routing pills, and queue/ping/metric/selection badges using .glassEffect on iOS 26+ with fallbacks.
  • Add .scrollContentBackground(.hidden) and .toolbarBackground(.ultraThinMaterial) for consistent glass aesthetics.

HomeView.swift:

  • Fix GameArtworkView: show ProgressView on empty, clip on success, and show fallback icon on failure.
  • Update GameCardView to use aspectRatio(16/9, contentMode: .fill) instead of fixed height.
  • Increase FeaturedGameCard artwork height from 100 to 110.

Open in Capy OPEN-12 · 5.4

@Kief5555 Kief5555 added the capy Generated by capy.ai label Apr 13, 2026 — with Capy AI
Copy link
Copy Markdown
Contributor

@capy-ai capy-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added 1 comment

Comment thread ios/OpenNOWiOS/OpenNOWiOS/StreamerView.swift
@capy-ai capy-ai Bot merged commit e9eba06 into kief5555/ios Apr 13, 2026
@capy-ai capy-ai Bot deleted the capy/streaming-codecs-reconnect-gamep branch April 13, 2026 00:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

capy Generated by capy.ai

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant