microsoft / microsoft/PowerToys

FancyZones: right-mouse modifier during drag for centered proportional resize

Open
#45,441 1 comment 0 reactions 0 assignees View on GitHub
Idea-Enhancement Needs-Triage Product-FancyZones
Dominant language
C
Stars
139k
Forks
8.6k
PR merge metrics
PR metrics pending

Description

### Description of the new feature / enhancement

Add an optional window-resize gesture that allows proportional, center-anchored resizing during an active left-button drag by holding the right mouse button as a modifier.

While LButton is held and a window is being dragged, pressing RButton switches the interaction mode from translation to resize. Window width and height are recalculated symmetrically from the active monitor center using cursor delta and applied continuously. Releasing RButton restores the original drag operation without requiring LButton release, allowing uninterrupted repositioning.

This is a stateful modifier, not a replacement gesture, and does not interfere with standard drag semantics when RButton is unused.

### Scenario when this would be used?

This solves a recurring micro-friction in window management: resizing from center without hunting for edges or corners, and without mode switching (Snap layouts, FancyZones, keyboard shortcuts). This gesture requires no additional UI surface.

It is especially useful on large or ultrawide monitors when a window is full size, users do not need to travel the cursor across the distance of the screen to pinpoint the edge or corner to resize with.

### Supporting information

The behavior is already achievable, demonstrated here with an AutoHotkey prototype: https://youtu.be/VT-IwaB7iOQ

Contributor guide

Open the contributing guide

Research direction

No source file, test, or entry point is named in the issue. Start by locating FancyZones' active left-button drag handling and trace how modifier-button state changes are processed. Done means the optional right-button modifier enables continuous centered proportional resizing, restores dragging on release, and leaves ordinary drags unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.