microsoft / WinUI-Gallery

This app demonstrates the controls available in WinUI and the Fluent Design System.
MIT License
2.64k stars 613 forks source link

Icons don't warn about Win10 not supported #1557

Open dotMorten opened 3 weeks ago

dotMorten commented 3 weeks ago

Which version of the app?

WinUI 3 Gallery

Description

On the Iconography page it's too easy to go pick an icon glyph and add it to your app, not realizing it won't work on Windows 10. For instance the following will render a square placeholder on Windows 10:

<FontIcon Glyph="&#xEBD3;" />

However this will render fine:

<FontIcon Glyph="&#xE896;" />

With so many users still on Win10, it needs to be made easier to avoid making such mistakes, since it can get caught too late in the dev process if the developers are using Win11 machines.

Screenshots

No indication that this isn't supported on Windows 10: image This one right next to it though is supported on Windows 10: image

Windows version

Windows 10 22H2 (19045)

Additional context

No response

marcelwgn commented 3 weeks ago

Thats a good point, would you expect there just to be a "Windows 10" disclaimer or also depending on the Windows build when it was available?

niels9001 commented 3 weeks ago
image

It's called out in the Expander.

But I agree, it doesn't jump out.

Maybe we could add an InfoBar at the top calling this out and warning folks that some icons might not render at all and testing is required?

dotMorten commented 3 weeks ago

That message isn’t helpful. Many of the icons do work on Win10 but not all. I’d like to see the warning in the icon detail when you select an icon that isn’t available in win10

Jay-o-Way commented 3 weeks ago

Interesting. I wasn't aware some icons wouldn't be available in the MDL2 font. I wonder how many of them are missing. In my opinion, I think the code area (for the specific icon)would be the most appropriate place.

Screenshot_20240607-001253~2.png

dotMorten commented 3 weeks ago

If they are on this page they are supported: https://learn.microsoft.com/en-us/windows/apps/design/style/segoe-ui-symbol-font If they are on this page, Windows 11 is required: https://learn.microsoft.com/en-us/windows/apps/design/style/segoe-fluent-icons-font

Jay-o-Way commented 3 weeks ago

If they are on this page they are supported: https://learn.microsoft.com/en-us/windows/apps/design/style/segoe-ui-symbol-font If they are on this page, Windows 11 is required: https://learn.microsoft.com/en-us/windows/apps/design/style/segoe-fluent-icons-font

Technically, it's not about the OS, but a matter if the Fluent font is installed. Important difference.

dotMorten commented 3 weeks ago

As you said: Technically. In practice though it'll catch developers out.

Jay-o-Way commented 3 weeks ago

Yes, there is a clear correlation between the two. But when the Fluent font is installed on Windows 10 (which is super easy) a message calling out the OS would be invalid. Just trying to keep it accurate.

dotMorten commented 3 weeks ago

But when the Fluent font is installed on Windows 10 (which is super easy)

Define "super easy". You shouldn't be expecting your users to be doing this. If anything you should include it in your app, but it's still worth pointing out that there's something you need to do and be aware of if you want to use those symbols on Windows 10.

Jay-o-Way commented 3 weeks ago

If I may suggest:

[!IMPORTANT] This icon is not available in the MDL2 font, the default icon font on Windows 10, and thus may not be rendered.

Jay-o-Way commented 3 weeks ago

Define \"super easy\"

It's literally as simple as installing the font. The OS will pick it up automatically 🙂 But indeed, this is not so common. I emphasize that the core of your issue is valid!

dotMorten commented 3 weeks ago

No you don’t just do that. You need to build an app installer that does this. That’s not “super easy”. Again apps shouldn’t require people to do this themselves just to use the app. And that still doesn’t change the fact that someone needs to know they need to ensure this font is available. If it’s not installed all you get is a place holder icon and a poor app experience

Jay-o-Way commented 3 weeks ago

Wait. My comments were based on old ideas. Back when Project Reunion wasn't renamed yet, there was a font (file) that basically acted as MDL2v2. I once installed it and, because of the same internal name, Windows 10 picked it up as the System Icon font. But that's long ago and will not work nowadays. Apologies. 🙇🏻‍♂️