Avalonia: fix HiDPI/Retina scaling for embedded window on macOS.

This commit is contained in:
V380-Ori
2026-02-25 17:15:46 -06:00
committed by KeatonTheBot
parent 3bf8a17f01
commit bd96f2f51f
2 changed files with 15 additions and 2 deletions
+7 -2
View File
@@ -189,12 +189,17 @@ namespace Ryujinx.Ava.UI.Renderer
// Make its renderer our metal layer.
child.SendMessage("setWantsLayer:", 1);
child.SendMessage("setLayer:", metalLayer);
metalLayer.SendMessage("setContentsScale:", Program.DesktopScaleFactor);
double initialScaleFactor = child.GetDoubleFromMessage("backingScaleFactor");
metalLayer.SendMessage("setContentsScale:", initialScaleFactor);
// Ensure the scale factor is up to date.
_updateBoundsCallback = _ =>
{
metalLayer.SendMessage("setContentsScale:", Program.DesktopScaleFactor);
double currentScaleFactor = child.GetDoubleFromMessage("backingScaleFactor");
metalLayer.SendMessage("setContentsScale:", currentScaleFactor);
};
nint nsView = child.ObjPtr;