
* 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
45 lines
1.4 KiB
C#
45 lines
1.4 KiB
C#
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;
|
|
|
|
namespace Ryujinx.Ava.UI.Windows
|
|
{
|
|
public class StyleableWindow : Window
|
|
{
|
|
public Bitmap IconImage { get; set; }
|
|
|
|
public StyleableWindow()
|
|
{
|
|
WindowStartupLocation = WindowStartupLocation.CenterOwner;
|
|
TransparencyLevelHint = new[] { WindowTransparencyLevel.None };
|
|
|
|
using Stream stream = Assembly.GetAssembly(typeof(ConfigurationState)).GetManifestResourceStream("Ryujinx.Ui.Common.Resources.Logo_Ryujinx.png");
|
|
|
|
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)
|
|
{
|
|
base.OnApplyTemplate(e);
|
|
|
|
ExtendClientAreaChromeHints = ExtendClientAreaChromeHints.SystemChrome | ExtendClientAreaChromeHints.OSXThickTitleBar;
|
|
}
|
|
}
|
|
}
|