#include <lib/base/init_num.h>
#include <lib/driver/input_fake.h>
-void eRCDeviceInputDev::handleCode(int rccode)
+void eRCDeviceInputDev::handleCode(long rccode)
{
struct input_event *ev = (struct input_event *)rccode;
if (ev->type!=EV_KEY)
case KEY_RIGHTSHIFT:
case KEY_LEFTALT:
case KEY_CAPSLOCK:
- case KEY_COMPOSE:
case KEY_INSERT:
case KEY_DELETE:
+ case KEY_MUTE:
filtered=false;
default:
break;
{
int len=id.length();
int idx=0;
- while(idx < len)
+ while(idx <= len-8)
{
if (!strncasecmp(&id[idx++], "KEYBOARD", 8))
{
break;
}
}
+ setExclusive(true);
eDebug("Input device \"%s\" is %sa keyboard.", id.c_str(), iskeyboard ? "" : "not ");
+}
+void eRCDeviceInputDev::setExclusive(bool b)
+{
+ if (!iskeyboard)
+ driver->setExclusive(b);
}
const char *eRCDeviceInputDev::getDescription() const