From 1a45dc8df882e58e4280849541e4f3be94f0edb9 Mon Sep 17 00:00:00 2001 From: Isaac Marovitz <42140194+IsaacMarovitz@users.noreply.github.com> Date: Sat, 13 Jan 2024 00:42:42 +0000 Subject: 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 --- src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/Ryujinx.Ava/UI/Windows/StyleableWindow.cs') 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) -- cgit v1.2.3