Skip to content

[Bug] System Dialogs & Secure Overlays (OSK/Prompts) fail to render in xHome (Remote Play) #55

@bobbyflay65

Description

@bobbyflay65

Description

When a system-level prompt is triggered during an xHome (Remote Play) session, the stream enters a "Dimmed" state as expected, but the actual System UI elements (Dialog boxes, confirmation prompts, On-Screen Keyboard) remain invisible or transparent.

Environment

  • Device: Steam Deck (OLED/LCD)
  • OS: SteamOS
  • Renderer: Vulkan
  • Connection Type: xHome (Remote Play)

Steps to Reproduce

  1. Start an xHome Remote Play session.
  2. Navigate to "Manage Game and Add-ons" -> "Saved Data".
  3. Select a save file and press [A] to delete.
  4. Observe: The screen dims, but no selection menu/confirmation box appears.
  5. Press the Nexus/Xbox button: The file management state changes (files will be deleted), confirming the menu was active but invisible.

Expected Behavior

A system-level pop-up box (Secure Overlay) should render over the game feed, as seen in Better xCloud.

Comparison & Experimental Data

This issue appears to be a protocol-level failure in requesting or compositing the System UI Plane during the xHome handshake.

  • Better xCloud (Official Web-API): System popups render correctly on the remote stream (Steam Deck) but remain invisible on the host TV. This confirms the Xbox is capable of rendering the layer into a stream.
  • XStreaming (xHome Protocol): The popups are invisible on both the stream and the host TV.
  • Inference: This suggests the app is triggering a "Protected Content" or "Game-Only" capture state in the xHome handshake that suppresses the host console from rendering the System UI plane entirely, rather than a failure of the local Vulkan renderer.

Additional Context

This also affects the OSK (On-Screen Keyboard). In titles like Hogwarts Legacy, triggering a text input field (e.g., character naming) dims the screen but fails to render the Xbox keyboard or trigger the SteamOS virtual keyboard.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions