12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using Avalonia.Controls;
- using Avalonia.Input;
- using Avalonia.Media;
- using PicView.Avalonia.Input;
- using PicView.Avalonia.UI;
- using PicView.Core.FileHandling;
- using PicView.Core.Localization;
- using PicView.Core.MacOS.FileAssociation;
- using PicView.Core.Sizing;
- namespace PicView.Avalonia.MacOS.Views;
- public partial class SettingsWindow : Window
- {
- public SettingsWindow()
- {
- InitializeComponent();
- MinHeight = ScreenHelper.ScreenSize.WorkingAreaHeight switch
- {
- < 650 => 600,
- >= 650 => 700,
- _ => SizeDefaults.WindowMinSize
- };
- if (!Settings.Theme.Dark || Settings.Theme.GlassTheme)
- {
- TitleText.Background = Brushes.Transparent;
- XSettingsView.Background = Brushes.Transparent;
- }
- Loaded += delegate
- {
- MinWidth = MaxWidth = Bounds.Width;
- Height = 500;
- Title = TranslationManager.Translation.Settings + " - PicView";
- };
- KeyDown += (_, e) =>
- {
- if (e.Key is Key.Escape)
- {
- e.Handled = true;
- MainKeyboardShortcuts.IsEscKeyEnabled = false;
- Close();
- }
- };
-
- Closing += async delegate
- {
- Hide();
- await SaveSettingsAsync();
- };
-
- InitializeFileAssociationManager();
- }
- private void MoveWindow(object? sender, PointerPressedEventArgs e)
- {
- if (VisualRoot is null) { return; }
- var hostWindow = (Window)VisualRoot;
- hostWindow?.BeginMoveDrag(e);
- }
-
- private static void InitializeFileAssociationManager()
- {
- var iIFileAssociationService = new MacFileAssociationService();
- FileAssociationManager.Initialize(iIFileAssociationService);
- }
- }
|