mirror of https://github.com/PCSX2/pcsx2.git
Qt: Fix fullscreen/window size being enabled in game list
This commit is contained in:
parent
f2d86f2782
commit
c96f1d28e6
|
@ -236,6 +236,7 @@ void MainWindow::setupAdditionalUi()
|
||||||
}
|
}
|
||||||
|
|
||||||
updateEmulationActions(false, false);
|
updateEmulationActions(false, false);
|
||||||
|
updateDisplayRelatedActions(false, false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::connectSignals()
|
void MainWindow::connectSignals()
|
||||||
|
@ -840,7 +841,6 @@ void MainWindow::updateEmulationActions(bool starting, bool running)
|
||||||
|
|
||||||
m_ui.actionSaveState->setEnabled(running);
|
m_ui.actionSaveState->setEnabled(running);
|
||||||
m_ui.menuSaveState->setEnabled(running);
|
m_ui.menuSaveState->setEnabled(running);
|
||||||
m_ui.menuWindowSize->setEnabled(starting_or_running);
|
|
||||||
|
|
||||||
m_ui.actionViewGameProperties->setEnabled(running);
|
m_ui.actionViewGameProperties->setEnabled(running);
|
||||||
|
|
||||||
|
@ -854,6 +854,19 @@ void MainWindow::updateEmulationActions(bool starting, bool running)
|
||||||
m_ui.actionRescanAllGames->setDisabled(starting_or_running);
|
m_ui.actionRescanAllGames->setDisabled(starting_or_running);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::updateDisplayRelatedActions(bool has_surface, bool render_to_main, bool fullscreen)
|
||||||
|
{
|
||||||
|
// rendering to main, or switched to gamelist/grid
|
||||||
|
m_ui.actionViewSystemDisplay->setEnabled((has_surface && render_to_main) || (!has_surface && g_host_display));
|
||||||
|
m_ui.menuWindowSize->setEnabled(has_surface && !fullscreen);
|
||||||
|
m_ui.actionFullscreen->setEnabled(has_surface);
|
||||||
|
|
||||||
|
{
|
||||||
|
QSignalBlocker blocker(m_ui.actionFullscreen);
|
||||||
|
m_ui.actionFullscreen->setChecked(fullscreen);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::updateStatusBarWidgetVisibility()
|
void MainWindow::updateStatusBarWidgetVisibility()
|
||||||
{
|
{
|
||||||
auto Update = [this](QWidget* widget, bool visible, int stretch) {
|
auto Update = [this](QWidget* widget, bool visible, int stretch) {
|
||||||
|
@ -1791,8 +1804,6 @@ DisplayWidget* MainWindow::createDisplay(bool fullscreen, bool render_to_main)
|
||||||
updateWindowTitle();
|
updateWindowTitle();
|
||||||
updateWindowState();
|
updateWindowState();
|
||||||
|
|
||||||
m_ui.actionViewSystemDisplay->setEnabled(true);
|
|
||||||
m_ui.actionFullscreen->setEnabled(true);
|
|
||||||
m_ui.actionStartFullscreenUI->setEnabled(false);
|
m_ui.actionStartFullscreenUI->setEnabled(false);
|
||||||
m_ui.actionStartFullscreenUI2->setEnabled(false);
|
m_ui.actionStartFullscreenUI2->setEnabled(false);
|
||||||
|
|
||||||
|
@ -1886,8 +1897,6 @@ DisplayWidget* MainWindow::updateDisplay(bool fullscreen, bool render_to_main, b
|
||||||
m_display_widget->updateRelativeMode(s_vm_valid && !s_vm_paused);
|
m_display_widget->updateRelativeMode(s_vm_valid && !s_vm_paused);
|
||||||
m_display_widget->updateCursor(s_vm_valid && !s_vm_paused);
|
m_display_widget->updateCursor(s_vm_valid && !s_vm_paused);
|
||||||
|
|
||||||
QSignalBlocker blocker(m_ui.actionFullscreen);
|
|
||||||
m_ui.actionFullscreen->setChecked(fullscreen);
|
|
||||||
return m_display_widget;
|
return m_display_widget;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1954,6 +1963,8 @@ void MainWindow::createDisplayWidget(bool fullscreen, bool render_to_main, bool
|
||||||
m_ui.mainContainer->setCurrentIndex(1);
|
m_ui.mainContainer->setCurrentIndex(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateDisplayRelatedActions(true, render_to_main, fullscreen);
|
||||||
|
|
||||||
// We need the surface visible.
|
// We need the surface visible.
|
||||||
QGuiApplication::sync();
|
QGuiApplication::sync();
|
||||||
}
|
}
|
||||||
|
@ -2039,6 +2050,8 @@ void MainWindow::destroyDisplayWidget(bool show_game_list)
|
||||||
m_display_container->deleteLater();
|
m_display_container->deleteLater();
|
||||||
m_display_container = nullptr;
|
m_display_container = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateDisplayRelatedActions(false, false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::focusDisplayWidget()
|
void MainWindow::focusDisplayWidget()
|
||||||
|
|
|
@ -192,6 +192,7 @@ private:
|
||||||
void restoreStateFromConfig();
|
void restoreStateFromConfig();
|
||||||
|
|
||||||
void updateEmulationActions(bool starting, bool running);
|
void updateEmulationActions(bool starting, bool running);
|
||||||
|
void updateDisplayRelatedActions(bool has_surface, bool render_to_main, bool fullscreen);
|
||||||
void updateStatusBarWidgetVisibility();
|
void updateStatusBarWidgetVisibility();
|
||||||
void updateWindowTitle();
|
void updateWindowTitle();
|
||||||
void updateWindowState(bool force_visible = false);
|
void updateWindowState(bool force_visible = false);
|
||||||
|
|
Loading…
Reference in New Issue