Skip to content

Cursor invisible when Moonlight controls mouse via virtual HID device, visible when host mouse moves #5293

@AlexHgC

Description

@AlexHgC

Is there an existing issue for this?

  • I have searched the existing issues

Is your issue described in the documentation?

  • I have read the documentation

Is your issue present in the latest beta/pre-release?

This issue is present in the latest pre-release

Describe the Bug

The mouse cursor is invisible in the Moonlight stream, but only when Moonlight controls the mouse through its virtual HID device. When I physically move the mouse on the host machine, the cursor appears correctly in the stream for as long as the host mouse is moving. The moment Moonlight takes back control, the cursor disappears again. Mouse functionality itself is fully intact — hover effects, clicks, and selections all work correctly on the host.
What I have ruled out:

Client: Tested on two completely different OS (Mini PC that was on Windows 11, switched to a fresh Kubuntu install with clean Moonlight). Same issue on both, which rules out the client. Tried with different mouses.
Virtual display: Virtual Display Driver, and without any virtual display at all (capturing directly on the physical 1440p screen). Same issue in all cases.
Cursor color/theme: Tested with both default white and black cursor schemes. No change.
Moonlight mouse mode: Toggled all available mouse options on the client side. No change.
Ctrl+Alt+Shift+N: Toggled cursor visibility shortcut during active session. Not the cause.
Capture method: Tested Desktop Duplication API explicitly and Windows.Graphics.Capture (WGC returns an error when streaming; DXGI behaves the same as autodetect).

Sunshine logs show no cursor-related warnings or errors during sessions.
Sunshine logs confirm: Active GPU has HAGS enabled
The issue appeared suddenly one day with no deliberate configuration change, approximately 2-3 months ago.
Steam Link is not affected — cursor is fully visible when streaming via Steam Link, which injects cursor client-side rather than relying on DXGI capture.
The issue does not occur on another host PC with a similar Sunshine setup running a stable Windows 11 release.

Expected Behavior

The mouse cursor should be visible in the Moonlight stream regardless of whether it is being moved by the host's physical mouse or by Moonlight's virtual HID device, as it used to work correctly before this issue appeared.
Additional logs or diagnostics can be provided upon request. The issue may potentially be related to recent Windows 11 Insider Preview builds, as the host is updated weekly on the Dev channel and the problem appeared suddenly without any deliberate configuration change.

Additional Context

No response

Host Operating System

Windows

Operating System Version

Windows 11 25h2 Insider build 26300.8687

Architecture

amd64/x86_64

Package

Windows - msi installer (recommended)

GPU Type

NVIDIA

GPU Model

RTX 5070

GPU Driver/Mesa Version

610.47

Capture Method

Desktop Duplication API (Windows)

Apps

Log output

