summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-04-01 22:06:18 +0300
committerAndrei Karas <akaras@inbox.ru>2012-04-01 22:06:18 +0300
commit58b20fa29b8f61c333a90fe38ece7a058b910ea6 (patch)
tree1bf3a73c30f2b91f9b994da2d628b46066bf7987 /src
parenta1d592f55539ad5031d92feb4da049825e986783 (diff)
downloadmanaplus-58b20fa29b8f61c333a90fe38ece7a058b910ea6.tar.gz
manaplus-58b20fa29b8f61c333a90fe38ece7a058b910ea6.tar.bz2
manaplus-58b20fa29b8f61c333a90fe38ece7a058b910ea6.tar.xz
manaplus-58b20fa29b8f61c333a90fe38ece7a058b910ea6.zip
Fix shortcuts handling in trade window.
Diffstat (limited to 'src')
-rw-r--r--src/gui/tradewindow.cpp5
-rw-r--r--src/gui/tradewindow.h2
-rw-r--r--src/inputmanager.cpp4
3 files changed, 10 insertions, 1 deletions
diff --git a/src/gui/tradewindow.cpp b/src/gui/tradewindow.cpp
index 8f85f677f..1d3d7ef39 100644
--- a/src/gui/tradewindow.cpp
+++ b/src/gui/tradewindow.cpp
@@ -459,3 +459,8 @@ bool TradeWindow::checkItem(Item *item)
}
return true;
}
+
+bool TradeWindow::isInpupFocused()
+{
+ return (mMoneyField && mMoneyField->isFocused());
+}
diff --git a/src/gui/tradewindow.h b/src/gui/tradewindow.h
index 268d2f108..c917845fc 100644
--- a/src/gui/tradewindow.h
+++ b/src/gui/tradewindow.h
@@ -133,6 +133,8 @@ class TradeWindow : public Window, gcn::ActionListener, gcn::SelectionListener
bool checkItem(Item *item);
+ bool isInpupFocused();
+
private:
enum Status
{
diff --git a/src/inputmanager.cpp b/src/inputmanager.cpp
index 46a2265c6..f57a48b30 100644
--- a/src/inputmanager.cpp
+++ b/src/inputmanager.cpp
@@ -29,6 +29,7 @@
#include "gui/inventorywindow.h"
#include "gui/npcdialog.h"
#include "gui/setup.h"
+#include "gui/tradewindow.h"
#include <guichan/focushandler.hpp>
@@ -52,7 +53,8 @@ int InputManager::getInputConditionMask()
mask += COND_ENABLED;
if ((!chatWindow || !chatWindow->isInputFocused()) &&
!NpcDialog::isAnyInputFocused() &&
- !InventoryWindow::isAnyInputFocused())
+ !InventoryWindow::isAnyInputFocused() &&
+ (!tradeWindow || !tradeWindow->isInpupFocused()))
{
mask += COND_NOINPUT;
}