mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-18 08:55:45 -04:00
Qt: Properly implement "Start Fullscreen"
This commit is contained in:
@ -26,6 +26,7 @@ ConsoleSettingsWidget::ConsoleSettingsWidget(QtHostInterface* host_interface, QW
|
||||
SettingWidgetBinder::BindWidgetToNormalizedSetting(m_host_interface, m_ui.emulationSpeed, "Main/EmulationSpeed",
|
||||
100.0f);
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.pauseOnStart, "Main/StartPaused");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.startFullscreen, "Main/StartFullscreen");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.saveStateOnExit, "Main/SaveStateOnExit");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.confirmPowerOff, "Main/ConfirmPowerOff");
|
||||
SettingWidgetBinder::BindWidgetToEnumSetting(m_host_interface, m_ui.cpuExecutionMode, "CPU/ExecutionMode",
|
||||
|
@ -154,13 +154,20 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0" colspan="2">
|
||||
<widget class="QCheckBox" name="startFullscreen">
|
||||
<property name="text">
|
||||
<string>Start Fullscreen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="0" colspan="2">
|
||||
<widget class="QCheckBox" name="saveStateOnExit">
|
||||
<property name="text">
|
||||
<string>Save State On Exit</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="8" column="0" colspan="2">
|
||||
<item row="9" column="0" colspan="2">
|
||||
<widget class="QCheckBox" name="confirmPowerOff">
|
||||
<property name="text">
|
||||
<string>Confirm Power Off</string>
|
||||
|
@ -18,7 +18,6 @@ GPUSettingsWidget::GPUSettingsWidget(QtHostInterface* host_interface, QWidget* p
|
||||
"Display/ForceProgressiveScan");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.displayLinearFiltering,
|
||||
"Display/LinearFiltering");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.startFullscreen, "Display/Fullscreen");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.vsync, "Display/VSync");
|
||||
SettingWidgetBinder::BindWidgetToIntSetting(m_host_interface, m_ui.resolutionScale, "GPU/ResolutionScale");
|
||||
SettingWidgetBinder::BindWidgetToBoolSetting(m_host_interface, m_ui.trueColor, "GPU/TrueColor");
|
||||
|
@ -83,13 +83,6 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0" colspan="2">
|
||||
<widget class="QCheckBox" name="startFullscreen">
|
||||
<property name="text">
|
||||
<string>Start Fullscreen</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0" colspan="2">
|
||||
<widget class="QCheckBox" name="vsync">
|
||||
<property name="text">
|
||||
<string>VSync</string>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#include "qtsettingsinterface.h"
|
||||
#include "settingsdialog.h"
|
||||
#include "settingwidgetbinder.h"
|
||||
#include <QtCore/QDebug>
|
||||
#include <QtCore/QFileInfo>
|
||||
#include <QtCore/QUrl>
|
||||
#include <QtGui/QDesktopServices>
|
||||
@ -38,6 +39,7 @@ MainWindow::~MainWindow()
|
||||
void MainWindow::reportError(const QString& message)
|
||||
{
|
||||
QMessageBox::critical(this, tr("DuckStation"), message, QMessageBox::Ok);
|
||||
focusDisplayWidget();
|
||||
}
|
||||
|
||||
void MainWindow::reportMessage(const QString& message)
|
||||
@ -88,6 +90,9 @@ void MainWindow::destroyDisplayWindow()
|
||||
|
||||
void MainWindow::setFullscreen(bool fullscreen)
|
||||
{
|
||||
if (fullscreen == m_display_widget->isFullScreen())
|
||||
return;
|
||||
|
||||
if (fullscreen)
|
||||
{
|
||||
m_ui.mainContainer->setCurrentIndex(0);
|
||||
|
@ -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)
|
||||
|
Reference in New Issue
Block a user