-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
design issues in RTL layout #4776
Comments
@ShlomoCode I'm kinda confused by this. I want to ask some simple questions about some of the control layout/behaviors in the RTL languages.
If you can provide answers of these questions, it can help the devs to make better choice to optimize the UI for RTL languages. |
@uiryuu How can we move forward? |
Sorry, I was really busy these days. You work is well appreciated, and we will merge the translation PR and deal with layout related issue at appropriate time. |
From the Apple documentation for NSWindow.windowTitlebarLayoutDirection:
I'm not happy when documentation contains the words "may be" without an explanation. It sounds like macOS positions the buttons based on the system configured language and not the application configured language. To me that is a macOS defect. How can you provide the ability to set a language on an application basis and only change half of the application behavior? As I'm a junior IINA developer. Maybe one of the other IINA developers knows a way for an application to change this. |
In fact the really big problem is the inversion when dragging: CleanShot.2024-04-12.at.06.03.14.mp4 |
The slider problem reproduced for me. I agree this is a critical problem. Investigating… |
Both Quicktime and Safari do not reverse the playback position slider when the language is Hebrew. That is the behavior you are expecting from IINA, yes? If that is the correct behavior the IINA problem is trivial to fix. Quicktime does reverse the volume slider along with the speaker icon. IINA is failing to reverse that icon. That is another problem that needs to be corrected. Quicktime also does not change the position of the volume slider or the buttons whereas IINA swaps the positions of the volume slider and buttons. What do you view as the correct behavior? |
It is true that usually video players (including Quicktime) do not invert the playback slider, so such behavior (not inverting, like Quicktime) would be accepted. But if Quicktime was built for/by a Hebrew speaking person (RTL), he would absolutely build the software with a slider that moves from right to left. |
I already looked a little bit into implementing a reversed playback position slider. I believe I can change IINA to properly reverse the control. I'm expecting the mini player and Touch Bar will also need to be updated. I will be entering a separate issue for this aspect of the RTL problems for tracking purposes. Stay tuned. |
I've entered issue #4878 specifically for the OSC related RTL problems. |
See #4884 for the OSD related RTL issues. |
I'm working on these problems now. |
On this:
I'm pretty sure in Hebrew that label should be
This label should not be presented to translators. I did not find an official Apple way to do that. I found people putting a special string in the Will need to ask @uiryuu if IINA has some sort of convention for this. At least that is my take on this particular problem. |
I don't know what is happening in Japan... in Israel it is mandatory to mark components in Hebrew, and it is customary to translate the units as well. For example mg/ml are always translated into |
Understood. I will plan on looking into that overlapping. Currently struggling with the battery and color well problems. |
@low-batt The effort you put in is greatly appreciated! Thanks |
@ShlomoCode It is all thanks to you that this localization support is being added. It was your PR #4864 that caught my attention and motivated me to help out. I really appreciate your reviews of my proposed changes and the nice way you report my dumb mistakes. On this one:
In the LTR layout the scroll bar is on the right edge of the window. Reversing that would put the scroll bar on the left edge of the window. I'm confused. Why should it be moved to the middle of the window? I'm currently looking to see if a developer has the time to review and merge PR #4893 and then update Crowdin. That PR adds 3 new strings to be translated. Once Crowdin has been updated I'll be asking you to provide translations for the new strings. Once that is done then I will ask to have the latest translations pulled from Crowdin and merged into |
This is actually a form of bypassing what you referred to in #4776 (comment) |
Now I noticed - the progress indicator in "playback history" (cmd + shift + h) is from right to left, when according to what was said in #4878 it should be from left to right |
I will need to take closer look at the window buttons issue. I was already confused as to why the buttons are in the correct place when run under Xcode. That it is working for Safari suggests it is something IINA is doing wrong. I was expecting we'd be finding additional problems for a while. These all look like problems that need to be corrected. I will keep investigating and proposing fixes. |
Thanks for explaining the window buttons problem. I was confused about the situation with Safari. I am continuing to work on fixes. |
I created issue #4923 for the equalizer problem. |
The translations on Crowdin are no longer at 100%. We have started merging and there is some new text that needs translating. Not sure how much new text will be added for this next release. The one after it is a feature release and definitely will be adding new text. Have a look at my review of PR #4922. |
I have translated the 4 new strings (in fact Hebrew is the only language that is at 100% now lol), and I will try to continue translating in the future when necessary |
Excellent. Yes, does not have to be at 100% for activation. Just thought you would like to be the only language at 100%. 😄 |
After I translated iina into Hebrew (with the kind and patient help of @uiryuu at #4742), I note here some display problems that appear only in the Hebrew language which is an RTL (right to left) layout and not in English which is LRT:
The main video controls (play/pouse) should be on the left ("end of content"), and the others on the right ("start of content")Mistake. see belowWhen "Show time and battery information in full screen" is enabled in UI settings, the battery icon is displayed garbled:
![CleanShot 2024-01-16 at 05 40 52@2x](https://private-user-images.githubusercontent.com/78599753/296925545-beebf792-77d8-4c3e-aaad-9d64b87ad59c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk4OTYyODIsIm5iZiI6MTcxOTg5NTk4MiwicGF0aCI6Ii83ODU5OTc1My8yOTY5MjU1NDUtYmVlYmY3OTItNzdkOC00YzNlLWFhYWQtOWQ2NGI4N2FkNTljLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAyVDA0NTMwMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY0ZWQ0OGRkNTQ1ZDk3MjkyM2VjMmQ5NGNhNWExY2Y2NDZlYTE3OTllNzg5YTc3Y2FlODk2ZjFlZjcwODE0N2UmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.vwGoQ2f5zQDgQ2UF7Nrgb5Smn6xQkjOQ5xsy6d4DQxs)
When there is a scroll bar in the settings, in the RTL layout it should be on the right side of the scrollable content (where I added a yellow line in the picture) and not on the left:
![CleanShot 2024-01-16 at 05 43 47@2x](https://private-user-images.githubusercontent.com/78599753/296925898-de91e2e5-4fc5-46ef-b696-1dd80b3c829e.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk4OTYyODIsIm5iZiI6MTcxOTg5NTk4MiwicGF0aCI6Ii83ODU5OTc1My8yOTY5MjU4OTgtZGU5MWUyZTUtNGZjNS00NmVmLWI2OTYtMWRkODBiM2M4MjllLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAyVDA0NTMwMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWUyMGU5MWNmMjJkMTkxNmUzYmYyNjJlYjRkOGEyZWRiMTRjNmUzZmRiMDdmYjQ4YzAwYzgzYTViNGRiOTE0MzEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.WeIQbmwYcD3fwmPnj8ro39o0u9m4XSkx0z7RMTetO_8)
this only happens when the system language is LTR, and a RTL language is set for the application in the system settings. when the system language is RTL it is normal, because the buttons are located on the right side.
but this such a mix is quite a common case.
The buttons that open a color picker look a little damaged in shape:
![CleanShot 2024-01-16 at 05 46 33@2x](https://private-user-images.githubusercontent.com/78599753/296926057-e3f4b3fd-ba7e-4dee-94ad-4c69b3244d5f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk4OTYyODIsIm5iZiI6MTcxOTg5NTk4MiwicGF0aCI6Ii83ODU5OTc1My8yOTY5MjYwNTctZTNmNGIzZmQtYmE3ZS00ZGVlLTk0YWQtNGM2OWIzMjQ0ZDVmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAyVDA0NTMwMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU1NDBmNTZlZWQ3MzBlZGRiNDEyMmMyMTQ2ZDA3NjcwMWIzZjJkNmU3MjMwNDY5ZDcyMTY0NGViOTNjZTliNjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.OZ57tRAB59P4_0A-JR01x0D3JoGAUJBN27LnuN4gT_8)
When adding an audio filter, the original sentence is 2 words "default (ffmage)", in Hebrew the only translation is 3 words, but it should not be cut like in the picture but the column will expand as needed to contain all the words:
![CleanShot 2024-01-16 at 06 23 49@2x](https://private-user-images.githubusercontent.com/78599753/296932271-5dc90779-f246-41dd-a01c-3aa5ae9ea7fc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk4OTYyODIsIm5iZiI6MTcxOTg5NTk4MiwicGF0aCI6Ii83ODU5OTc1My8yOTY5MzIyNzEtNWRjOTA3NzktZjI0Ni00MWRkLWEwMWMtM2FhNWFlOWVhN2ZjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAyVDA0NTMwMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTllMGE0ZmZiZTEyMjE1ZjBmZmUwYWZhNDgzODZjNzU1MjdiODViY2RiYWY1M2Y3NDQ0ODIzZDgwYzI5NGQ0ZWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.mTwyOYhKbO7IH9hGGtsy8QFXIOTJRK-MEwchkFMXGKs)
In "Audio delay" in audio panel the number box is too big, and in Hebrew "שנ'" (sec) is cut off
![CleanShot 2024-01-20 at 20 02 47@2x](https://private-user-images.githubusercontent.com/78599753/298299731-d6279790-d495-46c5-b7b3-aa12cb3b3991.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk4OTYyODIsIm5iZiI6MTcxOTg5NTk4MiwicGF0aCI6Ii83ODU5OTc1My8yOTgyOTk3MzEtZDYyNzk3OTAtZDQ5NS00NmM1LWI3YjMtYWExMmNiM2IzOTkxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzAyVDA0NTMwMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY5ZjRmMjBhNzU5ZmM5ZTBkZmJiM2IzMzZjOTA3MThmYzg2ZDEyNjQ2ZjliYzZjNTY5ZmNiY2I2YzNkNDc3MTAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.ITOvYf_HYz7EMlm1DQDUXeC1OlIPup-w36ZdlA3kDP0)
Even if I only translate to the first letter (ש), it is partially cut off
The text was updated successfully, but these errors were encountered: