Files
PowerToys/doc/dsc/modules/CropAndLock.md
Gijs Reijn 3b6453c932 Improve DSC documentation (#42554)
<!-- Enter a brief description/summary of your PR here. What does it
fix/what does it change/how was it tested (even manually, if necessary)?
-->
## Summary of the Pull Request

This documentation enhances the DSC documentation by incorporating
reference documents and providing examples.

Closes #42552.

<!-- Please review the items on the PR checklist before submitting-->
## PR Checklist

- [x] Closes: #xxx
- [ ] **Communication:** I've discussed this with core contributors
already. If the work hasn't been agreed, this work might be rejected
- [ ] **Tests:** Added/updated and all pass
- [ ] **Localization:** All end-user-facing strings can be localized
- [ ] **Dev docs:** Added/updated
- [ ] **New binaries:** Added on the required places
- [ ] [JSON for
signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json)
for new binaries
- [ ] [WXS for
installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs)
for new binaries and localization folder
- [ ] [YML for CI
pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml)
for new test projects
- [ ] [YML for signed
pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml)
- [ ] **Documentation updated:** If checked, please file a pull request
on [our docs
repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys)
and link it here: #xxx

<!-- Provide a more detailed description of the PR, other things fixed,
or any additional comments/features here -->
## Detailed Description of the Pull Request / Additional comments

<!-- Describe how you validated the behavior. Add automated tests
wherever possible, but list manual validation steps taken as well -->
## Validation Steps Performed

---------

Co-authored-by: Niels Laute <niels.laute@live.nl>
2026-04-01 16:56:40 +08:00

4.5 KiB

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

CropAndLock Module

Synopsis

Manages configuration for the Crop And Lock utility, which crops and locks portions of windows.

Description

The CropAndLock module configures PowerToys Crop And Lock, a utility that allows you to crop a portion of any window and keep it visible as a thumbnail. This is useful for monitoring specific parts of applications, keeping reference information visible, or focusing on particular UI elements.

Properties

The CropAndLock module supports the following configurable properties:

Hotkey

Sets the keyboard shortcut to activate Crop And Lock for the active window.

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+Ctrl+Shift+T

ReparentHotkey

Sets the keyboard shortcut to change the parent window of a cropped thumbnail.

Type: object (same structure as Hotkey)

ThumbnailOpacity

Sets the opacity of cropped thumbnails (0-100).

Type: integer
Range: 0 to 100
Default: 100

Examples

Example 1 - Configure basic settings with direct execution

This example sets the Crop And Lock hotkey and thumbnail opacity.

$config = @{
    settings = @{
        properties = @{
            ThumbnailOpacity = 90
        }
        name = "CropAndLock"
        version = "1.0"
    }
} | ConvertTo-Json -Depth 10 -Compress

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

Example 2 - Configure hotkeys with DSC

This example configures custom hotkeys for cropping and reparenting.

dsc config set --file cropandlock-hotkeys.dsc.yaml
# cropandlock-hotkeys.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
  - name: Configure Crop And Lock hotkeys
    type: Microsoft.PowerToys/CropAndLockSettings
    properties:
      settings:
        properties:
          Hotkey:
            win: true
            ctrl: true
            shift: true
            alt: false
            code: 84
            key: T
          ThumbnailOpacity: 85
        name: CropAndLock
        version: 1.0

Example 3 - Install and configure with WinGet

This example installs PowerToys and configures Crop And Lock.

winget configure winget-cropandlock.yaml
# winget-cropandlock.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 Crop And Lock
    type: Microsoft.PowerToys/CropAndLockSettings
    properties:
      settings:
        properties:
          ThumbnailOpacity: 75
        name: CropAndLock
        version: 1.0

Example 4 - Semi-transparent thumbnails

This example configures thumbnails to be semi-transparent for overlay use.

# cropandlock-transparent.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
  - name: Semi-transparent thumbnails
    type: Microsoft.PowerToys/CropAndLockSettings
    properties:
      settings:
        properties:
          ThumbnailOpacity: 60
        name: CropAndLock
        version: 1.0

Use cases

Monitoring dashboards

Keep portions of monitoring tools visible:

resources:
  - name: Monitoring configuration
    type: Microsoft.PowerToys/CropAndLockSettings
    properties:
      settings:
        properties:
          ThumbnailOpacity: 80
        name: CropAndLock
        version: 1.0

Reference material

Crop and display reference information:

resources:
  - name: Reference display
    type: Microsoft.PowerToys/CropAndLockSettings
    properties:
      settings:
        properties:
          ThumbnailOpacity: 95
        name: CropAndLock
        version: 1.0

See also