Skip to content

Add Support for RTL text in most UI elements (#759)#760

Merged
aome510 merged 4 commits into
aome510:masterfrom
damageboy:dmg/more_bidi
Jul 27, 2025
Merged

Add Support for RTL text in most UI elements (#759)#760
aome510 merged 4 commits into
aome510:masterfrom
damageboy:dmg/more_bidi

Conversation

@damageboy

@damageboy damageboy commented Jun 25, 2025

Copy link
Copy Markdown
Contributor

Resolves #759

  • Search results
  • Playback Metadata/Rect
  • Main View
  • Playlist View

Before:
image

After:
image

@damageboy damageboy force-pushed the dmg/more_bidi branch 2 times, most recently from 6b5e36d to 61fdc2b Compare June 25, 2025 11:04

@devceline devceline left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Does this have any noticeable impact on performance? I considered doing this when I added the PR for lyrics but I thought the trade off might not be worth it.

@damageboy

damageboy commented Jun 28, 2025

Copy link
Copy Markdown
Contributor Author

Not on my macbook pro m3, the code I lifted off of a previous PR is at least minimalistic in its approach by doing as little as possible if bidi strings are not at play...
So there's that...

@devceline devceline left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Can we also re-use the same logic for lyrics

@damageboy

damageboy commented Jun 28, 2025

Copy link
Copy Markdown
Contributor Author

Sure, I'll re-use the sI've unified everything to go through one impl of to_bidi_string() in ui::utils

Repushed @ f44cf86

- Search results
- Playback Metadata/Rect
- Main View
- Playlist View
@aome510 aome510 merged commit e8b6164 into aome510:master Jul 27, 2025
5 checks passed
tojamrok pushed a commit to tojamrok/spotify-player that referenced this pull request Sep 3, 2025
damageboy added a commit to damageboy/ytermusic that referenced this pull request Feb 27, 2026
- closes ccgauche#136
- adopts the code from
  aome510/spotify-player#760 which achieved the
- Apply Unicode Bidirectional Algorithm via unicode-bidi crate to reorder
  RTL text (Hebrew, Arabic) for correct terminal display.
- Add calls to to_bidi_string() utility and applies it at all
  user-facing rendering points: music player title/playlist,
  search results, playlist chooser, and playlist inspector.
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.

RTL Support is sketchy/lacking

3 participants