CommunityToolkit / CommunityToolkit/Windows
DisplayInformation API is unavailable in WinUI 3, causing crashes or no-op behavior
- Dominant language
- C#
- Stars
- 1.1k
- Forks
- 166
- PR merge metrics
- No merged PRs in 30d
Description
### Describe the bug
`DisplayInformation.GetForCurrentView()` is used in several places, but this API is not supported in WinUI 3 desktop applications.
This can lead to crashes or ineffective behavior depending on the execution path.
Affected areas include:
- `SurfaceLoader.cs`
Some brushes (e.g. `TilesBrush`) may fail to render.
https://github.com/CommunityToolkit/Windows/blob/127413c8d7cfb4262da742ef1af81997687dcf4f/components/Media/src/Helpers/SurfaceLoader.cs#L103
- `ScreenUnitHelper.cs`
https://github.com/CommunityToolkit/Windows/blob/127413c8d7cfb4262da742ef1af81997687dcf4f/components/Helpers/src/ScreenUnitHelper/ScreenUnitHelper.cs#L100
### Steps to reproduce
```text
1. Create a WinUI 3 desktop application.
2. Use functionality relying on `DisplayInformation.GetForCurrentView()` (e.g. `TilesBrush`).
3. The application crashes or related functionality does not work.
```
### Expected behavior
The affected functionality should work correctly in WinUI 3 desktop applications.
### Screenshots
_No response_
### Code Platform
- [ ] UWP
- [ ] WinAppSDK / WinUI 3
- [ ] Web Assembly (WASM)
- [ ] Android
- [ ] iOS
- [ ] MacOS
- [ ] Linux / GTK
### Windows Build Number
- [ ] Windows 10 1809 (Build 17763)
- [ ] Windows 10 1903 (Build 18362)
- [ ] Windows 10 1909 (Build 18363)
- [ ] Windows 10 2004 (Build 19041)
- [ ] Windows 10 20H2 (Build 19042)
- [ ] Windows 10 21H1 (Build 19043)
- [ ] Windows 10 21H2 (Build 19044)
- [ ] Windows 10 22H2 (Build 19045)
- [ ] Windows 11 21H2 (Build 22000)
- [ ] Windows 11 22H2 (Build 22621)
- [ ] Windows 11 23H2 (Build 22631)
- [ ] Windows 11 24H2 (Build 26100)
- [ ] Windows 11 25H2 (Build 26200)
- [ ] Windows 11 26H1 (Build 28000)
- [ ] Other (specify)
### Other Windows Build number
_No response_
### App minimum and target SDK version
- [ ] Windows 10, version 1809 (Build 17763)
- [ ] Windows 10, version 1903 (Build 18362)
- [ ] Windows 10, version 1909 (Build 18363)
- [ ] Windows 10, version 2004 (Build 19041)
- [ ] Windows 10, version 2104 (Build 20348)
- [ ] Windows 11, version 22H2 (Build 22000)
- [ ] Windows 11, version 24H2 (Build 26100)
- [ ] Windows 11, version 25H2 (Build 26200)
- [ ] Windows 11, version 26H1 (Build 28000)
- [ ] Other (specify)
### Other SDK version
_No response_
### Visual Studio Version
_No response_
### Visual Studio Build Number
_No response_
### Device form factor
_No response_
### Additional context
_No response_
### Help us help you
Yes, I'd like to be assigned to work on this item.
Contributor guide
Assessment
This issue has not been assessed yet.