controlapi: fix key translation for hd51; small code alignments

Origin commit data
------------------
Branch: ni/coolstream
Commit: 94f64ff3d7
Author: vanhofen <vanhofen@gmx.de>
Date: 2018-01-22 (Mon, 22 Jan 2018)

Origin message was:
------------------
- controlapi: fix key translation for hd51; small code alignments

------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2018-01-22 23:17:34 +01:00
parent 5308e07337
commit d1c253352f
2 changed files with 27 additions and 22 deletions

View File

@@ -894,15 +894,18 @@ unsigned int revert_translate(unsigned int code)
{
switch(code)
{
case RC_play:
return KEY_PLAYPAUSE;
case RC_page_up:
return KEY_CHANNELUP;
case RC_page_down:
return KEY_CHANNELDOWN;
#ifdef HAVE_ARM_HARDWARE
case RC_play:
case RC_pause:
return KEY_PLAYPAUSE;
case RC_favorites:
return KEY_VIDEO;
case RC_forward:
return KEY_FASTFORWARD;
#endif
#ifdef HAVE_AZBOX_HARDWARE
case RC_favorites:
@@ -918,10 +921,10 @@ unsigned int revert_translate(unsigned int code)
break;
}
return code;
}
void dev_uinput_sync(int fd) {
void CControlAPI::rc_sync(int fd)
{
struct input_event ev;
gettimeofday(&ev.time, NULL);
@@ -931,13 +934,14 @@ void dev_uinput_sync(int fd) {
write(fd, &ev, sizeof(ev));
}
int CControlAPI::rc_send(int ev, unsigned int code, unsigned int value)
int CControlAPI::rc_send(int fd, unsigned int code, unsigned int value)
{
struct input_event iev;
iev.type=EV_KEY;
iev.code=code;
iev.value=value;
return write(ev,&iev,sizeof(iev));
struct input_event ev;
ev.type = EV_KEY;
ev.code = code;
ev.value = value;
return write(fd, &ev, sizeof(ev));
}
//-----------------------------------------------------------------------------
@@ -985,14 +989,14 @@ void CControlAPI::RCEmCGI(CyhookHandler *hh)
close(evd);
return;
}
dev_uinput_sync(evd);
rc_sync(evd);
if (rc_send(evd, sendcode, KEY_RELEASED) < 0) {
perror("writing 'KEY_RELEASED' event failed");
hh->SendError();
close(evd);
return;
}
dev_uinput_sync(evd);
rc_sync(evd);
close(evd);
#else
/* 0 == KEY_PRESSED in rcinput.cpp */

View File

@@ -41,7 +41,8 @@ private:
}
} fsort;
int rc_send(int ev, unsigned int code, unsigned int value);
void rc_sync(int fd);
int rc_send(int fd, unsigned int code, unsigned int value);
// send functions for ExecuteCGI (controld api)
void SendEventList(CyhookHandler *hh,t_channel_id channel_id);