diff options
-rw-r--r-- | engines/dialogs.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/engines/dialogs.cpp b/engines/dialogs.cpp index d0eac1d2e7..2ecb835d86 100644 --- a/engines/dialogs.cpp +++ b/engines/dialogs.cpp @@ -193,8 +193,12 @@ void MainMenuDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 dat } void MainMenuDialog::reflowLayout() { - _loadButton->setEnabled(_engine->canLoadGameStateCurrently()); - _saveButton->setEnabled(_engine->canSaveGameStateCurrently()); + if (_engine->hasFeature(Engine::kSupportsListSaves)) { + if (_engine->hasFeature(Engine::kSupportsLoadingDuringRuntime)) + _loadButton->setEnabled(_engine->canLoadGameStateCurrently()); + if (_engine->hasFeature(Engine::kSupportsSavingDuringRuntime)) + _saveButton->setEnabled(_engine->canSaveGameStateCurrently()); + } #ifndef DISABLE_FANCY_THEMES if (g_gui.xmlEval()->getVar("Globals.ShowGlobalMenuLogo", 0) == 1 && g_gui.theme()->supportsImages()) { |