feat: Add Text Features Showcase sample#928
Open
MartinZikmund wants to merge 2 commits into
Open
Conversation
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Spell-check, TextHighlighters, TextTrimming and sophisticated font fallback on Skia (Uno Platform 6.6). Verified rendering on Skia Desktop. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds a new Text Features Showcase sample under UI/TextFeaturesShowcase, intended to demonstrate Uno Platform 6.6 text-related features (spell checking, TextHighlighters, trimming, and font fallback) on Skia targets.
Changes:
- Introduces a new single-project Uno app targeting
net10.0-desktopandnet10.0-browserwasm, with Skia + SpellChecking UnoFeatures enabled. - Implements a single-page UI (XAML + code-behind) showcasing spell-check squiggles, live search highlighting via
TextHighlighter, trimming modes, and multi-script/emoji font fallback. - Adds documentation entry in
doc/samples.mdand a sample-levelREADME.md.
Reviewed changes
Copilot reviewed 39 out of 44 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/TextFeaturesShowcase.csproj | Defines the Uno single-project app, TFMs, and enabled UnoFeatures. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Strings/en/Resources.resw | Adds default app string resources (ApplicationName). |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/ReadMe.md | Template “Getting Started” content for the project folder. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Properties/PublishProfiles/win-x86.pubxml | Publish profile for Windows x86. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Properties/PublishProfiles/win-x64.pubxml | Publish profile for Windows x64. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Properties/PublishProfiles/win-arm64.pubxml | Publish profile for Windows arm64. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Properties/launchSettings.json | Launch profiles for WASM and Desktop runs/debugging. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/wwwroot/web.config | IIS hosting configuration for pre-compressed WASM assets. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/wwwroot/staticwebapp.config.json | Static Web Apps routing + cache headers. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/WasmScripts/AppManifest.js | WASM app manifest (display name). |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/WasmCSS/Fonts.css | Font-face declarations for WASM. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/Program.cs | WASM host startup via UnoPlatformHostBuilder. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/manifest.webmanifest | PWA manifest metadata. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/WebAssembly/LinkerConfig.xml | Linker config for trimming scenarios. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Platforms/Desktop/Program.cs | Desktop host startup via UnoPlatformHostBuilder. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Package.appxmanifest | Windows packaging manifest template (dependencies/capabilities). |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/MainPage.xaml.cs | Implements live search highlighting using TextHighlighter ranges. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/MainPage.xaml | Single-page UI demonstrating the text features. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/GlobalUsings.cs | Project-wide global usings for the sample. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Assets/Splash/splash_screen.svg | Splash screen asset. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Assets/SharedAssets.md | Asset guidance doc for the sample. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Assets/Icons/icon.svg | App icon asset. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/Assets/Icons/icon_foreground.svg | Foreground icon asset. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/App.xaml.cs | App bootstrap, navigation, and logging initialization. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/App.xaml | App-level resources (WinUI XamlControlsResources). |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase/app.manifest | Windows DPI awareness and OS compatibility manifest. |
| UI/TextFeaturesShowcase/src/TextFeaturesShowcase.sln | Solution file for the standalone sample. |
| UI/TextFeaturesShowcase/src/global.json | Pins Uno.Sdk version via msbuild-sdks mapping. |
| UI/TextFeaturesShowcase/src/Directory.Packages.props | Central package management placeholder for implicit packages. |
| UI/TextFeaturesShowcase/src/Directory.Build.targets | Directory-level build targets placeholder. |
| UI/TextFeaturesShowcase/src/Directory.Build.props | Directory-level build defaults (nullable, implicit usings, NoWarn). |
| UI/TextFeaturesShowcase/src/.vsconfig | Visual Studio workload/component recommendations. |
| UI/TextFeaturesShowcase/src/.vscode/tasks.json | VS Code build/publish tasks for WASM and Desktop TFMs. |
| UI/TextFeaturesShowcase/src/.vscode/settings.json | VS Code workspace settings (file nesting, json association). |
| UI/TextFeaturesShowcase/src/.vscode/launch.json | VS Code debug configurations for WASM + Desktop. |
| UI/TextFeaturesShowcase/src/.vscode/extensions.json | VS Code extension recommendations. |
| UI/TextFeaturesShowcase/src/.run/TextFeaturesShowcase.run.xml | Rider run configurations mapped to launch profiles/TFMs. |
| UI/TextFeaturesShowcase/src/.run/Readme.md | Notes about the .run folder usage. |
| UI/TextFeaturesShowcase/src/.gitignore | Sample-local gitignore (template-based). |
| UI/TextFeaturesShowcase/src/.editorconfig | Sample-local editorconfig (template-based). |
| UI/TextFeaturesShowcase/README.md | Sample-level README describing features and pointing to key files. |
| doc/samples.md | Adds a new entry for the sample in the repository samples list. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
51
to
+55
| ### Other Samples | ||
|
|
||
| ### Text Features Showcase | ||
|
|
||
| A single page touring the Uno Platform 6.6 text wave: TextBox spell-checking, TextBlock TextHighlighters, TextTrimming modes, sophisticated font fallback (Latin + emoji + CJK), and the RenderWhiteSpace toggle. [Browse source](UI/TextFeaturesShowcase) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds a Text Features Showcase sample under
UI/TextFeaturesShowcasedemonstrating the 6.6 text wave on Skia.Features
IsSpellCheckEnabled) — unoplatform/uno#22383TextBlock.TextHighlighterslive search highlighting — unoplatform/uno#22448TextBlock.TextTrimming(Character/Word ellipsis vs None) — unoplatform/uno#22572Contents
net10.0-desktop+net10.0-browserwasm),Uno.Sdk 6.6.14, Fluent theme,SpellCheckingUnoFeature.README.md+ two screenshots underdoc/assets; entry added todoc/samples.md.Screenshot
Built and verified running on Windows Skia Desktop (Release) — squiggles, highlights, trimming and multi-script/emoji fallback all render.
🤖 Generated with Claude Code