private/Controls/Invoke-UiHotkeyAction.ps1

function Invoke-UiHotkeyAction {
    <#
    .SYNOPSIS
        Executes a registered hotkey action.
    #>

    [CmdletBinding()]
    param(
        [Parameter(Mandatory)]
        [hashtable]$Context
    )

    $action  = $Context.Action
    $noAsync = $Context.NoAsync

    if (!$action) {
        Write-Warning "Hotkey action is null"
        return
    }

    $sessionToken = Push-UiSession -SessionId $Context.SessionId

    if ($noAsync) {
        try { $null = Invoke-UiCallback -ScriptBlock $action -Label 'Hotkey action' }
        catch { Write-Warning "Hotkey action error: $_" }
    }
    else {
        # Run async using standard pattern
        $null = Invoke-UiAsync -ScriptBlock $action
    }

    Pop-UiSession -Token $sessionToken
}