Fix screen resizing

This commit is contained in:
ReinUsesLisp 2018-07-10 03:47:05 -03:00
commit a38d73e279

View file

@ -31,6 +31,8 @@ namespace Ryujinx
private Thread RenderThread; private Thread RenderThread;
private AutoResetEvent ResizeEvent;
public GLScreen(Switch Ns, IGalRenderer Renderer) public GLScreen(Switch Ns, IGalRenderer Renderer)
: base(1280, 720, : base(1280, 720,
new GraphicsMode(), "Ryujinx", 0, new GraphicsMode(), "Ryujinx", 0,
@ -43,6 +45,8 @@ namespace Ryujinx
Location = new Point( Location = new Point(
(DisplayDevice.Default.Width / 2) - (Width / 2), (DisplayDevice.Default.Width / 2) - (Width / 2),
(DisplayDevice.Default.Height / 2) - (Height / 2)); (DisplayDevice.Default.Height / 2) - (Height / 2));
ResizeEvent = new AutoResetEvent(false);
} }
private void RenderLoop() private void RenderLoop()
@ -66,6 +70,11 @@ namespace Ryujinx
Renderer.RunActions(); Renderer.RunActions();
if (ResizeEvent.WaitOne(0))
{
Renderer.FrameBuffer.SetWindowSize(Width, Height);
}
Ticks += Chrono.ElapsedTicks; Ticks += Chrono.ElapsedTicks;
Chrono.Restart(); Chrono.Restart();
@ -365,7 +374,7 @@ namespace Ryujinx
protected override void OnResize(EventArgs e) protected override void OnResize(EventArgs e)
{ {
Renderer.FrameBuffer.SetWindowSize(Width, Height); ResizeEvent.Set();
} }
protected override void OnKeyDown(KeyboardKeyEventArgs e) protected override void OnKeyDown(KeyboardKeyEventArgs e)