diff options
Diffstat (limited to 'src/gui/textdialog.cpp')
-rw-r--r-- | src/gui/textdialog.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/gui/textdialog.cpp b/src/gui/textdialog.cpp index 0bdd6030..3e8af7e8 100644 --- a/src/gui/textdialog.cpp +++ b/src/gui/textdialog.cpp @@ -65,6 +65,7 @@ TextDialog::TextDialog(const std::string &title, const std::string &msg, getParent()->moveToTop(this); } setVisible(true); + requestModalFocus(); mTextField->requestFocus(); instances++; @@ -77,14 +78,10 @@ TextDialog::~TextDialog() void TextDialog::action(const gcn::ActionEvent &event) { - // Proxy button events to our listeners - ActionListenerIterator i; - for (i = mActionListeners.begin(); i != mActionListeners.end(); ++i) - { - (*i)->action(event); - } + setActionEventId(event.getId()); + distributeActionEvent(); - if (event.getId() == "CANCEL" || event.getId() == "OK") + if (event.getId() == "CANCEL" || event.getSource() == mOkButton) { scheduleDelete(); } |