X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/c2b4aa62c5e2d5e562010350cc3ca49002d9614f..4e67809b69b2688c138a47cd0d19337c054c0f6f:/lib/actions/action.cpp diff --git a/lib/actions/action.cpp b/lib/actions/action.cpp index cb9e5e05..a2d85ffd 100644 --- a/lib/actions/action.cpp +++ b/lib/actions/action.cpp @@ -2,6 +2,7 @@ #include #include #include +#include /* @@ -149,9 +150,14 @@ void eActionMap::keyPressed(const std::string &device, int key, int flags) std::list call_list; /* iterate active contexts. */ - for (std::multimap::const_iterator c(m_bindings.begin()); + for (std::multimap::iterator c(m_bindings.begin()); c != m_bindings.end(); ++c) { + if (flags == eRCKey::flagMake) + c->second.m_prev_seen_make_key = key; + else if (c->second.m_prev_seen_make_key != key) // ignore repeat or break when the make code for this key was not visible + continue; + /* is this a native context? */ if (c->second.m_widget) { @@ -202,7 +208,7 @@ void eActionMap::keyPressed(const std::string &device, int key, int flags) } } else { - eDebug("wildcard."); +// eDebug("wildcard."); ePyObject pArgs = PyTuple_New(2); PyTuple_SET_ITEM(pArgs, 0, PyInt_FromLong(key)); PyTuple_SET_ITEM(pArgs, 1, PyInt_FromLong(flags));