aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTorbjörn Andersson2006-07-22 21:23:49 +0000
committerTorbjörn Andersson2006-07-22 21:23:49 +0000
commit9ab0c1d9152f29d439b5ef84f6bf93a783dd711f (patch)
treeabdda8fab816e2c13a32b71f72a09aa1bbc53856
parentb4af5bc33122903a6b7a86abe8ec9bcb2efa8cfb (diff)
downloadscummvm-rg350-9ab0c1d9152f29d439b5ef84f6bf93a783dd711f.tar.gz
scummvm-rg350-9ab0c1d9152f29d439b5ef84f6bf93a783dd711f.tar.bz2
scummvm-rg350-9ab0c1d9152f29d439b5ef84f6bf93a783dd711f.zip
Clear the active domain when (re)opening the launcher dialog. This fixes bug
#1523050. svn-id: r23571
-rw-r--r--gui/launcher.cpp8
-rw-r--r--gui/launcher.h1
2 files changed, 9 insertions, 0 deletions
diff --git a/gui/launcher.cpp b/gui/launcher.cpp
index 8e4d67ba26..f212b4828b 100644
--- a/gui/launcher.cpp
+++ b/gui/launcher.cpp
@@ -540,6 +540,14 @@ LauncherDialog::~LauncherDialog() {
delete _browser;
}
+void LauncherDialog::open() {
+ // Clear the active domain, in case we return to the dialog from a
+ // failure to launch a game. Otherwise, pressing ESC will attempt to
+ // re-launch the same game again.
+ ConfMan.setActiveDomain("");
+ Dialog::open();
+}
+
void LauncherDialog::close() {
// Save last selection
const int sel = _list->getSelected();
diff --git a/gui/launcher.h b/gui/launcher.h
index 7b456a2dbd..a8c76f4cfe 100644
--- a/gui/launcher.h
+++ b/gui/launcher.h
@@ -56,6 +56,7 @@ protected:
void updateListing();
void updateButtons();
+ void open();
void close();
virtual void addGame();
void removeGame(int item);