mirror of
https://github.com/moonlight-stream/moonlight-embedded.git
synced 2026-04-21 15:50:50 +00:00
Cleanup CEC code
This commit is contained in:
@@ -10,7 +10,6 @@ aux_source_directory(./third_party/moonlight-common-c/limelight-common SRC_LIST)
|
|||||||
aux_source_directory(./third_party/moonlight-common-c/limelight-common/OpenAES SRC_LIST)
|
aux_source_directory(./third_party/moonlight-common-c/limelight-common/OpenAES SRC_LIST)
|
||||||
|
|
||||||
include_directories(./third_party/moonlight-common-c)
|
include_directories(./third_party/moonlight-common-c)
|
||||||
include_directories(./third_party/libcec/include)
|
|
||||||
|
|
||||||
set(MOONLIGHT_DEFINITIONS)
|
set(MOONLIGHT_DEFINITIONS)
|
||||||
|
|
||||||
|
|||||||
27
src/input.c
27
src/input.c
@@ -24,6 +24,10 @@
|
|||||||
#include "libevdev/libevdev.h"
|
#include "libevdev/libevdev.h"
|
||||||
#include "limelight-common/Limelight.h"
|
#include "limelight-common/Limelight.h"
|
||||||
|
|
||||||
|
#ifdef HAVE_LIBCEC
|
||||||
|
#include <ceccloader.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <libudev.h>
|
#include <libudev.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
@@ -40,10 +44,6 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
|
|
||||||
#ifdef HAVE_LIBCEC
|
|
||||||
#include <ceccloader.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct input_abs_parms {
|
struct input_abs_parms {
|
||||||
int min, max;
|
int min, max;
|
||||||
int flat;
|
int flat;
|
||||||
@@ -91,11 +91,9 @@ static char g_strPort[50] = { 0 };
|
|||||||
static libcec_interface_t g_iface;
|
static libcec_interface_t g_iface;
|
||||||
static ICECCallbacks g_callbacks;
|
static ICECCallbacks g_callbacks;
|
||||||
|
|
||||||
static int on_cec_keypress(void *UNUSED, const cec_keypress key)
|
static int on_cec_keypress(void*, const cec_keypress key) {
|
||||||
{
|
|
||||||
char value;
|
char value;
|
||||||
switch (key.keycode)
|
switch (key.keycode) {
|
||||||
{
|
|
||||||
case CEC_USER_CONTROL_CODE_UP:
|
case CEC_USER_CONTROL_CODE_UP:
|
||||||
value = KEY_UP;
|
value = KEY_UP;
|
||||||
break;
|
break;
|
||||||
@@ -124,15 +122,13 @@ static int on_cec_keypress(void *UNUSED, const cec_keypress key)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (value != 0)
|
if (value != 0) {
|
||||||
{
|
|
||||||
short code = 0x80 << 8 | keyCodes[value];
|
short code = 0x80 << 8 | keyCodes[value];
|
||||||
LiSendKeyboardEvent(code, (key.duration > 0)?KEY_ACTION_DOWN:KEY_ACTION_UP, 0);
|
LiSendKeyboardEvent(code, (key.duration > 0)?KEY_ACTION_DOWN:KEY_ACTION_UP, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void init_cec()
|
static void init_cec() {
|
||||||
{
|
|
||||||
libcecc_reset_configuration(&g_config);
|
libcecc_reset_configuration(&g_config);
|
||||||
g_config.clientVersion = LIBCEC_VERSION_CURRENT;
|
g_config.clientVersion = LIBCEC_VERSION_CURRENT;
|
||||||
g_config.bActivateSource = 0;
|
g_config.bActivateSource = 0;
|
||||||
@@ -255,6 +251,10 @@ static void input_remove(int devindex) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void input_init(char* mapfile) {
|
void input_init(char* mapfile) {
|
||||||
|
#ifdef HAVE_LIBCEC
|
||||||
|
init_cec();
|
||||||
|
#endif
|
||||||
|
|
||||||
udev = udev_new();
|
udev = udev_new();
|
||||||
if (!udev) {
|
if (!udev) {
|
||||||
fprintf(stderr, "Can't create udev\n");
|
fprintf(stderr, "Can't create udev\n");
|
||||||
@@ -705,8 +705,5 @@ void input_map(char* fileName) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void input_loop() {
|
void input_loop() {
|
||||||
#ifdef HAVE_LIBCEC
|
|
||||||
init_cec();
|
|
||||||
#endif
|
|
||||||
input_poll(input_handle_event);
|
input_poll(input_handle_event);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user