microsoft / PowerToys

Windows system utilities to maximize productivity
MIT License
110.68k stars 6.52k forks source link

[Color Picker] Take screenshot to do overlay to enable precision #14656

Open JVimes opened 2 years ago

JVimes commented 2 years ago

Description of the new feature / enhancement

The only way to color pick changing colors, like non mouse-over colors or animation/video, is to zoom in during the tool. That has poor discoverability, so most users won't realize it's supported. Suggest "freezing the screen" during color pick, like screenshot apps do. I think there's no use case for selecting a changing target.

Scenario when this would be used?

When sampling a control's non-mouse-over color, or during animation/video.

Supporting information

Major screen shot programs (Greenshot, Screenpresso) handle selection during changing screen by effectively freezing the whole screen. Suggest the color picker does the same.

Jay-o-Way commented 2 years ago

I believe Windows snap does the same thing. A tip is mentioned on the docs, but I understand that's not the first thing people will read.

rlwakefield commented 7 months ago

Hey @JVimes ,

I was just writing up an enhancement request to add this exact same functionality! Here is what I was putting as my enhancement details:

Title: Add a "Freeze" the screen when using the color picker

Description: This new enhancement would add a new feature that when you active the color picker, it would "freeze" all of your screen(s) as to what they were at the time of activating the color picker utility. Then once you hit the ESC key, it would unfreeze them and allow you to continue on as need be.

This "freeze" feature would be similar to how the Snipping Tool works. For example, when you start a new Snip, the refreshing/updates to your screens are "frozen" in time (in a manner of speaking). This way whatever you are attempting to snip, can't change. Well, this new "Freeze" feature would follow the same guidelines. The only difference would be that when the screen(s) is/are frozen, they wouldn't be greyed out like the Snipping Tool does (at least in Win10 it does).

Scenario: The main scenario that this would be used in is when you are going to try and figure out what color something is, but when your mouse hovers over that item or whatever it is, then the color changes. For example, I wanted to find out the color that a link on a site was using. However, when I activated the color picker utility, I put my mouse over that hyperlink and the color of the hyperlink changed due to a "listener" effect. I tried to find an easy way to disable this change, but not quick solution found. So I had to resort to taking a screenshot of it, and then using the color picker on that screenshot to find the color being used for that hyperlink.

I am sure there might be other situations, but I can't quite think of them right now.

Supporting Information: Another good software that does something similar is Greenshot. When you go to take a screenshot of something, it freezes the screen, but leaves all of the colors and more as they are.

Here we are 2 years later and this still isn't possible. Makes me wonder what would be required in order to add this functionality. I guess I would need to find a way to dig into the code to know how to "freeze" the screens to then be able to allow the color picker to happen.

Fingers crossed maybe we can get this sometime soon. :)