[Android, iOS & Catalyst] CharacterSpacing Property Does Not Update at Runtime When TextType="Html" is Set on Label
- Dominant language
- C#
- Stars
- 23.3k
- Forks
- 2k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 290
Description
### Description
When using the TextType="Html" property on a Label in .NET MAUI, the CharacterSpacing property does not take effect when changed during runtime. This behavior is inconsistent with plain text mode where character spacing changes are applied immediately when modified at runtime.
https://github.com/user-attachments/assets/bc8afd32-a785-4a37-b99e-d6ebe5afba76
### Steps to Reproduce
1. Run the attached sample [FormattedTextPropertiesSample.zip](https://github.com/user-attachments/files/20440582/FormattedTextPropertiesSample.zip)
2. Select TextType to "Html" using the radio button
3. Enter a value (e.g., "5") in the CharacterSpacing entry field.
4. Observe that character spacing does not update in the HTML rendered text during runtime.
5. Select TextType to "plain" using the radio button
6. Enter a value (e.g., "5") in the CharacterSpacing entry field.
7. Observe that character spacing is update in the text during runtime.
Expected Behavior
The CharacterSpacing property should take effect immediately when changed during runtime, regardless of whether the Label's TextType is set to Text or Html.
Actual Behavior
When TextType is set to Html, changes to the CharacterSpacing property made during runtime are not reflected in the rendered text. The character spacing remains unchanged.
### Link to public reproduction project repository
_No response_
### Version with bug
9.0.70 SR7
### Is this a regression from previous behavior?
Not sure, did not test other versions
### Last version that worked well
_No response_
### Affected platforms
iOS, Android, macOS
### Affected platform versions
_No response_
### Did you find any workaround?
_No response_
### Relevant log output
```shell
```
Contributor guide
Research direction
Start by running the attached FormattedTextPropertiesSample.zip on an affected Android or iOS target and reproduce the difference between Html and plain TextType. Trace the Label behavior involved in runtime CharacterSpacing updates; done means changing CharacterSpacing immediately updates HTML-rendered text as it does for plain text.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, csharp, ios
- Domain
- frontend, mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100