From d6b9babe1d73a78e963455a5a6ea3e7431a44ece Mon Sep 17 00:00:00 2001 From: Thog Date: Tue, 21 Jan 2020 23:23:11 +0100 Subject: Keep the GUI alive when closing a game (#888) * Keep the GUI alive when closing a game Make HLE.Switch init when starting a game and dispose it when closing the GlScreen. This also make HLE in charge of disposing the audio and gpu backend. * Address Ac_k's comments * Make sure to dispose the Discord module and use GTK quit method Also update Discord Precense when closing a game. * Make sure to dispose MainWindow * Address gdk's comments --- .../ApplicationProxyService/ApplicationProxy/IApplicationFunctions.cs | 2 +- Ryujinx.HLE/HOS/Services/Fs/IFileSystemProxy.cs | 2 +- Ryujinx.HLE/HOS/Services/Sdb/Pl/ISharedFontManager.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'Ryujinx.HLE/HOS/Services') diff --git a/Ryujinx.HLE/HOS/Services/Am/AppletOE/ApplicationProxyService/ApplicationProxy/IApplicationFunctions.cs b/Ryujinx.HLE/HOS/Services/Am/AppletOE/ApplicationProxyService/ApplicationProxy/IApplicationFunctions.cs index 904264aa..0840a913 100644 --- a/Ryujinx.HLE/HOS/Services/Am/AppletOE/ApplicationProxyService/ApplicationProxy/IApplicationFunctions.cs +++ b/Ryujinx.HLE/HOS/Services/Am/AppletOE/ApplicationProxyService/ApplicationProxy/IApplicationFunctions.cs @@ -60,7 +60,7 @@ namespace Ryujinx.HLE.HOS.Services.Am.AppletOE.ApplicationProxyService.Applicati "No control file was found for this game. Using a dummy one instead. This may cause inaccuracies in some games."); } - Result result = EnsureApplicationSaveData(context.Device.System.FsClient, out long requiredSize, titleId, + Result result = EnsureApplicationSaveData(context.Device.FileSystem.FsClient, out long requiredSize, titleId, ref context.Device.System.ControlData.Value, ref userId); context.ResponseData.Write(requiredSize); diff --git a/Ryujinx.HLE/HOS/Services/Fs/IFileSystemProxy.cs b/Ryujinx.HLE/HOS/Services/Fs/IFileSystemProxy.cs index 02743a47..7c31814f 100644 --- a/Ryujinx.HLE/HOS/Services/Fs/IFileSystemProxy.cs +++ b/Ryujinx.HLE/HOS/Services/Fs/IFileSystemProxy.cs @@ -21,7 +21,7 @@ namespace Ryujinx.HLE.HOS.Services.Fs public IFileSystemProxy(ServiceCtx context) { - _baseFileSystemProxy = context.Device.System.FsServer.CreateFileSystemProxyService(); + _baseFileSystemProxy = context.Device.FileSystem.FsServer.CreateFileSystemProxyService(); } [Command(1)] diff --git a/Ryujinx.HLE/HOS/Services/Sdb/Pl/ISharedFontManager.cs b/Ryujinx.HLE/HOS/Services/Sdb/Pl/ISharedFontManager.cs index 418c15f2..4560d954 100644 --- a/Ryujinx.HLE/HOS/Services/Sdb/Pl/ISharedFontManager.cs +++ b/Ryujinx.HLE/HOS/Services/Sdb/Pl/ISharedFontManager.cs @@ -61,7 +61,7 @@ namespace Ryujinx.HLE.HOS.Services.Sdb.Pl // GetSharedMemoryNativeHandle() -> handle public ResultCode GetSharedMemoryNativeHandle(ServiceCtx context) { - context.Device.System.Font.EnsureInitialized(context.Device.System.ContentManager, false); + context.Device.System.Font.EnsureInitialized(context.Device.System.ContentManager); if (context.Process.HandleTable.GenerateHandle(context.Device.System.FontSharedMem, out int handle) != KernelResult.Success) { -- cgit v1.2.3