Skip to content
Extraits de code Groupes Projets

Modules

Fusionnées Kubat a demandé de fusionner dev-kubat vers master
1 fichier
+ 24
31
Comparer les modifications
  • Côte à côte
  • En ligne
+ 24
31
@@ -108,6 +108,8 @@ sdl_thread__(struct poller_thread_arg *arg)
SDL_Event event;
uint64_t flags;
int w, h, redraw = 0;
bool ctrl = false;
const Uint8 *state;
free(arg);
/* Init the SDL window
@@ -172,24 +174,35 @@ loop:
}
break;
case SDL_KEYDOWN:
if (event.key.keysym.sym == SDLK_LEFT) {
const char *cmd_seek[] = { "seek", "-5", "relative", NULL };
mpv_command_async((mpv_handle *) sdl2->mpv, 0, cmd_seek);
} else if (event.key.keysym.sym == SDLK_RIGHT) {
const char *cmd_seek[] = { "seek", "+5", "relative", NULL };
mpv_command_async((mpv_handle *) sdl2->mpv, 0, cmd_seek);
}
break;
case SDL_KEYUP:
if (event.key.keysym.sym == SDLK_SPACE) {
state = SDL_GetKeyboardState(NULL);
ctrl = state[SDL_SCANCODE_LCTRL] || state[SDL_SCANCODE_RCTRL];
if (ctrl && event.key.keysym.sym == SDLK_SPACE) {
const char *cmd_pause[] = { "cycle", "pause", NULL };
mpv_command_async((mpv_handle *) sdl2->mpv, 0, cmd_pause);
}
else if (event.key.keysym.sym == SDLK_RETURN ||
event.key.keysym.sym == SDLK_RETURN2 ||
event.key.keysym.sym == SDLK_KP_ENTER)
else if (event.key.keysym.sym == SDLK_n && ctrl)
lkt_queue_send(sdl2->queue, lkt_event_play_next, NULL);
else if (event.key.keysym.sym == SDLK_LEFT) {
const char *cmd_seek[] = { "seek", "-5", "relative", NULL };
mpv_command_async((mpv_handle *) sdl2->mpv, 0, cmd_seek);
} else if (event.key.keysym.sym == SDLK_RIGHT) {
const char *cmd_seek[] = { "seek", "+5", "relative", NULL };
mpv_command_async((mpv_handle *) sdl2->mpv, 0, cmd_seek);
}
else if (event.key.keysym.sym == SDLK_p && ctrl)
lkt_queue_send(sdl2->queue, lkt_event_play_prev, NULL);
else if ((event.key.keysym.sym == SDLK_RETURN ||
event.key.keysym.sym == SDLK_RETURN2 ||
event.key.keysym.sym == SDLK_KP_ENTER) && ctrl)
lkt_queue_send(sdl2->queue, lkt_event_play_next, NULL);
else if (event.key.keysym.sym == SDLK_F11) {
if (sdl2->is_fullscreen)
@@ -203,26 +216,6 @@ loop:
break;
case SDL_TEXTINPUT:
if (STR_MATCH(event.text.text, ">"))
lkt_queue_send(sdl2->queue, lkt_event_play_next, NULL);
else if (STR_MATCH(event.text.text, "<"))
lkt_queue_send(sdl2->queue, lkt_event_play_prev, NULL);
else if (STR_MATCH(event.text.text, "i")) {
/*
struct kara_metadata mdt;
int id;
char *str;
if (database_queue_current_kara(sdl2->db, &mdt, &id)) {
mdtcat(&mdt, &str);
const char *cmd[] = { "show-text", str, "4000", NULL };
// Same size, only on 64bit arch...
// FIXME: Do something else in 32bits
mpv_command_async((mpv_handle *) sdl2->mpv,
(uint64_t) str, cmd);
}
*/
} else
LOG_ERROR("WINDOW", "Not handled text '%s'", event.text.text);
break;
default:
Chargement en cours