[iOS] RTL column mirroring in UICollectionView - fix#32372
[iOS] RTL column mirroring in UICollectionView - fix#32372PureWeen merged 3 commits intodotnet:inflight/currentfrom
Conversation
|
Hey there @@kubaflo! Thank you so much for your PR! Someone from the team will get assigned to your PR shortly and we'll get it reviewed. |
There was a problem hiding this comment.
Pull Request Overview
This PR fixes an issue where iOS UICollectionView compositional layouts don't properly mirror columns in right-to-left (RTL) flow directions. The fix explicitly sets the SemanticContentAttribute on the native UICollectionView to ensure RTL layout behavior is correctly applied.
- Adds explicit semantic content attribute handling for the UICollectionView based on FlowDirection
- Maps FlowDirection enum values to appropriate UISemanticContentAttribute values
- Only updates the SemanticContentAttribute when it differs from the desired value
src/Controls/src/Core/Handlers/Items2/iOS/ItemsViewController2.cs
Outdated
Show resolved
Hide resolved
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
jsuarezruiz
left a comment
There was a problem hiding this comment.
Could include an UITest to check that after switching to RTL: first column is right‑anchored?
| } | ||
|
|
||
| if (CollectionView.SemanticContentAttribute != desiredAttr) | ||
| { |
There was a problem hiding this comment.
Compositional and flow layouts may not re-query attributes immediately, requires to force a layout pass?
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
|
/rebase |
Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView.
e588d82 to
e9fecfa
Compare
|
/backport to release/10.0.1xx-sr1 |
|
Started backporting to |
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
* Fix RTL column mirroring in UICollectionView Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView. * - add UITests * Improvements --------- Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
Note
Are you waiting for the changes in this PR to be merged?
It would be very helpful if you could test the resulting artifacts from this PR and let us know in a comment if this change resolves your issue. Thank you!
Description of Change
Explicitly sets the semantic content attribute on the native UICollectionView to ensure compositional layouts mirror columns correctly in right-to-left (RTL) scenarios. This addresses an issue where the platform view's semantic attribute does not propagate to native children not backed by IView.
Screen.Recording.2025-11-04.at.00.40.34.mov
Screen.Recording.2025-11-04.at.00.37.54.mov
Issues Fixed
Fixes #32359