Skip to content

Conversation

@iamAbhi-916
Copy link
Contributor

@iamAbhi-916 iamAbhi-916 commented May 12, 2025

Description

Added EllipsizeMode for tail and clip, for head and middle the behaviour maps to default tail alignment of ellipsis.

DirectWrite does not natively support head and middle truncation in the same way it supports tail.
A custom implementation will be required for the same adding that to backlog.

Type of Change

  • New feature (non-breaking change which adds functionality)

Why

This PR adds functionality to a prop EllipsizeMode particular to windows, this prop is tightly coupled with numberOfLines and adjusts the text alignment based on the ellipsis mode.

Resolves [Add Relevant Issue Here]
#13111

What

Made changes to paragraph.cpp to reflect ellipsis depending on the EllipsizeMode prop, and updating the text layout, text alignment for the same.

Screenshots

Screenshot 2025-06-04 112233

Testing

tested in playground.

Changelog

Should this change be included in the release notes: indicate yes or no
yes

Add a brief summary of the change to use in the release notes for the next release.

Added EllipsizeMode for tail and clip , for head and middle the behaviour maps to default tail alignment of ellipsis.

Microsoft Reviewers: Open in CodeFlow

@iamAbhi-916 iamAbhi-916 requested a review from a team as a code owner May 12, 2025 11:08
@iamAbhi-916 iamAbhi-916 marked this pull request as draft May 12, 2025 11:10
@iamAbhi-916 iamAbhi-916 marked this pull request as ready for review June 4, 2025 07:15
@iamAbhi-916 iamAbhi-916 requested a review from acoates-ms June 5, 2025 17:03
m_textLayout = nullptr;
}
if (oldViewProps.paragraphAttributes.adjustsFontSizeToFit != newViewProps.paragraphAttributes.adjustsFontSizeToFit) {
m_requireRedraw = true;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not related to this PR. But I think we need to reset the textlayout here, not just redraw.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

makes sense , let me create an issue for the same and add this fix.

@iamAbhi-916 iamAbhi-916 requested a review from acoates-ms June 6, 2025 11:21
@iamAbhi-916 iamAbhi-916 merged commit d6501a3 into microsoft:main Jun 6, 2025
59 checks passed
acoates-ms pushed a commit to acoates-ms/react-native-windows that referenced this pull request Sep 11, 2025
* updated ellipsis to respect tail and clip behaviour , for head , middle follow defaulty tail behaviour

* patched updateTextAlignment method

* Change files

* pathced branch , lint fix , lint format

* updated snapshots

* added layout changes to TextLayoutManager

* lint fix and format

* updated snapshots

* updated snapshot Pressable component

* updated to remove extra text_layout null check

* removed comments

* format and lint:fix
acoates-ms added a commit that referenced this pull request Sep 19, 2025
* Pointer events (#14713)

* PointerEvent fixes

* Change files

* format

* [Fabric] Implement SpellCheck and AutoCorrect for TextInput (#14509)

* Fabric : Added support for selectionColor in TextInput component  (#14743)

* Added support for selectionColor for textInput

* yarn fix and format

* Change files

* Implement adjustsFontSizeToFit property for Text in Fabric (#14519)

* Implementation of adjustFontSizeToFit

* Final Changes using TextLayout

* Lint Issue Fixes

* Change files

* prop change detection added

* review Changes and E2E test cases added

* Lint and Format Changes added

* Test Cases Fix added

* Update SnapShot

* Removed the additional Check for resizing Font

* Updated SnapShot

* Review Changes

* Lint and Format Changes

---------

Co-authored-by: Vineeth K <kvineeth@microsoft.com>

* Text : Added EllipsizeMode for tail and clip alignment  (#14660)

* updated ellipsis to respect tail and clip behaviour , for head , middle follow defaulty tail behaviour

* patched updateTextAlignment method

* Change files

* pathced branch , lint fix , lint format

* updated snapshots

* added layout changes to TextLayoutManager

* lint fix and format

* updated snapshots

* updated snapshot Pressable component

* updated to remove extra text_layout null check

* removed comments

* format and lint:fix

* [Fabric] Implement onContentSizeChange in TextInput (#14785)

* Fix : adjustsFontSizeToFit just redrawing won't recalculate the layout (#14813)

* updated adjustsFontSizeToFit textlayout to nullptr

* Change files

* [Fabric] Implement autoFocus property for TextInput for fabric  (#14816)

* Added fix for AutoFocus

* Change files

---------

Co-authored-by: Harini Malothu <hmalothu@microsoft.com>

* [Fabric] Implementation of accessibilityDescription (#14818)

* Initial Commit for accessibilityDescription

* Change files

* Format Changes

* Updating Snapshot

* [Fabric] Implement maxFontSizeMultiplier in Text Input (#14639)

* [Fabric] Fix for updating accessibility value in UIA (#14858)

* Changes for updating accessibilityValue prop

* Change files

* TextInput should capture mouse on mouse down (#14983)

* TextInput should capture mouse on mouse down

* Change files

* format

* [Fabric] Raising UIA Event if Toggle State Changes in Switch Component (#15023)

* Update Toggle State to Narrator

* Yarn Change

* Review Changes

* Review Changes 2.0

* [Fabric] Add Support for ITextProvider, ITextProvider2, and ITextRangeProvider (#14332)

* Partial Implementation

* Add More Implementation

* More Implementation

* More Implementation

* Add Support for Bounding Rectangles

* Complete Initial Implementation

* Change files

* Code Cleanup

* Code Cleanup

* Update Snapshots + Code Cleanup

* Update Snapshots

* Address Feedback

* Address Feedback

* Update Snapshots

* Fix Tests

---------

Co-authored-by: Jon Thysell <jthysell@microsoft.com>

* [Fabric] Fix for Text and TextInput focus issue with screen readers (#15088)

* Few more implementation of TextRange Provider

* Yarn change

* Update Change file

* Screen reader fails to announce the expand/collapse state of the navigation button (#15106)

* adding UIA event handler changes for navigator

* Change files

* adding ViewComponent chnages for accessibility

* removing unnecessary change file

* Remove vnext/fmt/packages.lock.json

---------

Co-authored-by: Protik Biswas <protikbiswas100@microsoft.com>

* fix

* fix

* Upgrade dotnet version

* Change files

* bump sdk

* bump node

* fix

* fix

* Change files

* fix

* fix

* test

* fix

* fix

* update snapshots

* snapshot

* snapshot

* measureLines

* fix

* snapshot

---------

Co-authored-by: Anupriya Verma <54227869+anupriya13@users.noreply.github.com>
Co-authored-by: Abhijeet Jha <74712637+iamAbhi-916@users.noreply.github.com>
Co-authored-by: Vineeth <66076509+vineethkuttan@users.noreply.github.com>
Co-authored-by: Vineeth K <kvineeth@microsoft.com>
Co-authored-by: Harini Malothu <harinimalothu17@gmail.com>
Co-authored-by: Harini Malothu <hmalothu@microsoft.com>
Co-authored-by: Chiara Mooney <34109996+chiaramooney@users.noreply.github.com>
Co-authored-by: Jon Thysell <jthysell@microsoft.com>
Co-authored-by: Protik Biswas <219775028+protikbiswas100@users.noreply.github.com>
Co-authored-by: Protik Biswas <protikbiswas100@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants