aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Ryujinx/Ui/MainWindow.cs20
1 files changed, 16 insertions, 4 deletions
diff --git a/Ryujinx/Ui/MainWindow.cs b/Ryujinx/Ui/MainWindow.cs
index 27fcd333..92e0c956 100644
--- a/Ryujinx/Ui/MainWindow.cs
+++ b/Ryujinx/Ui/MainWindow.cs
@@ -94,6 +94,7 @@ namespace Ryujinx.Ui
this.DefaultWidth = monitorWidth < 1280 ? monitorWidth : 1280;
this.DefaultHeight = monitorHeight < 760 ? monitorHeight : 760;
+ this.WindowStateEvent += MainWindow_WindowStateEvent;
this.DeleteEvent += Window_Close;
_fullScreen.Activated += FullScreen_Toggled;
@@ -192,6 +193,11 @@ namespace Ryujinx.Ui
_statusBar.Hide();
}
+ private void MainWindow_WindowStateEvent(object o, WindowStateEventArgs args)
+ {
+ _fullScreen.Label = args.Event.NewWindowState.HasFlag(Gdk.WindowState.Fullscreen) ? "Exit Fullscreen" : "Enter Fullscreen";
+ }
+
#if USE_DEBUGGING
private void _openDebugger_Opened(object sender, EventArgs e)
{
@@ -505,6 +511,11 @@ namespace Ryujinx.Ui
_glWidget.ShowAll();
EditFooterForGameRender();
+
+ if (this.Window.State.HasFlag(Gdk.WindowState.Fullscreen))
+ {
+ ToggleExtraWidgets(false);
+ }
});
_glWidget.WaitEvent.WaitOne();
@@ -520,6 +531,11 @@ namespace Ryujinx.Ui
// NOTE: Everything that is here will not be executed when you close the UI.
Application.Invoke(delegate
{
+ if (this.Window.State.HasFlag(Gdk.WindowState.Fullscreen))
+ {
+ ToggleExtraWidgets(true);
+ }
+
_viewBox.Remove(_glWidget);
_glWidget.Exit();
@@ -583,10 +599,6 @@ namespace Ryujinx.Ui
_footerBox.Hide();
}
}
-
- bool fullScreenToggled = this.Window.State.HasFlag(Gdk.WindowState.Fullscreen);
-
- _fullScreen.Label = fullScreenToggled ? "Exit Fullscreen" : "Enter Fullscreen";
}
private static void UpdateGameMetadata(string titleId)