From acb1647c86ee8410817ae22b38fcd481a07fe84d Mon Sep 17 00:00:00 2001
From: Mary <me@thog.eu>
Date: Fri, 7 May 2021 18:37:48 +0200
Subject: [PATCH] Fix embedded game rendering (#2275)

This fix an issue when after a relaunch of a game containing other
games (embedded games), the renderer window size would be 1x1.

This bug was introduced by #2260.
---
 Ryujinx/Ui/RendererWidgetBase.cs | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/Ryujinx/Ui/RendererWidgetBase.cs b/Ryujinx/Ui/RendererWidgetBase.cs
index 5270e31e13..1e388747d2 100644
--- a/Ryujinx/Ui/RendererWidgetBase.cs
+++ b/Ryujinx/Ui/RendererWidgetBase.cs
@@ -64,6 +64,9 @@ namespace Ryujinx.Ui
         private GraphicsDebugLevel _glLogLevel;
         private string _gpuVendorName;
 
+        private int _windowHeight;
+        private int _windowWidth;
+
         public RendererWidgetBase(InputManager inputManager, GraphicsDebugLevel glLogLevel)
         {
             _inputManager = inputManager;
@@ -225,7 +228,10 @@ namespace Ryujinx.Ui
 
             Gdk.Monitor monitor = Display.GetMonitorAtWindow(Window);
 
-            Renderer?.Window.SetSize(evnt.Width * monitor.ScaleFactor, evnt.Height * monitor.ScaleFactor);
+            _windowWidth = evnt.Width * monitor.ScaleFactor;
+            _windowHeight = evnt.Height * monitor.ScaleFactor;
+
+            Renderer?.Window.SetSize(_windowWidth, _windowHeight);
 
             return result;
         }
@@ -293,6 +299,7 @@ namespace Ryujinx.Ui
         {
             Device = device;
             Renderer = Device.Gpu.Renderer;
+            Renderer?.Window.SetSize(_windowWidth, _windowHeight);
         }
 
         public void Render()