Don't show render window until a game is started

This commit is contained in:
archshift 2015-08-31 18:30:06 -07:00
parent 7134a17fc6
commit afd06675fa
2 changed files with 13 additions and 4 deletions

View File

@ -266,6 +266,7 @@ void GMainWindow::BootGame(const std::string& filename) {
callstackWidget->OnDebugModeEntered();
render_window->show();
emulation_running = true;
OnStartGame();
}
@ -294,6 +295,8 @@ void GMainWindow::ShutdownGame() {
ui.action_Pause->setEnabled(false);
ui.action_Stop->setEnabled(false);
render_window->hide();
emulation_running = false;
}
void GMainWindow::StoreRecentFile(const QString& filename)
@ -423,17 +426,21 @@ void GMainWindow::ToggleWindowMode() {
// Render in the main window...
render_window->BackupGeometry();
ui.horizontalLayout->addWidget(render_window);
render_window->setVisible(true);
render_window->setFocusPolicy(Qt::ClickFocus);
render_window->setFocus();
if (emulation_running) {
render_window->setVisible(true);
render_window->setFocus();
}
} else {
// Render in a separate window...
ui.horizontalLayout->removeWidget(render_window);
render_window->setParent(nullptr);
render_window->setVisible(true);
render_window->RestoreGeometry();
render_window->setFocusPolicy(Qt::NoFocus);
if (emulation_running) {
render_window->setVisible(true);
render_window->RestoreGeometry();
}
}
}

View File

@ -102,6 +102,8 @@ private:
GRenderWindow* render_window;
// Whether emulation is currently running in Citra.
bool emulation_running = false;
std::unique_ptr<EmuThread> emu_thread;
ProfilerWidget* profilerWidget;