Skip to main content

XGameStreamingShowTouchControlsWithStateUpdate

Request that all connected streaming client devices update their touch control state and show a specified touch layout. All state updates happen before the new touch layout is displayed.

Syntax

Parameters

layout   _In_opt_z_
Type: char*
Name of the touch control layout to display or nullptr to display the standard layout. operationCount   _In_
Type: size_t
Size of the array of operations being passed operations   _In_reads_opt_(operationCount)
Type: XGameStreamingTouchControlsStateOperation*
Array of all the state variable updates that are being requested

Return value

Type: HRESULT Returns S_OK if successful; otherwise, returns an error code.

Potential Errors

Remarks

This API should be used when the game needs to show a particular touch layout that also requires some state updates that may affect its rendering. Use this API if you would like to both update the state of variables that are referenced in a new touch layout AND switch to the touch layout on all connected streaming client devices. This API makes sure that all state updates are made before the new layout is displayed. If you would like to only affect a specific client, use XGameStreamingShowTouchControlsWithStateUpdateOnClient. If the game would only like to change the layout, the game should use XGameStreamingShowTouchControlLayout instead. If the state updates can affect the current layout or other layouts and updates should happen regardless of a specific touch layout change, the game should use XGameStreamingUpdateTouchControlsState instead.

Examples

Requirements

Header: XGameStreaming.h Library: xgameruntime.lib
Supported Platforms: Windows, XBOX One family consoles and XBOX Series consoles

See also

XGameStreaming
XGameStreamingTouchControlsStateOperationKind
XGameStreamingTouchControlsStateOperation
XGameStreamingTouchControlsStateValue
XGameStreamingShowTouchControlsWithStateUpdateOnClient
XGameStreamingUpdateTouchControlsState
XGameStreamingUpdateTouchControlsStateOnClient
Last modified on August 20, 2026