feat: Make spell-checking opt-in via SpellChecking UnoFeature#22937
feat: Make spell-checking opt-in via SpellChecking UnoFeature#22937ramezgerges merged 2 commits intounoplatform:masterfrom
Conversation
Spell-checking was automatically included for all desktop/Skia apps, adding the Uno.WinUI.SpellChecking dependency by default. This changes it to opt-in via `<UnoFeatures>SpellChecking;</UnoFeatures>` to reduce default binary size for apps that don't use spell-checking. - Add SpellChecking enum value to UnoFeature (Core area) - Change MSBuild condition to require SpellChecking UnoFeature while retaining the Skia platform guard - Lower missing service log from Error to Warning (now expected state) - Add SpellChecking row to UnoFeatures documentation table - Create spell-checking docs page with custom dictionary guidance Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Makes Uno’s Skia spell-checking support opt-in by introducing a dedicated SpellChecking UnoFeature, gating the implicit Uno.WinUI.SpellChecking package reference behind it, and documenting how to enable/configure dictionaries.
Changes:
- Add
UnoFeature.SpellCheckingand document it in the Uno.Sdk features list. - Gate the
Uno.WinUI.SpellCheckingimplicit package behindUnoFeaturescontainingSpellChecking(and only for Skia-rendering targets). - Add a new spell-checking feature doc page and adjust the runtime log severity when no
ISpellCheckingServiceis present.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Uno.UI/UI/Xaml/Documents/UnicodeText.skia.cs | Downgrades missing ISpellCheckingService log severity from error to warning. |
| src/Uno.Sdk/UnoFeature.cs | Adds new SpellChecking UnoFeature enum value. |
| src/Uno.Sdk/targets/Uno.Implicit.Packages.ProjectSystem.targets | Makes Uno.WinUI.SpellChecking implicit package reference opt-in via UnoFeatures. |
| doc/articles/features/using-the-uno-sdk.md | Documents the new SpellChecking feature in the supported features table. |
| doc/articles/features/spellchecking.md | Adds a new documentation page describing how to enable spell-checking and load custom dictionaries. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-22937/wasm-skia-net9/index.html |
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-22937/docs/index.html |
|
The build 204916 found UI Test snapshots differences: Details
|
|
The build 204916 found UI Test snapshots differences: Details
|
|
@ramezgerges Also make sure to add the feature to |
|
@ramezgerges also the Copilot comments are quite relevant, should be addressed |
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-22937/docs/index.html |
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-22937/wasm-skia-net9/index.html |
GitHub Issue: closes #22661
PR Type:
What is the current behavior? 🤔
What is the new behavior? 🚀
PR Checklist ✅
Please check if your PR fulfills the following requirements:
Screenshots Compare Test Runresults.Other information ℹ️