diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2022-12-15 12:05:01 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-15 12:05:01 -0500 |
commit | 3ff7a5de1a54c9f478b23de1a0bd6c6188ea80a6 (patch) | |
tree | 0d014da28cf6a8a1045cd2a7d7df8301522ea47c /src/yuzu/main.cpp | |
parent | e2f32e8c88621dbb816d38bc1ffc610d7eb2ae03 (diff) | |
parent | 09e3029c1118616394e5e9c45dfcdd4adcdf86ad (diff) |
Merge pull request #7410 from Nefsen402/wayland-fixes
Wayland fixes
Diffstat (limited to 'src/yuzu/main.cpp')
-rw-r--r-- | src/yuzu/main.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index 6c204416f..885e24990 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -2915,9 +2915,14 @@ static QScreen* GuessCurrentScreen(QWidget* window) { }); } +bool GMainWindow::UsingExclusiveFullscreen() { + return Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive || + QGuiApplication::platformName() == QStringLiteral("wayland"); +} + void GMainWindow::ShowFullscreen() { - const auto show_fullscreen = [](QWidget* window) { - if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) { + const auto show_fullscreen = [this](QWidget* window) { + if (UsingExclusiveFullscreen()) { window->showFullScreen(); return; } @@ -2945,7 +2950,7 @@ void GMainWindow::ShowFullscreen() { void GMainWindow::HideFullscreen() { if (ui->action_Single_Window_Mode->isChecked()) { - if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) { + if (UsingExclusiveFullscreen()) { showNormal(); restoreGeometry(UISettings::values.geometry); } else { @@ -2959,7 +2964,7 @@ void GMainWindow::HideFullscreen() { statusBar()->setVisible(ui->action_Show_Status_Bar->isChecked()); ui->menubar->show(); } else { - if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) { + if (UsingExclusiveFullscreen()) { render_window->showNormal(); render_window->restoreGeometry(UISettings::values.renderwindow_geometry); } else { |