Files
PowerToys/doc/dsc/modules/MouseHighlighter.md
Niels Laute b7891108fa [Mouse Highlighter] Update default click colors (#49833)
## Summary of the Pull Request

Updates Mouse Highlighter's default click colors to the recommended
palette colors:

- Left click: green (`#BFFF00`)
- Right click: blue (`#00BFFF`)

Keeps the Settings UI, native module fallback, and DSC reference aligned
while preserving the existing 65% opacity. Existing saved preferences
are unchanged.

## PR Checklist

- [ ] Closes: N/A
- [x] **Communication:** Requested by a core contributor
- [x] **Tests:** Added/updated and all pass
- [x] **Localization:** No end-user-facing strings changed
- [x] **Dev docs:** Updated the Mouse Highlighter DSC reference
- [ ] **New binaries:** No new binaries
   - [ ] JSON for signing
   - [ ] WXS for installer
   - [ ] YML for CI pipeline
   - [ ] YML for signed pipeline
- [ ] **Documentation updated:** No external documentation update
required

## Detailed Description of the Pull Request / Additional comments

Adds shared managed constants for the two click-color defaults so
serialized settings and Settings UI fallback behavior cannot drift. The
native Mouse Highlighter fallback uses the same RGB values, and a
focused unit test locks down the defaults.

## Validation Steps Performed

- Built `MouseHighlighter.vcxproj` for x64 Debug
- Built `Settings.UI.UnitTests.csproj` for x64 Debug
- Passed
`MouseHighlighterSettingsTests.Defaults_ShouldUseRecommendedClickColors`

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-08-13 17:11:49 +00:00

6.4 KiB

description, ms.date, ms.topic, title
description ms.date ms.topic title
DSC configuration reference for PowerToys MouseHighlighter module 10/18/2025 reference MouseHighlighter Module

MouseHighlighter Module

Synopsis

Manages configuration for the Mouse Highlighter utility, which highlights your mouse cursor and clicks.

Description

The MouseHighlighter module configures PowerToys Mouse Highlighter, a utility that adds visual highlights to your mouse cursor and click locations. This is useful for presentations, tutorials, screen recordings, or accessibility purposes.

Properties

The MouseHighlighter module supports the following configurable properties:

ActivationShortcut

Sets the keyboard shortcut to toggle mouse highlighting.

Type: object
Properties:

  • win (boolean) - Windows key modifier
  • ctrl (boolean) - Ctrl key modifier
  • alt (boolean) - Alt key modifier
  • shift (boolean) - Shift key modifier
  • code (integer) - Virtual key code
  • key (string) - Key name

Default: Win+Shift+H

LeftButtonClickColor

Sets the color for left mouse button clicks.

Type: string (hex color)
Format: "#RRGGBB"
Default: "#BFFF00" (green)

RightButtonClickColor

Sets the color for right mouse button clicks.

Type: string (hex color)
Format: "#RRGGBB"
Default: "#00BFFF" (blue)

HighlightOpacity

Sets the opacity of click highlights (0-100).

Type: integer
Range: 0 to 100
Default: 160

HighlightRadius

Sets the radius of click highlights in pixels.

Type: integer
Range: 1 to 500
Default: 20

HighlightFadeDelayMs

Sets how long highlights remain visible in milliseconds.

Type: integer
Range: 0 to 10000
Default: 500

HighlightFadeDurationMs

Sets the duration of the highlight fade animation in milliseconds.

Type: integer
Range: 0 to 10000
Default: 250

AutoActivate

Controls whether Mouse Highlighter activates automatically during presentations.

Type: boolean
Default: false

Examples

Example 1 - Configure highlight colors with direct execution

This example customizes the click highlight colors.

$config = @{
    settings = @{
        properties = @{
            LeftButtonClickColor = "#00FF00"
            RightButtonClickColor = "#FF0000"
            HighlightOpacity = 200
        }
        name = "MouseHighlighter"
        version = "1.0"
    }
} | ConvertTo-Json -Depth 10 -Compress

PowerToys.DSC.exe set --resource 'settings' --module MouseHighlighter `
    --input $config

Example 2 - Configure highlight animation with DSC

This example customizes the animation timing and appearance.

dsc config set --file mousehighlighter-animation.dsc.yaml
# mousehighlighter-animation.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
  - name: Configure Mouse Highlighter animation
    type: Microsoft.PowerToys/MouseHighlighterSettings
    properties:
      settings:
        properties:
          HighlightRadius: 30
          HighlightFadeDelayMs: 750
          HighlightFadeDurationMs: 400
        name: MouseHighlighter
        version: 1.0

Example 3 - Install and configure for presentations with WinGet

This example installs PowerToys and configures Mouse Highlighter for presentations.

winget configure winget-mousehighlighter.yaml
# winget-mousehighlighter.yaml
$schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/08/config/document.json
metadata:
  winget:
    processor: dscv3
resources:
  - name: Install PowerToys
    type: Microsoft.WinGet.DSC/WinGetPackage
    properties:
      id: Microsoft.PowerToys
      source: winget
  
  - name: Configure Mouse Highlighter for presentations
    type: Microsoft.PowerToys/MouseHighlighterSettings
    properties:
      settings:
        properties:
          LeftButtonClickColor: "#FFD700"
          RightButtonClickColor: "#FF4500"
          HighlightOpacity: 220
          HighlightRadius: 25
          AutoActivate: true
        name: MouseHighlighter
        version: 1.0

Example 4 - Subtle highlighting

This example configures subtle, less distracting highlights.

dsc config set --file mousehighlighter-subtle.dsc.yaml
# mousehighlighter-subtle.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
  - name: Subtle mouse highlighting
    type: Microsoft.PowerToys/MouseHighlighterSettings
    properties:
      settings:
        properties:
          HighlightOpacity: 100
          HighlightRadius: 15
          HighlightFadeDelayMs: 300
        name: MouseHighlighter
        version: 1.0

Example 5 - High visibility for accessibility

This example configures high-contrast, long-lasting highlights.

$config = @{
    settings = @{
        properties = @{
            LeftButtonClickColor = "#FFFFFF"
            RightButtonClickColor = "#FF0000"
            HighlightOpacity = 255
            HighlightRadius = 40
            HighlightFadeDelayMs = 1500
            HighlightFadeDurationMs = 500
        }
        name = "MouseHighlighter"
        version = "1.0"
    }
} | ConvertTo-Json -Depth 10 -Compress

PowerToys.DSC.exe set --resource 'settings' --module MouseHighlighter --input $config

Use cases

Presentations and demos

Configure for clear visibility during presentations:

resources:
  - name: Presentation highlighting
    type: Microsoft.PowerToys/MouseHighlighterSettings
    properties:
      settings:
        properties:
          LeftButtonClickColor: "#FFD700"
          HighlightOpacity: 200
          HighlightRadius: 25
          AutoActivate: true
        name: MouseHighlighter
        version: 1.0

Screen recording

Configure for video tutorials and recordings:

resources:
  - name: Recording configuration
    type: Microsoft.PowerToys/MouseHighlighterSettings
    properties:
      settings:
        properties:
          HighlightOpacity: 180
          HighlightFadeDelayMs: 600
        name: MouseHighlighter
        version: 1.0

See also