gtk3: Add base for future Vulkan integration (#2260)

* gtk3: Add base for future Vulkan integration

This PR puts in place the fondation for the future Vulkan integration on
the GTK3 UI.

This also updated SPB to 0.0.3-build14 that fixed a use after free on
XErrorHandler on Linux.

* Address rip's comments

* Merge GLWidget inside GLRenderer

* Clean up and deduplicate renderer implementations

* Address shahil's comments

* Address Ac_K's comments

* Address gdkchan's comments
This commit is contained in:
Mary 2021-05-04 18:19:04 +02:00 committed by GitHub
parent 1769510a28
commit faac08e638
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 868 additions and 760 deletions

View file

@ -187,9 +187,9 @@ namespace Ryujinx.Ui.Windows
mainWindow.InputManager.GamepadDriver.OnGamepadConnected += HandleOnGamepadConnected;
mainWindow.InputManager.GamepadDriver.OnGamepadDisconnected += HandleOnGamepadDisconnected;
if (_mainWindow.GlRendererWidget != null)
if (_mainWindow.RendererWidget != null)
{
_mainWindow.GlRendererWidget.NpadManager.BlockInputUpdates();
_mainWindow.RendererWidget.NpadManager.BlockInputUpdates();
}
}
@ -219,9 +219,9 @@ namespace Ryujinx.Ui.Windows
_mainWindow.InputManager.GamepadDriver.OnGamepadConnected -= HandleOnGamepadConnected;
_mainWindow.InputManager.GamepadDriver.OnGamepadDisconnected -= HandleOnGamepadDisconnected;
if (_mainWindow.GlRendererWidget != null)
if (_mainWindow.RendererWidget != null)
{
_mainWindow.GlRendererWidget.NpadManager.UnblockInputUpdates();
_mainWindow.RendererWidget.NpadManager.UnblockInputUpdates();
}
_selectedGamepad?.Dispose();
@ -1141,9 +1141,9 @@ namespace Ryujinx.Ui.Windows
}
}
if (_mainWindow.GlRendererWidget != null)
if (_mainWindow.RendererWidget != null)
{
_mainWindow.GlRendererWidget.NpadManager.ReloadConfiguration(newConfig);
_mainWindow.RendererWidget.NpadManager.ReloadConfiguration(newConfig);
}
// Atomically replace and signal input change.