summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar ameerj2021-12-19 02:02:09 -0500
committerGravatar ameerj2021-12-19 02:09:37 -0500
commit3074b2eb9393aeb366d334d0dbebc54b3024673a (patch)
treeda4ecae37dc43b3f4ccc64df5c807b1675d268fa
parentmain: Make render window borderless fullscreen toggle on the monitor it resid... (diff)
downloadyuzu-3074b2eb9393aeb366d334d0dbebc54b3024673a.tar.gz
yuzu-3074b2eb9393aeb366d334d0dbebc54b3024673a.tar.xz
yuzu-3074b2eb9393aeb366d334d0dbebc54b3024673a.zip
main: Refactor to reduce code duplication in ShowFullscreen()
Diffstat (limited to '')
-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 2daf191b3..a7271e075 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -2546,39 +2546,30 @@ void GMainWindow::ToggleFullscreen() {
2546} 2546}
2547 2547
2548void GMainWindow::ShowFullscreen() { 2548void GMainWindow::ShowFullscreen() {
2549 const auto show_fullscreen = [](QWidget* window) {
2550 if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) {
2551 window->showFullScreen();
2552 return;
2553 }
2554 window->hide();
2555 window->setWindowFlags(window->windowFlags() | Qt::FramelessWindowHint);
2556 const auto screen_geometry = QApplication::desktop()->screenGeometry(window);
2557 window->setGeometry(screen_geometry.x(), screen_geometry.y(), screen_geometry.width(),
2558 screen_geometry.height() + 1);
2559 window->raise();
2560 window->showNormal();
2561 };
2562
2549 if (ui->action_Single_Window_Mode->isChecked()) { 2563 if (ui->action_Single_Window_Mode->isChecked()) {
2550 UISettings::values.geometry = saveGeometry(); 2564 UISettings::values.geometry = saveGeometry();
2551 2565
2552 ui->menubar->hide(); 2566 ui->menubar->hide();
2553 statusBar()->hide(); 2567 statusBar()->hide();
2554 2568
2555 if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) { 2569 show_fullscreen(this);
2556 showFullScreen();
2557 return;
2558 }
2559
2560 hide();
2561 setWindowFlags(windowFlags() | Qt::FramelessWindowHint);
2562 const auto screen_geometry = QApplication::desktop()->screenGeometry(this);
2563 setGeometry(screen_geometry.x(), screen_geometry.y(), screen_geometry.width(),
2564 screen_geometry.height() + 1);
2565 raise();
2566 showNormal();
2567 } else { 2570 } else {
2568 UISettings::values.renderwindow_geometry = render_window->saveGeometry(); 2571 UISettings::values.renderwindow_geometry = render_window->saveGeometry();
2569 2572 show_fullscreen(render_window);
2570 if (Settings::values.fullscreen_mode.GetValue() == Settings::FullscreenMode::Exclusive) {
2571 render_window->showFullScreen();
2572 return;
2573 }
2574
2575 render_window->hide();
2576 render_window->setWindowFlags(windowFlags() | Qt::FramelessWindowHint);
2577 const auto screen_geometry = QApplication::desktop()->screenGeometry(render_window);
2578 render_window->setGeometry(screen_geometry.x(), screen_geometry.y(),
2579 screen_geometry.width(), screen_geometry.height() + 1);
2580 render_window->raise();
2581 render_window->showNormal();
2582 } 2573 }
2583} 2574}
2584 2575