|
@@ -1,6 +1,7 @@
|
|
-using Avalonia.Interactivity;
|
|
|
|
|
|
+using Avalonia.Controls;
|
|
|
|
+using Avalonia.Controls.ApplicationLifetimes;
|
|
|
|
+using Avalonia.Interactivity;
|
|
using Avalonia.Media.Imaging;
|
|
using Avalonia.Media.Imaging;
|
|
-using Avalonia.Threading;
|
|
|
|
using HanumanInstitute.MvvmDialogs;
|
|
using HanumanInstitute.MvvmDialogs;
|
|
using ReactiveUI;
|
|
using ReactiveUI;
|
|
using System;
|
|
using System;
|
|
@@ -42,7 +43,13 @@ namespace VeloeAvaloniaKemonoPartyApp.ViewModels
|
|
try
|
|
try
|
|
{
|
|
{
|
|
bitmap = new Bitmap(imageStream);
|
|
bitmap = new Bitmap(imageStream);
|
|
- bitmap = bitmap.CreateScaledBitmap(new Avalonia.PixelSize(bitmap.PixelSize.Width / 2, bitmap.PixelSize.Height / 2));
|
|
|
|
|
|
+ if (App.Current.ApplicationLifetime is ISingleViewApplicationLifetime lifetime)
|
|
|
|
+ {
|
|
|
|
+ var topLevel = TopLevel.GetTopLevel(lifetime.MainView);
|
|
|
|
+
|
|
|
|
+ if (bitmap.Size.Width > Math.Ceiling(topLevel.ClientSize.Width * topLevel.RenderScaling))
|
|
|
|
+ bitmap = bitmap.CreateScaledBitmap(new Avalonia.PixelSize((int)Math.Ceiling(topLevel.ClientSize.Width*topLevel.RenderScaling), (int)Math.Ceiling(topLevel.ClientSize.Width*topLevel.RenderScaling / bitmap.Size.AspectRatio)));
|
|
|
|
+ }
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
catch (Exception ex)
|
|
{
|
|
{
|