rtl support Shipped
What this lens looks for
Every layout MUST support right-to-left languages. Use leading/trailing — not left/right — for all alignment and padding; mirror icons that carry directional meaning (forward/back arrows) so they flip under RTL, but do NOT mirror non-directional icons (checkmarks, clocks); and confirm the layout has been tested with an RTL locale enabled. On Kotlin, expect android:supportsRtl="true" set in the manifest, start/end used instead of left/right in layouts, and RTL forced via developer options for testing; on TypeScript/web, expect CSS logical properties throughout (margin-inline-start not margin-left, padding-inline-end not padding-right, inset-inline-start not left) and dir="rtl" set on the root element for RTL locales; on Windows, expect FlowDirection="RightToLeft" on the root element for RTL locales (WinUI 3 XAML then handles leading/trailing automatically), directional icons mirrored while non-directional icons stay unmirrored, and testing with RTL language packs installed.
What its verifier checks
No left/right used for alignment or padding — only leading/trailing equivalents; directional icons (forward/back arrows) are mirrored for RTL; non-directional icons (checkmarks, clocks) are NOT mirrored; the layout is tested with an RTL locale enabled; Android sets android:supportsRtl="true" and uses start/end rather than left/right; web uses CSS logical properties (margin-inline-start, padding-inline-end, inset-inline-start) and sets dir="rtl" on the root for RTL locales; Windows sets FlowDirection="RightToLeft" on the root element for RTL locales.