Files » xineliboutput-atmolight-switch.patch
xine_frontend.c | ||
---|---|---|
} else if (!strcmp(data, "POWER_OFF")) {
|
||
shutdown_system(this->shutdown_cmd, 1);
|
||
} else if (!strncasecmp(data, "ATMOLIGHT", 9)) {
|
||
if (this->postplugins) {
|
||
int i;
|
||
for (i = 0; i < this->postplugins->post_video_elements_num; ++i) {
|
||
post_element_t *pve = this->postplugins->post_video_elements[i];
|
||
if (pve->enable && !strcmp(pve->name, "atmo")) {
|
||
xine_post_in_t *input_api = (xine_post_in_t *) xine_post_input(pve->post, "parameters");
|
||
if (input_api) {
|
||
xine_post_api_t *post_api = (xine_post_api_t *) input_api->data;
|
||
xine_post_api_descr_t *api_descr = post_api->get_param_descr();
|
||
xine_post_api_parameter_t *parm = api_descr->parameter;
|
||
while(parm->type != POST_PARAM_TYPE_LAST) {
|
||
if (!strcmp(parm->name, "enabled")) {
|
||
uint8_t *param_data = malloc(api_descr->struct_size);
|
||
if (param_data) {
|
||
post_api->get_parameters(pve->post, param_data);
|
||
int *enabled = (int *)(param_data + parm->offset);
|
||
char *p = strpbrk(data + 9, "01");
|
||
if (p)
|
||
*enabled = (atoi(p)) ? 1: 0;
|
||
else
|
||
*enabled = (*enabled) ? 0: 1;
|
||
post_api->set_parameters(pve->post, param_data);
|
||
free(param_data);
|
||
}
|
||
break;
|
||
}
|
||
parm++;
|
||
}
|
||
}
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
} else {
|
||
LOGDBG("Event: %s", data);
|
xine_frontend_kbd.c | ||
---|---|---|
fe->send_event(fe, "TOGGLE_DEINTERLACE");
|
||
continue;
|
||
}
|
||
if (code == 'a' || code == 'A') {
|
||
fe->send_event(fe, "ATMOLIGHT");
|
||
continue;
|
||
}
|
||
}
|
||
snprintf(str, sizeof(str), "%016" PRIX64, code);
|
||
... | ... | |
fe->send_input_event(fe, NULL, str+5, 0, 0);
|
||
continue;
|
||
}
|
||
if (!strncasecmp(str, "ATMOLIGHT", 9)) {
|
||
fe->send_event(fe, str);
|
||
continue;
|
||
}
|
||
LOGMSG("Unknown slave mode command: %s", str);
|
||
xine_frontend_lirc.c | ||
---|---|---|
fe->send_event(fe, "TOGGLE_DEINTERLACE");
|
||
continue;
|
||
}
|
||
if (!strcmp(KeyName, "Atmolight")) {
|
||
if (!repeat)
|
||
fe->send_event(fe, "ATMOLIGHT");
|
||
continue;
|
||
}
|
||
}
|
||
alarm(3);
|
xine_frontend_main.c | ||
---|---|---|
" mapping keyboard f,F -> fullscreen toggle\n"
|
||
" keyboard d,D -> deinterlace toggle\n"
|
||
" keyboard p,P -> power off\n"
|
||
" keyboard a,A -> atmolight toggle\n"
|
||
" LIRC Deinterlace -> deinterlace toggle\n"
|
||
" LIRC Fullscreen -> fullscreen toggle\n"
|
||
" LIRC PowerOff -> power off\n"
|
||
" LIRC Atmolight -> atmolight toggle\n"
|
||
" LIRC Quit -> exit\n");
|
||
break;
|
||
case 'b': nokbd = daemon_mode = 1;
|
- « Previous
- 1
- 2
- Next »