diff options
| author | Isaac Marovitz <42140194+IsaacMarovitz@users.noreply.github.com> | 2024-01-13 00:42:42 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-13 01:42:42 +0100 |
| commit | 1a45dc8df882e58e4280849541e4f3be94f0edb9 (patch) | |
| tree | 6019d8398e4b45972d022875a31aa32af6acb6b2 /src/Ryujinx.Ava/UI/Windows | |
| parent | f037fcba9a5713e68cadbbf8a823913943ac2626 (diff) | |
Ava UI: RTL Language Support (#5619)
* Add Hebrew locale files to ItemGroups
* Align all windows RTL for testing
This should be controlled with a binding that selects the appropriate layout based on current language
* Update FlowDirection as Locale changes
* Fix Settings NavigationViewItem FlowDirection
* Fix remaining text
* Fix input menu directionality
* Fix RTL not rendering
* Fix rebase errors
Diffstat (limited to 'src/Ryujinx.Ava/UI/Windows')
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/AboutWindow.axaml | 2 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/AmiiboWindow.axaml | 2 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/MainWindow.axaml | 6 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/SettingsWindow.axaml | 3 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs | 10 | ||||
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/TitleUpdateWindow.axaml | 2 |
6 files changed, 19 insertions, 6 deletions
diff --git a/src/Ryujinx.Ava/UI/Windows/AboutWindow.axaml b/src/Ryujinx.Ava/UI/Windows/AboutWindow.axaml index a8fd11b2..a0fd2a1a 100644 --- a/src/Ryujinx.Ava/UI/Windows/AboutWindow.axaml +++ b/src/Ryujinx.Ava/UI/Windows/AboutWindow.axaml @@ -238,7 +238,7 @@ <TextBlock FontSize="10" Text="{locale:Locale AboutRyujinxContributorsButtonHeader}" - TextAlignment="Right" + TextAlignment="End" ToolTip.Tip="{locale:Locale AboutRyujinxMaintainersContentTooltipMessage}" /> </Button> </StackPanel> diff --git a/src/Ryujinx.Ava/UI/Windows/AmiiboWindow.axaml b/src/Ryujinx.Ava/UI/Windows/AmiiboWindow.axaml index caf7c1f3..c587aa87 100644 --- a/src/Ryujinx.Ava/UI/Windows/AmiiboWindow.axaml +++ b/src/Ryujinx.Ava/UI/Windows/AmiiboWindow.axaml @@ -72,4 +72,4 @@ Click="CancelButton_Click" /> </Grid> </Grid> -</window:StyleableWindow>
\ No newline at end of file +</window:StyleableWindow> diff --git a/src/Ryujinx.Ava/UI/Windows/MainWindow.axaml b/src/Ryujinx.Ava/UI/Windows/MainWindow.axaml index 0d9a5949..4def7c28 100644 --- a/src/Ryujinx.Ava/UI/Windows/MainWindow.axaml +++ b/src/Ryujinx.Ava/UI/Windows/MainWindow.axaml @@ -158,7 +158,7 @@ FontWeight="Bold" IsVisible="{Binding ShowLoadProgress}" Text="{Binding LoadHeading}" - TextAlignment="Left" + TextAlignment="Start" TextWrapping="Wrap" MaxWidth="500" /> <Border @@ -192,7 +192,7 @@ FontSize="18" IsVisible="{Binding ShowLoadProgress}" Text="{Binding CacheLoadStatus}" - TextAlignment="Left" + TextAlignment="Start" MaxWidth="500" /> </Grid> </Grid> @@ -202,4 +202,4 @@ Grid.Row="2" /> </Grid> </Grid> -</window:StyleableWindow>
\ No newline at end of file +</window:StyleableWindow> diff --git a/src/Ryujinx.Ava/UI/Windows/SettingsWindow.axaml b/src/Ryujinx.Ava/UI/Windows/SettingsWindow.axaml index a0a75f61..40cac90d 100644 --- a/src/Ryujinx.Ava/UI/Windows/SettingsWindow.axaml +++ b/src/Ryujinx.Ava/UI/Windows/SettingsWindow.axaml @@ -101,6 +101,9 @@ <Style Selector="Grid#PlaceholderGrid"> <Setter Property="Height" Value="40" /> </Style> + <Style Selector="ui|NavigationViewItem ui|SymbolIcon"> + <Setter Property="FlowDirection" Value="LeftToRight" /> + </Style> </ui:NavigationView.Styles> </ui:NavigationView> <ReversibleStackPanel diff --git a/src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs b/src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs index 84b53035..3cd12bc8 100644 --- a/src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs +++ b/src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs @@ -1,7 +1,9 @@ using Avalonia.Controls; using Avalonia.Controls.Primitives; +using Avalonia.Media; using Avalonia.Media.Imaging; using Avalonia.Platform; +using Ryujinx.Ava.Common.Locale; using Ryujinx.Ui.Common.Configuration; using System.IO; using System.Reflection; @@ -22,6 +24,14 @@ namespace Ryujinx.Ava.UI.Windows Icon = new WindowIcon(stream); stream.Position = 0; IconImage = new Bitmap(stream); + + LocaleManager.Instance.LocaleChanged += LocaleChanged; + LocaleChanged(); + } + + private void LocaleChanged() + { + FlowDirection = LocaleManager.Instance.IsRTL() ? FlowDirection.RightToLeft : FlowDirection.LeftToRight; } protected override void OnApplyTemplate(TemplateAppliedEventArgs e) diff --git a/src/Ryujinx.Ava/UI/Windows/TitleUpdateWindow.axaml b/src/Ryujinx.Ava/UI/Windows/TitleUpdateWindow.axaml index 78fc6b28..3eff389f 100644 --- a/src/Ryujinx.Ava/UI/Windows/TitleUpdateWindow.axaml +++ b/src/Ryujinx.Ava/UI/Windows/TitleUpdateWindow.axaml @@ -130,4 +130,4 @@ </StackPanel> </Panel> </Grid> -</UserControl>
\ No newline at end of file +</UserControl> |
