Qt: Properly implement "Start Fullscreen"

This commit is contained in:
Connor McLaughlin
2020-03-12 13:53:58 +10:00
parent 2480624cbe
commit 8f39a0f154
12 changed files with 56 additions and 33 deletions

View File

@ -48,7 +48,11 @@ void QtHostInterface::ReportError(const char* message)
{
HostInterface::ReportError(message);
emit setFullscreenRequested(false);
emit errorReported(QString::fromLocal8Bit(message));
if (m_settings.start_fullscreen)
emit setFullscreenRequested(true);
}
void QtHostInterface::ReportMessage(const char* message)
@ -60,7 +64,14 @@ void QtHostInterface::ReportMessage(const char* message)
bool QtHostInterface::ConfirmMessage(const char* message)
{
return messageConfirmed(QString::fromLocal8Bit(message));
emit setFullscreenRequested(false);
const bool result = messageConfirmed(QString::fromLocal8Bit(message));
if (m_settings.start_fullscreen)
emit setFullscreenRequested(true);
return result;
}
QVariant QtHostInterface::getSettingValue(const QString& name, const QVariant& default_value)
@ -251,7 +262,7 @@ std::optional<CommonHostInterface::HostKeyCode> QtHostInterface::GetHostKeyCode(
void QtHostInterface::OnSystemCreated()
{
HostInterface::OnSystemCreated();
CommonHostInterface::OnSystemCreated();
wakeThread();
destroyBackgroundControllerPollTimer();
@ -261,7 +272,7 @@ void QtHostInterface::OnSystemCreated()
void QtHostInterface::OnSystemPaused(bool paused)
{
HostInterface::OnSystemPaused(paused);
CommonHostInterface::OnSystemPaused(paused);
emit emulationPaused(paused);
@ -392,14 +403,7 @@ void QtHostInterface::pauseSystem(bool paused)
return;
}
if (!m_system)
return;
m_paused = paused;
m_audio_stream->PauseOutput(paused);
if (!paused)
wakeThread();
emit emulationPaused(paused);
CommonHostInterface::PauseSystem(paused);
}
void QtHostInterface::changeDisc(const QString& new_disc_filename)