Qt: Fix exclusive fullscreen not being entered on startup

This commit is contained in:
spycrab 2018-06-08 19:59:24 +02:00
parent 48b7cfa75c
commit 6c19b5947b
2 changed files with 11 additions and 7 deletions

View File

@ -209,6 +209,12 @@ void MainWindow::InitCoreCallbacks()
connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [=](Core::State state) {
if (state == Core::State::Uninitialized)
OnStopComplete();
if (state == Core::State::Running && m_fullscreen_requested)
{
FullScreen();
m_fullscreen_requested = false;
}
});
installEventFilter(this);
m_render_widget->installEventFilter(this);
@ -771,8 +777,12 @@ void MainWindow::StartGame(std::unique_ptr<BootParameters>&& parameters)
QMessageBox::critical(this, tr("Error"), tr("Failed to init core"), QMessageBox::Ok);
return;
}
ShowRenderWidget();
if (SConfig::GetInstance().bFullscreen)
m_fullscreen_requested = true;
#ifdef Q_OS_WIN
// Prevents Windows from sleeping, turning off the display, or idling
EXECUTION_STATE shouldScreenSave =
@ -810,13 +820,6 @@ void MainWindow::SetFullScreenResolution(bool fullscreen)
void MainWindow::ShowRenderWidget()
{
if (SConfig::GetInstance().bFullscreen && !m_render_widget->isFullScreen())
{
m_render_widget->showFullScreen();
SetFullScreenResolution(true);
return;
}
SetFullScreenResolution(false);
Host::GetInstance()->SetRenderFullscreen(false);

View File

@ -175,6 +175,7 @@ private:
bool m_rendering_to_main;
bool m_stop_requested = false;
bool m_exit_requested = false;
bool m_fullscreen_requested = false;
int m_state_slot = 1;
std::unique_ptr<BootParameters> m_pending_boot;