X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=lib%2Factions%2Faction.cpp;h=0eb4cdb19f69e757048e0b84591f0782903a344a;hb=bbbf50f9d0c7d3fbd66b07460a7af835ec111f5b;hp=cb9e5e059baf057cda962439663a3b650bfb06b5;hpb=c2b4aa62c5e2d5e562010350cc3ca49002d9614f;p=vuplus_dvbapp diff --git a/lib/actions/action.cpp b/lib/actions/action.cpp index cb9e5e0..0eb4cdb 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) {