summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-12-21 18:05:11 -0800
committerGitHub <noreply@github.com>2021-12-21 18:05:11 -0800
commit6991d447d4f2c02b941cc6194a4d256c56063143 (patch)
treeb27f885d147836a1b9dd3507c3ab455d773dac71
parentb30a1d49ff42fa4207db85c4e4ba538f286065e7 (diff)
parent3074b2eb9393aeb366d334d0dbebc54b3024673a (diff)
Merge pull request #7604 from ameerj/fullscreen-render-window
main: Make separate render window fullscreen toggle on the monitor it resides in
-rw-r--r--src/yuzu/main.cpp41
1 files changed, 16 insertions, 25 deletions
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index b7bb43348..a7271e075 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -2546,39 +2546,30 @@ void GMainWindow::ToggleFullscreen() {
}
void GMainWindow::ShowFullscreen() {
+ const auto show_fullscreen = [](QWidget* window) {
+ if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) {
+ window->showFullScreen();
+ return;
+ }
+ window->hide();
+ window->setWindowFlags(window->windowFlags() | Qt::FramelessWindowHint);
+ const auto screen_geometry = QApplication::desktop()->screenGeometry(window);
+ window->setGeometry(screen_geometry.x(), screen_geometry.y(), screen_geometry.width(),
+ screen_geometry.height() + 1);
+ window->raise();
+ window->showNormal();
+ };
+
if (ui->action_Single_Window_Mode->isChecked()) {
UISettings::values.geometry = saveGeometry();
ui->menubar->hide();
statusBar()->hide();
- if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) {
- showFullScreen();
- return;
- }
-
- hide();
- setWindowFlags(windowFlags() | Qt::FramelessWindowHint);
- const auto screen_geometry = QApplication::desktop()->screenGeometry(this);
- setGeometry(screen_geometry.x(), screen_geometry.y(), screen_geometry.width(),
- screen_geometry.height() + 1);
- raise();
- showNormal();
+ show_fullscreen(this);
} else {
UISettings::values.renderwindow_geometry = render_window->saveGeometry();
-
- if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) {
- render_window->showFullScreen();
- return;
- }
-
- render_window->hide();
- render_window->setWindowFlags(windowFlags() | Qt::FramelessWindowHint);
- const auto screen_geometry = QApplication::desktop()->screenGeometry(this);
- render_window->setGeometry(screen_geometry.x(), screen_geometry.y(),
- screen_geometry.width(), screen_geometry.height() + 1);
- render_window->raise();
- render_window->showNormal();
+ show_fullscreen(render_window);
}
}