microsoft / microsoft/PowerToys

CmdPal Dock: fix jumping width issue that hinders tooltip readability (at least on Performance Monitor band)

Open
#47,482 2 comments 1 reaction 1 assignee Claimed by @michaeljolley View on GitHub
Product-Command Palette Resolution-Fix Committed
Dominant language
C
Stars
139k
Forks
8.6k
PR merge metrics
PR metrics pending

Description

### Description of the new feature / enhancement

Proposal: Make the individual bands OR bands' items have a **max-width property** that sets the item width by default, that negates the width-changing jumps (at least on the PerfMon band). See _Attachment 1_ for a GIF of the problem.

If the data ("Title label") displayed is smaller, it could use any alignment (left, center, right, justified).

This however introduces the problem of data being wider than the max-width, which could be mitigated with {~~changing measurement units in the PerfMon band (e.g. above 500 Kbps -> Mbps)~~ See _Edit 1_[^edit1]}, dynamically changing decimal separator (1.23 Kbps, 12.3 Kbps, 123 Kbps, ...) or a not-so pretty ellipse by default for other bands' items (`...`, like Window Walker, see _Attachment 2_).

### Scenario when this would be used?

In Command Palette's new Dock (beta), the Performance Monitor band's individual items (mostly the network up/down speed items) change width dynamically on data change.
This prevents the **mouseover tooltip** from being read on these items and also besides the PerfMon band (e.g. "Time" band displays full date when hovering with mouse).
Also the constant change in width shifts the layout so this has a negative effect on UX (harder to click on the items if the cursor is on the edge of them, possibly misclicking).

### Supporting information

#### Attachment 1:

Image

#### Attachment 2:

Image

### Edits

Additional edits to this issue are marked in the footnote of this text

[^edit1]: This is already implemented, but lacks the static max-width described before.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.