[2026-06-15 13:38:26.055]: Info: Sunshine version: 2026.516.143833 commit: 14ffa6fdaa53f7b51512be2b3d24f3939695403c
[2026-06-15 13:38:26.055]: Info: Package Publisher: LizardByte
[2026-06-15 13:38:26.055]: Info: Publisher Website: https://app.lizardbyte.dev
[2026-06-15 13:38:26.055]: Info: Get support: https://app.lizardbyte.dev/support
[2026-06-15 13:38:26.055]: Info: config: 'dd_configuration_option' = ensure_only_display
[2026-06-15 13:38:26.055]: Info: config: 'encoder' = nvenc
[2026-06-15 13:38:26.055]: Info: config: 'output_name' = {9acddf6d-43cc-576e-9aff-0c5fc80b4cc8}
[2026-06-15 13:38:26.055]: Info: Provided workaround settings for SettingsManager:
{
  "hdr_blank_delay": null
}
[2026-06-15 13:38:26.058]: Info: Currently available display devices:
[
  {
    "device_id": "{9acddf6d-43cc-576e-9aff-0c5fc80b4cc8}",
    "display_name": "\\\\.\\DISPLAY10",
    "edid": {
      "manufacturer_id": "MTT",
      "product_code": "1337",
      "serial_number": 518463207
    },
    "friendly_name": "VDD by MTT",
    "info": {
      "hdr_state": "Disabled",
      "origin_point": {
        "x": 4480,
        "y": 0
      },
      "primary": false,
      "refresh_rate": {
        "type": "rational",
        "value": {
          "denominator": 1,
          "numerator": 60
        }
      },
      "resolution": {
        "height": 2160,
        "width": 3840
      },
      "resolution_scale": {
        "type": "rational",
        "value": {
          "denominator": 100,
          "numerator": 200
        }
      }
    }
  },
  {
    "device_id": "{9f1ec561-32c7-577e-9df3-f119308ffd0d}",
    "display_name": "\\\\.\\DISPLAY1",
    "edid": {
      "manufacturer_id": "HKC",
      "product_code": "2731",
      "serial_number": 0
    },
    "friendly_name": "27E3QK",
    "info": {
      "hdr_state": "Disabled",
      "origin_point": {
        "x": 0,
        "y": 0
      },
      "primary": true,
      "refresh_rate": {
        "type": "rational",
        "value": {
          "denominator": 1000,
          "numerator": 240002
        }
      },
      "resolution": {
        "height": 1440,
        "width": 2560
      },
      "resolution_scale": {
        "type": "rational",
        "value": {
          "denominator": 100,
          "numerator": 100
        }
      }
    }
  },
  {
    "device_id": "{a5dd2c65-f5ff-5abc-a21c-dc26c9a1dec2}",
    "display_name": "\\\\.\\DISPLAY2",
    "edid": {
      "manufacturer_id": "ACI",
      "product_code": "22C3",
      "serial_number": 10075
    },
    "friendly_name": "ASUS VP228",
    "info": {
      "hdr_state": null,
      "origin_point": {
        "x": 2560,
        "y": 296
      },
      "primary": false,
      "refresh_rate": {
        "type": "rational",
        "value": {
          "denominator": 1,
          "numerator": 60
        }
      },
      "resolution": {
        "height": 1080,
        "width": 1920
      },
      "resolution_scale": {
        "type": "rational",
        "value": {
          "denominator": 100,
          "numerator": 100
        }
      }
    }
  }
]
[2026-06-15 13:38:26.182]: Info: nvprefs: No need to modify application profile settings
[2026-06-15 13:38:26.183]: Info: nvprefs: Changed OGL_CPL_PREFER_DXPRESENT to OGL_CPL_PREFER_DXPRESENT_PREFER_ENABLED for base profile
[2026-06-15 13:38:26.203]: Info: Compiling shaders...
[2026-06-15 13:38:26.256]: Info: Compiled shaders
[2026-06-15 13:38:26.264]: Info: Trying encoder [nvenc]
[2026-06-15 13:38:26.470]: Info: 
Device Description : NVIDIA GeForce RTX 5070
Device Vendor ID   : 0x000010DE
Device Device ID   : 0x00002F04
Device Video Mem   : 11943 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 7676 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 4480x0
Virtual Desktop    : 8320x2160
[2026-06-15 13:38:26.470]: Info: Active GPU has HAGS enabled
[2026-06-15 13:38:26.470]: Info: Using realtime GPU priority
[2026-06-15 13:38:26.471]: Info: 
Colorspace         : DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709
Bits Per Color     : 8
Red Primary        : [0.639648,0.330078]
Green Primary      : [0.299805,0.599609]
Blue Primary       : [0.150391,0.0595703]
White Point        : [0.313477,0.329102]
Min Luminance      : 0.0657 nits
Max Luminance      : 1670.85 nits
Max Full Luminance : 1670.85 nits
[2026-06-15 13:38:26.472]: Info: Desktop resolution [3840x2160]
[2026-06-15 13:38:26.472]: Info: Desktop format [DXGI_FORMAT_B8G8R8A8_UNORM]
[2026-06-15 13:38:26.472]: Info: Display refresh rate [60Hz]
[2026-06-15 13:38:26.472]: Info: Requested frame rate [60/1 exactly 60 fps]
[2026-06-15 13:38:26.472]: Info: Creating encoder [h264_nvenc]
[2026-06-15 13:38:26.472]: Info: Color coding: SDR (Rec. 601)
[2026-06-15 13:38:26.472]: Info: Color depth: 8-bit
[2026-06-15 13:38:26.472]: Info: Color range: JPEG
[2026-06-15 13:38:26.512]: Info: NvEnc: created encoder H.264 P1 async two-pass rfi
[2026-06-15 13:38:26.528]: Info: Creating encoder [hevc_nvenc]
[2026-06-15 13:38:26.528]: Info: Color coding: SDR (Rec. 601)
[2026-06-15 13:38:26.528]: Info: Color depth: 8-bit
[2026-06-15 13:38:26.528]: Info: Color range: JPEG
[2026-06-15 13:38:26.566]: Info: NvEnc: created encoder HEVC P1 async two-pass rfi
[2026-06-15 13:38:26.583]: Info: Creating encoder [av1_nvenc]
[2026-06-15 13:38:26.583]: Info: Color coding: SDR (Rec. 601)
[2026-06-15 13:38:26.583]: Info: Color depth: 8-bit
[2026-06-15 13:38:26.583]: Info: Color range: JPEG
[2026-06-15 13:38:26.627]: Info: NvEnc: created encoder AV1 P1 async two-pass rfi
[2026-06-15 13:38:26.644]: Info: Creating encoder [h264_nvenc]
[2026-06-15 13:38:26.644]: Info: Color coding: SDR (Rec. 601)
[2026-06-15 13:38:26.644]: Info: Color depth: 8-bit
[2026-06-15 13:38:26.644]: Info: Color range: JPEG
[2026-06-15 13:38:26.683]: Info: NvEnc: created encoder H.264 P1 async yuv444 two-pass rfi
[2026-06-15 13:38:26.873]: Info: 
Device Description : NVIDIA GeForce RTX 5070
Device Vendor ID   : 0x000010DE
Device Device ID   : 0x00002F04
Device Video Mem   : 11943 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 7676 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 4480x0
Virtual Desktop    : 8320x2160
[2026-06-15 13:38:26.873]: Info: Active GPU has HAGS enabled
[2026-06-15 13:38:26.873]: Info: Using realtime GPU priority
[2026-06-15 13:38:26.874]: Info: 
Colorspace         : DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709
Bits Per Color     : 8
Red Primary        : [0.639648,0.330078]
Green Primary      : [0.299805,0.599609]
Blue Primary       : [0.150391,0.0595703]
White Point        : [0.313477,0.329102]
Min Luminance      : 0.0657 nits
Max Luminance      : 1670.85 nits
Max Full Luminance : 1670.85 nits
[2026-06-15 13:38:26.874]: Info: Desktop resolution [3840x2160]
[2026-06-15 13:38:26.874]: Info: Desktop format [DXGI_FORMAT_B8G8R8A8_UNORM]
[2026-06-15 13:38:26.874]: Info: Display refresh rate [60Hz]
[2026-06-15 13:38:26.874]: Info: Requested frame rate [60/1 exactly 60 fps]
[2026-06-15 13:38:26.874]: Info: Creating encoder [hevc_nvenc]
[2026-06-15 13:38:26.874]: Info: Color coding: SDR (Rec. 709)
[2026-06-15 13:38:26.874]: Info: Color depth: 10-bit
[2026-06-15 13:38:26.874]: Info: Color range: JPEG
[2026-06-15 13:38:26.965]: Info: NvEnc: created encoder HEVC P1 async yuv444 10-bit two-pass rfi
[2026-06-15 13:38:26.997]: Info: Creating encoder [av1_nvenc]
[2026-06-15 13:38:26.997]: Info: Color coding: SDR (Rec. 709)
[2026-06-15 13:38:26.997]: Info: Color depth: 10-bit
[2026-06-15 13:38:26.997]: Info: Color range: JPEG
[2026-06-15 13:38:27.051]: Error: NvEnc: gpu doesn't support YUV444 encode
[2026-06-15 13:38:27.051]: Error: NvEnc: NvEncUnregisterAsyncEvent() failed: NV_ENC_ERR_DEVICE_NOT_EXIST
[2026-06-15 13:38:27.070]: Info: Creating encoder [av1_nvenc]
[2026-06-15 13:38:27.070]: Info: Color coding: SDR (Rec. 709)
[2026-06-15 13:38:27.070]: Info: Color depth: 10-bit
[2026-06-15 13:38:27.070]: Info: Color range: JPEG
[2026-06-15 13:38:27.106]: Info: NvEnc: created encoder AV1 P1 async 10-bit two-pass rfi
[2026-06-15 13:38:27.132]: Info: // Testing for available encoders, this may generate errors. You can safely ignore those errors. //
[2026-06-15 13:38:27.132]: Info: 
[2026-06-15 13:38:27.132]: Info: // Ignore any errors mentioned above, they are not relevant. //
[2026-06-15 13:38:27.132]: Info: 
[2026-06-15 13:38:27.132]: Info: Found H.264 encoder: h264_nvenc [nvenc]
[2026-06-15 13:38:27.132]: Info: Found HEVC encoder: hevc_nvenc [nvenc]
[2026-06-15 13:38:27.132]: Info: Found AV1 encoder: av1_nvenc [nvenc]
[2026-06-15 13:38:27.132]: Info: Starting system tray
[2026-06-15 13:38:27.132]: Info: System tray thread initialized successfully
[2026-06-15 13:38:27.132]: Info: No main thread features enabled, skipping event loop
[2026-06-15 13:38:27.132]: Info: System tray thread started
[2026-06-15 13:38:27.134]: Info: Configuration UI available at [https://localhost:47990]
[2026-06-15 13:38:27.143]: Info: System tray created
[2026-06-15 13:38:27.923]: Info: Registered Sunshine mDNS service

Online logs

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions