Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FindMyMouse]Add additional settings #14590

Merged

Conversation

jaimecbernardo
Copy link
Collaborator

@jaimecbernardo jaimecbernardo commented Nov 23, 2021

Summary of the Pull Request

What is this about:
Add more settings to Find My Mouse.

What is include in the PR:
Settings for:

  • Background color
  • Spotlight color
  • Overlay opacity
  • Spotlight radius
  • How bigger the spotlight is when the animation starts
  • Animation duration (0 is instant)

image

How does someone test / validate:
Change some settings and see them applied to Find My Mouse.

Quality Checklist

@htcfreek
Copy link
Collaborator

@jaimecbernardo
Great. Love this options. What about the "don't activate on fullscreen windows setting"?

@htcfreek
Copy link
Collaborator

@jaimecbernardo
Some small nits:

  • Can we add the unit to the description of Overlay opacity and imitial zoom? Would help users to understand the setting.
  • We use an other naming layout. Only the first letter should be big. (Example: Spotlight Color must be Spotlight color)

@jaimecbernardo
Copy link
Collaborator Author

@jaimecbernardo Great. Love this options. What about the "don't activate on fullscreen windows setting"?

Focusing on appearance for this PR.
But thanks for reminding :)

@jaimecbernardo
Copy link
Collaborator Author

  • Can we add the unit to the description of Overlay opacity and imitial zoom? Would help users to understand the setting.

@htcfreek What do you mean with unit?

@htcfreek
Copy link
Collaborator

htcfreek commented Nov 23, 2021

  • Can we add the unit to the description of Overlay opacity and imitial zoom? Would help users to understand the setting.

@htcfreek What do you mean with unit?

What do I set here? Opacity in percent from 0 to 100? Zoom in pixel from x to y or in percentage from 0 to 100?

Maybe a number box is better for the zoom setting?

@Jay-o-Way
Copy link
Collaborator

Jay-o-Way commented Nov 23, 2021

  • Text like "How bigger the spotlight is" doesn't sound very correct.
  • we could group 'background' and 'opacity' together, then all the spotlight settings are together too.
  • Opacity: 0-255 or 0-100%? (Percentage feels more natural; zero percent makes it kind of useless; to me)
  • no max for delay?

Should we mention the bounds for values in the description or not?

@niels9001
Copy link
Contributor

@jaimecbernardo Just a general thought: I wonder if we should auto collapse the appearance and behavior settings for Mouse utilities by default? The extensive customization options are great, but might 'overwhelm' users when opening the page. Especially since we have multiple utilities on a single page.

@jaimecbernardo
Copy link
Collaborator Author

@htcfreek

What do I set here? Opacity in percent from 0 to 100? Zoom in pixel from x to y or in percentage from 0 to 100?

You're right, it's an alpha value. Perhaps I'll make it 100.
Regarding the zoom, it's how many times, meaning 1x, 2x, 3x, 4x (default is 9x). I made it configurable mostly for photo sensitive users for who that initial flash when the spotlight is big causes some pain. The idea here is that it doesn't need to be too configurable.

Maybe a number box is better for the zoom setting?

Doesn't need to be too configurable, although perhaps I'll raise the maximum a bit for this issue: #14539

@stefansjfw
Copy link
Collaborator

Background color colorpicker doesn't work for me. Whatever I select it stays black

@jaimecbernardo
Copy link
Collaborator Author

Background color colorpicker doesn't work for me. Whatever I select it stays black

@stefansjfw ,
You have to up brightness (black is described as 0 brightness in this control, which affects all other colors):
image

@stefansjfw
Copy link
Collaborator

Background color colorpicker doesn't work for me. Whatever I select it stays black

@stefansjfw , You have to up brightness (black is described as 0 brightness in this control, which affects all other colors): image

Ok. It works :)

@jaimecbernardo
Copy link
Collaborator Author

@Jay-o-Way

  • Text like "How bigger the spotlight is" doesn't sound very correct.

Changed to "how many times larger".
Regarding the zoom, it's how many times, meaning 1x, 2x, 3x, 4x (default is 9x). I made it configurable mostly for photo sensitive users for who that initial flash when the spotlight is big causes some pain. The idea here is that it doesn't need to be too configurable.

  • we could group 'background' and 'opacity' together, then all the spotlight settings are together too.

Placed opacity at the beginning.

  • Opacity: 0-255 or 0-100%? (Percentage feels more natural; zero percent makes it kind of useless; to me)

Changed to percent. Made the minimum 1%.

  • no max for delay?

What would the maximum delay here be? I agree it is somewhat non-sensical to have very large numbers, but I also saw no reason to limit this.

Should we mention the bounds for values in the description or not?

The reason, in my opinion, for not adding bounds to the description is that then those would have to go through the localization cycle if we changed those, which means we could have some outdated

@jaimecbernardo
Copy link
Collaborator Author

@jaimecbernardo Just a general thought: I wonder if we should auto collapse the appearance and behavior settings for Mouse utilities by default? The extensive customization options are great, but might 'overwhelm' users when opening the page. Especially since we have multiple utilities on a single page.

Sounds like a good change. Applied it.

@jaimecbernardo
Copy link
Collaborator Author

Thanks for the feedback. I've committed change or answered to the suggestions so far. Updating description screenshot as well. PTAL

@htcfreek
Copy link
Collaborator

As I understood the zoom factor setting is important for photosensitive users. Should we add a warning bar under the setting, that they should not use a too small value?

Copy link
Collaborator

@stefansjfw stefansjfw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implementation looks good. Works good as well

@jaimecbernardo
Copy link
Collaborator Author

As I understood the zoom factor setting is important for photosensitive users. Should we add a warning bar under the setting, that they should not use a too small value?

In this case the issue is with big values. A warning makes sense. Added the change and updating the image in the description as well.

@stefansjfw
Copy link
Collaborator

As I understood the zoom factor setting is important for photosensitive users. Should we add a warning bar under the setting, that they should not use a too small value?

In this case the issue is with big values. A warning makes sense. Added the change and updating the image in the description as well.

Nice!

@htcfreek
Copy link
Collaborator

As I understood the zoom factor setting is important for photosensitive users. Should we add a warning bar under the setting, that they should not use a too small value?

In this case the issue is with big values. A warning makes sense. Added the change and updating the image in the description as well.

Nice!

Does it make sense to bind the visibility on the slider value. For example when it's higher than 50% show the warning? 🤔

@niels9001
Copy link
Contributor

niels9001 commented Nov 23, 2021

Why not add the warning in the Description instead of an InfoBar (for the sake of leaving out as much as UI as possible, since the list is growing :))? This will also not flag us for Accesibility related things as the InfoBar should be announced when selecting the previous setting.

Spotlight initial zoom
A smaller size is recommended for photo sensitive users

<value>Overlay opacity</value>
</data>
<data name="MouseUtils_FindMyMouse_OverlayOpacity.Description" xml:space="preserve">
<value>Opacity percentage for the overlay</value>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't the title already self-explainatory? Doesn't add a lot and basically says the same thing twice.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@niels9001 , so perhaps if I just add make the description "Percentage"? Does this make sense?

Copy link
Collaborator

@Jay-o-Way Jay-o-Way Nov 23, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about simply adding the unit to the end of the first text?
Spotlight radius (px/pixels)
Spotlight inital zoom (factor)
Overlay opacity (%/percentage)
Animation duration (ms/milliseconds)

Then (imo) only the zoom factor would need a secondary text.

#KISS (keep it short and simple)

Copy link
Contributor

@niels9001 niels9001 Nov 23, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should be resolved in a way that it's flexible and can be used across all modules (e.g. setting the opacity for Shortcut Guide overlay, or Zone Opacity for Fancy Zones).

One elegant solution could be adding it to the tooltip:
image

Other option is to add it after the input control. E.g.:
[ NumberBox ] ms
[ Slider ] %

I've created #14607 for this so we can keep this as is and @jaimecbernardo can continue doing awesome things :)!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you 😄
So I've removed the description for now.
PTAL and approve if you think it's ready 😉
image

@jaimecbernardo
Copy link
Collaborator Author

Why not add the warning in the Description instead of an InfoBar (for the sake of leaving out as much as UI as possible, since the list is growing :))? This will also not flag us for Accesibility related things as the InfoBar should be announced when selecting the previous setting.

Spotlight initial zoom A smaller size is recommended for photo sensitive users

@niels9001 , like this?

image

@crutkas
Copy link
Member

crutkas commented Nov 23, 2021

I don’t want to make that claim without having the low vision board for photo sensitive. Let’s please remove that statement and have them test it. There are tons of nuances here so I don’t want to make assumptions

@jaimecbernardo
Copy link
Collaborator Author

I don’t want to make that claim without having the low vision board for photo sensitive. Let’s please remove that statement and have them test it. There are tons of nuances here so I don’t want to make assumptions

@crutkas ,
I've committed the change and updated the screenshot in the PR's description.

@jaimecbernardo
Copy link
Collaborator Author

@niels9001 , Waiting for your approval and I think this can go in after that.
Trying to get this out for 0.51 RC.
Thank you, in advance.

@niels9001 niels9001 self-requested a review November 23, 2021 16:33
Copy link
Contributor

@niels9001 niels9001 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@jaimecbernardo jaimecbernardo merged commit 46244e8 into microsoft:main Nov 23, 2021
@Jay-o-Way Jay-o-Way added the Product-Mouse Utilities Refers to the Mouse Utilities PowerToy label Nov 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Product-Mouse Utilities Refers to the Mouse Utilities PowerToy
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants